米国特許情報 | 欧州特許情報 | 国際公開(PCT)情報 | Google の米国特許検索
 
     特許分類
A 農業
B 衣類
C 家具
D 医学
E スポ−ツ;娯楽
F 加工処理操作
G 机上付属具
H 装飾
I 車両
J 包装;運搬
L 化学;冶金
M 繊維;紙;印刷
N 固定構造物
O 機械工学
P 武器
Q 照明
R 測定; 光学
S 写真;映画
T 計算機;電気通信
U 核技術
V 電気素子
W 発電
X 楽器;音響


  ホーム -> 計算機;電気通信 -> ブラザー工業株式会社

発明の名称 通信システム、証明書更新装置、証明書更新プログラム、通信装置及び代替更新プログラム
発行国 日本国特許庁(JP)
公報種別 公開特許公報(A)
公開番号 特開2007−13597(P2007−13597A)
公開日 平成19年1月18日(2007.1.18)
出願番号 特願2005−191954(P2005−191954)
出願日 平成17年6月30日(2005.6.30)
代理人 【識別番号】100082500
【弁理士】
【氏名又は名称】足立 勉
発明者 宮澤 雅史
要約 課題
公開鍵証明書の容易な更新を可能とする。

解決手段
管理PC20は、プリントサーバ検索用ブロードキャストにより検索したプリントサーバ10に対してSSL通信要求を送信し、ハンドシェークの際に受信したサーバ証明書(公開鍵証明書)の有効期限が切れそうな状態であると判定した場合に、CSR作成要求及びCSRパラメータをそのプリントサーバ10へ送信する。プリントサーバ10は、受信したCSRパラメータに基づきCSRを作成して管理PC20へ送信し、管理PC20は、受信したCSRをCA40へ送信する。CA40は、受信したCSRに基づいてサーバ証明書を作成し、管理PC20へ送信する。管理PC20は、証明書インストール要求及びサーバ証明書をプリントサーバ10へ送信する。プリントサーバ10は、受信したサーバ証明書をインストールすることによりサーバ証明書を更新する。
特許請求の範囲
【請求項1】
認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えた通信システムにおいて、
前記通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を前記認証装置に更新させるための処理を行う証明書更新手段を備えたこと
を特徴とする通信システム。
【請求項2】
前記証明書更新手段は、前記通信装置の公開鍵証明書の有効期限を参照し、その有効期限前の所定期間内にその公開鍵証明書を有効期限が延長されるように前記認証装置に更新させるための処理を行うこと
を特徴とする請求項1に記載の通信システム。
【請求項3】
前記通信装置の公開鍵証明書には、その通信装置の識別情報である所有者情報が含まれており、
前記通信装置の識別情報を変更する情報変更手段を備え、
前記証明書更新手段は、前記情報変更手段により前記通信装置の識別情報が新たな識別情報へ変更される前にその通信装置の公開鍵証明書を所有者情報が前記新たな識別情報へ変更されるように前記認証装置に更新させるための処理を行うこと
を特徴とする請求項1又は請求項2に記載の通信システム。
【請求項4】
前記通信装置を複数備えるとともに、前記複数の通信装置のそれぞれと通信可能に構成された管理装置を備え、
前記証明書更新手段は、前記管理装置に備えられており、前記複数の通信装置の公開鍵証明書を前記認証装置に更新させるための処理を行うこと
を特徴とする請求項1から請求項3までのいずれか1項に記載の通信システム。
【請求項5】
前記通信装置は、
自己の公開鍵証明書を前記認証装置に更新させるための処理が前記管理装置の証明書更新手段により行われていないと判定した場合に、その公開鍵証明書が無効となる前にその公開鍵証明書の更新を自己とは別の通信装置であって前記認証装置により本人性が証明されている通信装置に依頼するための処理を行う代替更新依頼手段と、
自己とは別の通信装置の前記代替更新依頼手段により公開鍵証明書の更新の依頼を受けた場合に、自己の電子署名によりその公開鍵証明書を更新する処理を行う代替更新処理手段と、
を備えていることを特徴とする請求項4に記載の通信システム。
【請求項6】
前記管理装置の証明書更新手段は、前記通信装置の公開鍵証明書が前記認証装置により電子署名されたものでないと判定した場合にも、その公開鍵証明書を前記認証装置に更新させるための処理を行うこと
を特徴とする請求項5に記載の通信システム。
【請求項7】
認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えた通信システムに用いられ、
前記通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を前記認証装置に更新させるための処理を行うこと
を特徴とする証明書更新装置。
【請求項8】
認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えた通信システムに用いられるコンピュータを、
前記通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を前記認証装置に更新させるための処理を行う証明書更新手段として機能させること
を特徴とする証明書更新プログラム。
【請求項9】
認証装置により電子署名された公開鍵証明書によって本人性が証明される複数の通信装置と、
前記複数の通信装置のそれぞれと通信可能に構成され、前記通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を前記認証装置に更新させるための処理を行う管理装置と、
を備えた通信システムに用いられる前記通信装置であって、
自己の公開鍵証明書を前記認証装置に更新させるための処理が前記管理装置により行われていないと判定した場合に、その公開鍵証明書が無効となる前にその公開鍵証明書の更新を自己とは別の通信装置に依頼するための処理を行う代替更新依頼手段と、
自己とは別の通信装置の前記代替更新依頼手段により公開鍵証明書の更新の依頼を受けた場合に、自己の電子署名によりその公開鍵証明書を更新する処理を行う代替更新処理手段と、
を備えたことを特徴とする通信装置。
【請求項10】
認証装置により電子署名された公開鍵証明書によって本人性が証明される複数の通信装置と、
前記複数の通信装置のそれぞれと通信可能に構成され、前記通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を前記認証装置に更新させるための処理を行う管理装置と、
を備えた通信システムにおける前記通信装置としてコンピュータを機能させるプログラムであって、
自己の公開鍵証明書を前記認証装置に更新させるための処理が前記管理装置により行われていないと判定した場合に、その公開鍵証明書が無効となる前にその公開鍵証明書の更新を自己とは別の通信装置に依頼するための処理を行う代替更新依頼手段、及び、
自己とは別の通信装置の前記代替更新依頼手段により公開鍵証明書の更新の依頼を受けた場合に、自己の電子署名によりその公開鍵証明書を更新する処理を行う代替更新処理手段、
としてコンピュータを機能させることを特徴とする代替更新プログラム。
発明の詳細な説明
【技術分野】
【0001】
本発明は、認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えた通信システムに関するものである。
【背景技術】
【0002】
近年、ネットワーク通信の利用拡大に伴い、通信のセキュリティを確保する必要性が高まっており、公開鍵基盤(PKI:Public Key Infrastructure)技術を用いた電子署名や電子認証が広く利用されている。
【0003】
公開鍵暗号方式による電子署名は署名対象データのハッシュ値を秘密鍵で暗号化することにより行われることから、この電子署名の検証にはその秘密鍵と対をなす公開鍵が必要となるが、公開鍵自体にはその所有者に関する情報等が含まれていないため、信頼性のある第三者機関が公開鍵とその所有者との対応関係を保証した公開鍵証明書が用いられる。なお、証明書を発行する信頼性のある第三者機関を認証局(CA:(Certification Authority)という。
【0004】
例えば、特許文献1には、LAN内に設けられた通信装置であるホストのIPアドレス及び公開鍵証明書を頻繁に(通信相手が変わるごとに、セッションが変わるごとに、又は、通信パケットの送信ごとに)変更する構成の通信システムが開示されている。この通信システムでは、公開鍵証明書を発行するCAをLAN内のノードとして設け、このCAにLAN内のホストのユーザ名、パスワード及び公開鍵を登録しておく。そして、CAは、ホストから公開鍵証明書の発行を要求された際には、登録されている情報に基づきホストの認証を行うことで、ホストのなりすましを防止するようにしている。
【特許文献1】特開2004−7512号公報
【発明の開示】
【発明が解決しようとする課題】
【0005】
ところで、CAにより電子署名された公開鍵証明書によって本人性が証明される通信装置では、公開鍵証明書の有効期限が切れたり証明内容(例えば、所有者の識別情報であるIPアドレスやホストネーム等)が変更されたりすることによってその公開鍵証明書が使用できなくなった場合には公開鍵証明書の再発行をCAに依頼する必要があるが、通信装置の公開鍵証明書が既に無効となっていることから、通信装置をCAに認証させるために煩雑な処理(新規な公開鍵証明書の発行を依頼する場合と同様の処理)を要するという問題がある。
【0006】
なお、上記特許文献1に記載のように、通信装置のユーザ名、パスワード及び公開鍵をCAに登録しておくシステムであれば、公開鍵証明書が無効となった後でもCAに通信装置を認証させることが可能ではあるが、このようなシステムではユーザ名等の情報に基づきホストを認証するといった特殊な構成のCAを用いなければならず、しかもユーザ名等の情報をCAにあらかじめ登録しておかなければならないという点で利便性に欠ける。
【0007】
本発明は、こうした問題にかんがみてなされたものであり、公開鍵証明書の容易な更新を可能とする通信システム、証明書更新装置、証明書更新プログラム、通信装置及び代替更新プログラムを提供することを目的としている。
【課題を解決するための手段】
【0008】
上記目的を達成するためになされた本発明の請求項1に記載の通信システムは、認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えている。そして、本通信システムには、証明書更新手段が設けられており、この証明書更新手段が、通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を認証装置に更新させるための処理を行う。
【0009】
このため、本発明の通信システムでは、通信装置の公開鍵証明書が有効な状態においてその公開鍵証明書を認証装置に更新させるための処理が行われることとなり、その結果、公開鍵証明書を容易に更新することができる。すなわち、公開鍵証明書が無効となった後で公開鍵証明書の再署名(再発行)を認証装置に依頼する場合には、既に通信装置の本人性が証明されない状態となっていることから、認証装置に通信装置を認証させるために煩雑な処理を要することとなる。これに対し、本発明の通信システムでは、公開鍵証明書によって本人性が証明されている状態でその公開鍵証明書の更新を行うため、公開鍵証明書を容易に更新することができ、しかも、本通信システムによれば、上述した特許文献1に記載のシステムのように特殊な構成の認証装置を用いる必要がなく、周知の認証局を認証装置として利用することが可能である。
【0010】
ところで、通信装置の公開鍵証明書が無効となる要因としては、公開鍵証明書の有効期限切れが挙げられる。
そこで、請求項2に記載の通信システムでは、上記請求項1に記載の通信システムにおいて、証明書更新手段は、通信装置の公開鍵証明書の有効期限を参照し、その有効期限前の所定期間内にその公開鍵証明書を有効期限が延長されるように認証装置に更新させるための処理を行う。このため、本通信システムによれば、通信装置の管理者が気付かないうちに公開鍵証明書の有効期限が切れてしまうという事態を防ぐことができる。
【0011】
また、通信装置の公開鍵証明書にその通信装置の識別情報(例えばIPアドレスやホストネーム)である所有者情報が含まれている場合、通信装置の識別情報自体が変更されると、公開鍵証明書に含まれている所有者情報が実際の識別情報と一致しなくなることにより、その公開鍵証明書が無効となってしまうことが考えられる。
【0012】
そこで、請求項3に記載の通信システムでは、上記請求項1又は2に記載の通信システムにおいて、通信装置の識別情報を変更する情報変更手段を備え、証明書更新手段は、情報変更手段により通信装置の識別情報が新たな識別情報へ変更される前にその通信装置の公開鍵証明書を所有者情報が新たな識別情報へ変更されるように認証装置に更新させるための処理を行う。このため、本通信システムによれば、通信装置の識別情報が変更されることにより公開鍵証明書が無効となってしまうという事態を防ぐことができる。
【0013】
一方、請求項4に記載の通信システムは、上記請求項1〜3のいずれかに記載の通信システムにおいて、上述した構成の通信装置を複数備えるとともに、複数の通信装置のそれぞれと通信可能に構成された管理装置を備えている。そして、本通信システムにおいて、上述した証明書更新手段は、管理装置に備えられており、複数の通信装置の公開鍵証明書を認証装置に更新させるための処理を行う。このため、本通信システムによれば、複数の通信装置の公開鍵証明書の管理を共通の管理装置により効率よく行うことができる。
【0014】
ただし、このような通信システムでは、管理装置による処理が何らかの理由で行われなくなった場合に通信装置の公開鍵証明書が無効になってしまうことが考えられる。
そこで、請求項5に記載の通信システムでは、上記請求項4に記載の通信システムにおいて、通信装置は、自己の公開鍵証明書を認証装置に更新させるための処理が管理装置の証明書更新手段により行われていないと判定した場合に、その公開鍵証明書が無効となる前にその公開鍵証明書の更新を自己とは別の通信装置であって認証装置により本人性が証明されている通信装置に依頼するための処理を行う代替更新依頼手段と、自己とは別の通信装置の代替更新依頼手段により公開鍵証明書の更新の依頼を受けた場合に、自己の電子署名によりその公開鍵証明書を更新する処理を行う代替更新処理手段と、を備えている。
【0015】
つまり、本通信システムの各通信装置は、自己とは別の通信装置からの依頼に応じて公開鍵証明書を更新する処理を行うように構成されており、公開鍵証明書を認証装置に更新させるための管理装置による処理が行われていないと判定した場合には、自己とは別の通信装置であって認証装置により本人性が証明されているものに公開鍵証明書の更新を依頼する。
【0016】
このような構成の通信システムによれば、自己とは別の通信装置により公開鍵証明書が更新された通信装置は、認証装置により本人性が証明されている通信装置の電子署名によって間接的に本人性が証明されることとなるため、公開鍵証明書を認証装置に更新させるための管理装置による処理が行われない状態(例えば、管理装置が故障した場合や管理者が処理の実行操作を忘れている場合)となった場合にも公開鍵証明書が直ちに無効となってしまうことを防ぐことができる。
【0017】
そして、請求項6に記載の通信システムでは、上記請求項5に記載の通信システムにおいて、管理装置の証明書更新手段は、通信装置の公開鍵証明書が認証装置により電子署名されたものでないと判定した場合にも、その公開鍵証明書を認証装置に更新させるための処理を行う。
【0018】
このような構成の通信システムでは、管理装置による処理が行われない間に通信装置によって発行された公開鍵証明書が、管理装置による処理が行われる状態となった後には認証装置によって発行された公開鍵証明書に更新されるため、通信装置の信頼性を向上させることができる。
【0019】
次に、請求項7に記載の証明書更新装置は、認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えた通信システムに用いられるものであり、通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を認証装置に更新させるための処理を行う。
【0020】
このため、本発明の証明書更新装置が用いられた通信システムでは、通信装置の公開鍵証明書が有効な状態においてその公開鍵証明書を認証装置に更新させるための処理が行われることとなり、上述した請求項1の通信システムと同様、公開鍵証明書を容易に更新することができる。
【0021】
次に、請求項8に記載の証明書更新プログラムは、認証装置により電子署名された公開鍵証明書によって本人性が証明される通信装置を備えた通信システムに用いられるコンピュータを、通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を認証装置に更新させるための処理を行う証明書更新手段として機能させることを特徴としている。
【0022】
このため、本証明書更新プログラムによれば、上記請求項7の証明書更新装置としてコンピュータを機能させることができ、これにより上述した効果を得ることができる。
次に、請求項9に記載の通信装置は、認証装置により電子署名された公開鍵証明書によって本人性が証明される複数の通信装置と、複数の通信装置のそれぞれと通信可能に構成され、通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を認証装置に更新させるための処理を行う管理装置と、を備えた通信システムに用いられるものである。
【0023】
このような通信システムでは、通信装置の公開鍵証明書が有効な状態においてその公開鍵証明書を認証装置に更新させるための処理が行われることとなり、上述した請求項1の通信システムと同様、公開鍵証明書を容易に更新することができる。しかも、複数の通信装置の公開鍵証明書の管理を共通の管理装置により効率よく行うことができる。
【0024】
そして、請求項9に記載の通信装置では、代替更新依頼手段が、自己の公開鍵証明書を認証装置に更新させるための処理が管理装置により行われていないと判定した場合に、その公開鍵証明書が無効となる前にその公開鍵証明書の更新を自己とは別の通信装置に依頼するための処理を行う。さらに、代替更新処理手段が、自己とは別の通信装置の代替更新依頼手段により公開鍵証明書の更新の依頼を受けた場合に、自己の電子署名によりその公開鍵証明書を更新する処理を行う。
【0025】
つまり、本通信装置は、通信システムにおける自己とは別の通信装置からの依頼に応じて公開鍵証明書を更新する処理を行うように構成されており、公開鍵証明書を認証装置に更新させるための管理装置による処理が行われていないと判定した場合には、自己とは別の通信装置であって認証装置により本人性が証明されているものに公開鍵証明書の更新を依頼する。
【0026】
このような構成の通信装置によれば、自己とは別の通信装置に公開鍵証明書の更新を依頼することにより、認証装置により本人性が証明されている通信装置の電子署名によって間接的に本人性が証明されることとなるため、公開鍵証明書を認証装置に更新させるための管理装置による処理が行われない状態(例えば、管理装置が故障した場合や管理者が処理の実行操作を忘れている場合)となった場合にも公開鍵証明書が直ちに無効となってしまうことを防ぐことができる。
【0027】
次に、請求項10に記載の代替更新プログラムは、認証装置により電子署名された公開鍵証明書によって本人性が証明される複数の通信装置と、複数の通信装置のそれぞれと通信可能に構成され、通信装置の公開鍵証明書が無効となる前にその公開鍵証明書を認証装置に更新させるための処理を行う管理装置と、を備えた通信システムにおける通信装置としてコンピュータを機能させるプログラムであって、自己の公開鍵証明書を認証装置に更新させるための処理が管理装置により行われていないと判定した場合に、その公開鍵証明書が無効となる前にその公開鍵証明書の更新を自己とは別の通信装置に依頼するための処理を行う代替更新依頼手段、及び、自己とは別の通信装置の代替更新依頼手段により公開鍵証明書の更新の依頼を受けた場合に、自己の電子署名によりその公開鍵証明書を更新する処理を行う代替更新処理手段、としてコンピュータを機能させることを特徴としている。
【0028】
このため、本代替更新プログラムによれば、上記請求項9の通信装置としてコンピュータを機能させることができ、これにより上述した効果を得ることができる。
なお、上記請求項8又は10の各プログラムには、フレキシブルディスク等の磁気ディスク、光磁気ディスク、半導体製メモリなど、コンピュータ読み取り可能な記憶媒体に記憶された状態のものも含まれることは言うまでもない。
【発明を実施するための最良の形態】
【0029】
以下、本発明が適用された実施形態について、図面を用いて説明する。
[1.システムの全体構成]
図1は、実施形態の通信システムとしてのネットワーク印刷システムの構成図である。
【0030】
同図に示すように、このネットワーク印刷システムは、複数のプリントサーバ10,10,…と、管理用パーソナルコンピュータ(以下「管理PC」という。)20と、複数のクライアントパーソナルコンピュータ(以下「クライアントPC」という。)30,30,…と、CA40とがLAN50に接続されており、LAN50を介して通信可能に構成されたものである。なお、本実施形態のネットワーク印刷システムにおいて、管理PC20とCA40との間はセキュアに通信可能に構成されている。
【0031】
[2.各装置の構成]
ここで、本ネットワーク印刷システムに設けられた各装置の構成について説明する。
[2.1 プリントサーバの構成]
図2は、プリントサーバ10の概略構成を表すブロック図である。
【0032】
このプリントサーバ10は、LAN50を介して通信可能に構成されたクライアントPC30から印刷データを受信してその印刷データの表す画像を印刷するいわゆるネットワークプリンタとして機能する装置であり、同図に示すように、CPU11、印刷部12、操作部13、表示部14、ネットワークインタフェース(ネットワークIF)15、データ送受信部16及び記憶部17を備えている。
【0033】
CPU11は、各種演算処理を実行することにより本プリントサーバ10を構成する各部を統括制御する。
印刷部12は、CPU11からの指令に基づき記録媒体(用紙等)に画像を印刷する。なお、記録媒体への画像の印刷方式としては、例えばレーザ転写方式やインクジェット方式が挙げられる。
【0034】
操作部13は、ユーザインタフェースとしての操作パネルを有しており、その操作パネルを介した利用者からの外部操作による指令を入力する
表示部14は、液晶ディスプレイを有しており、利用者が視認可能な画像として各種情報を表示する。
【0035】
ネットワークインタフェース15は、通信ケーブル(LANケーブル)が接続された状態でその通信ケーブルを介したデータの送受信処理を行う。
データ送受信部16は、CPU11から出力されるデータをネットワークインタフェース15を介して送信する処理及びネットワークインタフェース15を介して受信したデータをCPU11へ出力する処理を行う。
【0036】
記憶部17は、各種情報を記憶するためのものであり、ROM、RAM等から構成されている。この記憶部17には、本プリントサーバ10の秘密鍵(以下「サーバ秘密鍵」という。)10pと、本プリントサーバ10の本人性を証明するための電子証明書(サーバ秘密鍵10pと対をなす公開鍵(以下「サーバ公開鍵」という。)と本プリントサーバ10のIPアドレスやホストネームやFQDN(Fully Qualified Domain Name)等の識別情報とが対応していることを証明する公開鍵証明書であり、以下「サーバ証明書」という。)10cとが記憶されている。このサーバ証明書10cとしては、CA40により(後述するCA40の秘密鍵40pを用いて)電子署名されたものが基本的には(後述する代替署名(CA40の代わりにLAN50内のプリントサーバ10が行う電子署名)の場合を除き)用いられる。本実施形態のネットワーク印刷システムでは、図3のフォーマット例に示すように、署名者情報、有効期限、所有者情報(コモンネーム)、公開鍵及び電子署名(デジタル署名)が記された公開鍵証明書が用いられる。なお、実際の公開鍵証明書はテキストデータではないが、図3では説明の便宜上テキストで示している。
【0037】
また、記憶部17には、後述する各種処理(図13〜図18)をCPU11に実行させるためのプログラムが記憶されている。
[2.2 管理PCの構成]
図4は、管理PC20の概略構成を表すブロック図である。
【0038】
この管理PC20は、本ネットワーク印刷システムの管理者によって用いられるコンピュータ(本実施形態では汎用のパーソナルコンピュータ)であり、同図に示すように、CPU21、入力装置22、入力装置制御部23、表示装置24、表示装置制御部25、ネットワークインタフェース(ネットワークIF)26、データ送受信部27及び記憶部28を備えている。
【0039】
CPU21は、各種演算処理を実行することにより管理PC20を構成する各部を統括制御する。
入力装置22は、利用者からの外部操作による指令を入力するためのものである。本実施形態では、入力装置22としてキーボード及びポインティングデバイス(マウス等)が用いられている。
【0040】
入力装置制御部23は、入力装置22によって入力された利用者からの各種指令を表す信号をCPU21へ出力する処理を行う。
表示装置24は、各種情報を利用者が視認可能な画像として表示するためのものである。本実施形態では、表示装置24として液晶ディスプレイが用いられている。
【0041】
表示装置制御部25は、CPU21から出力されるデータが表す画像を表示装置24に表示させるための処理を行う。
ネットワークインタフェース26は、通信ケーブル(LANケーブル)が接続された状態でその通信ケーブルを介したデータの送受信処理を行う。
【0042】
データ送受信部27は、CPU21から出力されるデータをネットワークインタフェース26を介して送信する処理及びネットワークインタフェース26を介して受信したデータをCPU21へ出力する処理を行う。
【0043】
記憶部28は、各種情報を記憶するためのものであり、ROM、RAM、ハードディスク装置(HDD)等から構成されている。この記憶部28には、CA40の本人性を証明するための電子証明書(CA40の公開鍵(後述するCA40の秘密鍵40pと対をなす公開鍵)とCA40とが対応していることを証明する公開鍵証明書であり、以下「CA証明書」という。)40cが、あらかじめセキュアな状態で記憶されている。
【0044】
また、記憶部28には、後述する各種処理(図19,図20)をCPU11に実行させるためのプログラムが記憶されている。
[2.3 クライアントPCの構成]
図5は、クライアントPC30の概略構成を表すブロック図である。
【0045】
このクライアントPC30は、本ネットワーク印刷システムの利用者によって用いられるコンピュータ(本実施形態では汎用のパーソナルコンピュータ)であり、同図に示すように、CPU31、入力装置32、入力装置制御部33、表示装置34、表示装置制御部35、ネットワークインタフェース(ネットワークIF)36、データ送受信部37及び記憶部38を備えている。なお、クライアントPC30のハードウェア構成及びCA証明書40cがあらかじめセキュアな状態で記憶されている点は上述した管理PC20と同じであるため、説明を省略する。
【0046】
[2.4 CAの構成]
図6は、CA40の概略構成を表すブロック図である。
このCA40は、本ネットワーク印刷システムにおいて電子証明書を発行する認証局として機能する装置であり、同図に示すように、CPU41、ネットワークインタフェース(ネットワークIF)42、データ送受信部43及び記憶部44を備えている。
【0047】
CPU41は、各種演算処理を実行することによりCA40を構成する各部を統括制御する。
ネットワークインタフェース42は、通信ケーブルが接続された状態でその通信ケーブルを介したデータの送受信処理を行う。
【0048】
データ送受信部43は、CPU41から出力されるデータをネットワークインタフェース42を介して送信する処理及びネットワークインタフェース42を介して受信したデータをCPU41へ出力する処理を行う。
【0049】
記憶部44は、各種情報を記憶するためのものであり、ROM、RAM、ハードディスク装置(HDD)等から構成されている。この記憶部44には、本CA40の秘密鍵(以下「CA秘密鍵」という。)40pが記憶されている。
【0050】
[3.通信の概要]
次に、本ネットワーク印刷システムで行われる通信の概要について説明する。
[3.1 印刷のための通信]
図7は、クライアントPC30からプリントサーバ10へ暗号化した印刷データを送信して印刷を行う場合に、プリントサーバ10とクライアントPC30との間で行われる通信の概要を表すラダーチャートである。
【0051】
同図に示すように、まず、クライアントPC30が、SSL(Secure Sockets Layer)による通信の開始を要求するためのSSL通信要求をプリントサーバ10へ送信する。これにより、クライアントPC30とプリントサーバ10との間でSSLハンドシェークが行われる。SSLハンドシェークにおいては、クライアントPC30がプリントサーバ10からサーバ証明書10cを受信し、記憶部38に記憶されているCA証明書40c(具体的にはCA40の公開鍵)を用いてサーバ証明書10cの電子署名を検証することによりプリントサーバ10の本人性を確認する処理や、サーバ証明書10c(具体的にはサーバ公開鍵)を用いた暗号通信により共通鍵を共有してSSLコネクションを確立する処理などが行われる。
【0052】
こうしてSSLコネクションが確立した状態で、クライアントPC30は、共通鍵を用いて暗号化した印刷データをプリントサーバ10へ送信する。一方、プリントサーバ10は、受信した印刷データを共通鍵を用いて復号し、その印刷データの表す画像を印刷部12で印刷する。
【0053】
そして、クライアントPC30は、すべての印刷データの送信を終えると、SSLによる通信の終了を要求するためのSSL切断要求をプリントサーバ10へ送信する。これにより、クライアントPC30とプリントサーバ10との間でのSSLコネクションが切断される。
【0054】
[3.2 サーバ証明書管理のための通信]
図8は、LAN50内の各プリントサーバ10が所有するサーバ証明書10cを管理PC20で統括管理するために、プリントサーバ10と管理PC20との間及び管理PC20とCA40との間で行われる通信の概要を表すラダーチャートである。
【0055】
同図に示すように、まず、管理PC20が、LAN50内に存在するプリントサーバ10を検索するためのプリントサーバ検索用ブロードキャストを行う。これに対し、LAN50内に存在するプリントサーバ10が応答する。
【0056】
管理PC20は、応答のあったプリントサーバ10(複数存在する場合には各プリントサーバ10)に対し、SSL通信要求を送信する。これにより、管理PC20とプリントサーバ10との間でSSLハンドシェークが行われる。そして、管理PC20は、SSLハンドシェークの際にプリントサーバ10から受信したサーバ証明書10cを参照し、そのサーバ証明書10cに含まれている有効期限及び署名者情報(発行者の情報)を確認する。そして、サーバ証明書10cの有効期限が切れそうな場合(本実施形態では、有効期限が10日以内に切れる場合)、又は、発行者がCA40以外である場合には、そのサーバ証明書10cを更新するために、その所有者(発行先)であるプリントサーバ10に対し、CSR(Certificate Signing Request)の作成を要求するためのCSR作成要求を送信する。ここで、CSRとは、公開鍵証明書を発行してもらうための要求(証明書署名要求)であり、本実施形態のネットワーク印刷システムでは、図9のフォーマット例に示すように、所有者情報、公開鍵、拡張領域及び電子署名(デジタル署名)が記されたものが用いられる。なお、実際のCSRはテキストデータではないが、図9では説明の便宜上テキストで示している。
【0057】
そして、管理PC20は、CSRで設定すべき項目であるCSRパラメータを送信する。ここで送信するCSRパラメータは、プリントサーバ10から受信したサーバ証明書10cの内容を引き継ぐものである。
【0058】
プリントサーバ10は、管理PC20からCSR作成要求及びCSRパラメータを受信すると、その受信したCSRパラメータに基づきCSRを作成して管理PC20へ送信する。
【0059】
管理PC20は、プリントサーバ10からCSRを受信すると、その受信したCSRをCA40へ送信する。
CA40は、管理PC20からCSRを受信すると、その受信したCSRに基づき、CA秘密鍵40pを用いて電子署名したプリントサーバ10のサーバ証明書10cを作成し、管理PC20へ送信する。なお、本実施形態のCA40は、サーバ証明書10cの有効期限を発行時点から所定期間(例えば1年)後に設定するように構成されており、この結果、サーバ証明書10cの有効期限が延長される。
【0060】
管理PC20は、CA40からサーバ証明書10cを受信すると、CSRの送信元であるプリントサーバ10に対し、サーバ証明書10cのインストールを要求するための証明書インストール要求を送信し、更にCA40から受信したサーバ証明書10cを送信する。
【0061】
プリントサーバ10は、管理PC20から証明書インストール要求及びサーバ証明書10cを受信すると、その受信したサーバ証明書10cをインストールすることにより、それまで所有していたサーバ証明書10cに代えて、受信したサーバ証明書10cを自己のサーバ証明書10cとする(サーバ証明書10cを更新する)。
【0062】
その後、管理PC20は、SSL切断要求をプリントサーバ10へ送信する。これにより、プリントサーバ10と管理PC20との間でのSSLコネクションが切断される。
[3.3 プリントサーバの識別情報変更のための通信]
図10は、LAN50内に存在するプリントサーバ10の識別情報(IPアドレスやホストネーム)を変更する場合に、プリントサーバ10と管理PC20との間及び管理PC20とCA40との間で行われる通信の概要を表すラダーチャートである。
【0063】
本ネットワーク印刷システムは、LAN50内の複数のプリントサーバ10,10,…を一台の管理PC20で統括管理するように構成されており、図11に示すように、管理PC20の表示装置24に表示される設定画面60上で各プリントサーバ10の設定を行う。具体的には、設定画面60には、IPアドレス入力用テキストボックス61、サブネットマスク入力用テキストボックス62、デフォルトゲートウェイ入力用テキストボックス63及びホストネーム入力用テキストボックス64と、証明書発行機能オンオフ用チェックボックス65とが設けられている。ここで、証明書発行機能オンオフ用チェックボックス65とは、他のプリントサーバ10のサーバ証明書10cを作成(自己のサーバ秘密鍵10pを用いて電子署名)する機能を有効にするか否かを設定するためのチェックボックスである。そして、本ネットワーク印刷システムでは、管理PC20が、設定画面60上で利用者により入力された情報に基づきプリントサーバ10の設定を行う。すなわち、管理PC20は、設定画面60上で入力された情報をプリントサーバ10へ送信し、プリントサーバ10は、管理PC20から受信した情報に基づき自身の設定を行う。これにより、管理PC20による複数のプリントサーバ10,10,…の統括管理を可能としている。
【0064】
この設定画面60において、あるプリントサーバ10の識別情報であるIPアドレス又はホストネームを変更する操作が行われると、図10に示すように、管理PC20は、識別情報を変更する対象のプリントサーバ10に対し、SSL通信要求を送信する。これにより、管理PC20とそのプリントサーバ10との間でSSLハンドシェークが行われる。そして、管理PC20は、SSLハンドシェークの際にそのプリントサーバ10から受信したサーバ証明書10cを参照し、そのサーバ証明書10cに含まれている所有者(発行先)を識別するための情報であるコモンネーム(所有者情報)を確認する。そして、変更対象の識別情報がサーバ証明書10cにおいてコモンネームとして使用されている場合(IPアドレスを変更する場合であってコモンネームとしてIPアドレスが使用されているときや、ホストネームを変更する場合であってコモンネームとしてホストネームが使用されているとき)には、そのサーバ証明書10cを更新するために、プリントサーバ10に対し、CSR作成要求を送信し更にCSRパラメータを送信する。ここで送信するCSRパラメータは、プリントサーバ10から受信したサーバ証明書10cの内容を引き継ぐものであるが、コモンネームについては変更後の識別情報とする。
【0065】
プリントサーバ10は、管理PC20からCSR作成要求及びCSRパラメータを受信すると、その受信したCSRパラメータに基づきCSRを作成して管理PC20へ送信する。
【0066】
管理PC20は、プリントサーバ10からCSRを受信すると、その受信したCSRをCA40へ送信する。
CA40は、管理PC20からCSRを受信すると、その受信したCSRに基づき、CA秘密鍵40pを用いて電子署名したプリントサーバ10のサーバ証明書10cを作成し、管理PC20へ送信する。
【0067】
管理PC20は、CA40からサーバ証明書10cを受信すると、プリントサーバ10に対し、サーバ証明書10cのインストールを要求するための証明書インストール要求を送信し、更にCA40から受信したサーバ証明書10cを送信する。プリントサーバ10は、管理PC20から証明書インストール要求及びサーバ証明書10cを受信すると、その受信したサーバ証明書10cをインストールすることにより、それまで所有していたサーバ証明書10cに代えて、受信したサーバ証明書10cを自己のサーバ証明書10cとする(サーバ証明書10cを更新する)。
【0068】
その後、管理PC20は、プリントサーバ10に対し、識別情報の変更を要求するための識別情報変更要求(具体的には、ホストネーム変更要求又はIPアドレス変更要求)を送信し、更にSSL切断要求を送信する。これにより、プリントサーバ10と管理PC20との間でのSSLコネクションが切断される。
【0069】
[3.4 代替署名のための通信]
図12は、プリントサーバ10がLAN50内の他のプリントサーバ10に対してサーバ証明書10cの生成を要求するために2台のプリントサーバ10の間で行われる通信の概要を表すラダーチャートである。
【0070】
同図に示すように、まず、自己の所有するサーバ証明書10cの有効期限が切れそうな状態(管理PC20によるサーバ証明書10cの更新が行われるべき状態)であるにもかかわらず管理PC20によるサーバ証明書10cの更新が行われていないと判定したプリントサーバ(説明の便宜上「第1のプリントサーバ」と称する。)10が、LAN50内のプリントサーバ10であって他のプリントサーバ10のサーバ証明書10cを作成可能なもの(他のプリントサーバ10のサーバ証明書10cを作成する機能を有効とする設定がされており(上述した設定画面60において証明書発行機能オンオフ用チェックボックス65をチェックする設定が既に行われており)、かつ、サーバ証明書10cが有効でかつ代替署名でない状態であるプリントサーバ10)を検索するための署名可能サーバ検索用ブロードキャストを行う。これに対し、LAN50内に存在するプリントサーバ10は、自己が他のプリントサーバ10のサーバ証明書10cを作成可能であるか否かを応答する。なお、本実施形態のネットワーク印刷システムではLAN50内のすべてのプリントサーバ10のサーバ証明書10cを共通の(1つの)CA40が署名する構成としているが、他の構成例としてLAN50内に複数のCAを設けることも考えられる。この場合、第1のプリンタサーバ10のサーバ証明書10cを署名しているCAとは異なる他のCAに署名された第2のプリンタサーバ10がLAN50内に存在し得るため、このようなシステムにおいては、代替署名可能か否かの応答に、署名元CAの名前も含めるようにするとよい。このようにすれば、第1のプリントサーバ10は、応答を受信した際に、応答したプリントサーバ10の署名元CAを調べ、自己のサーバ証明書10cの署名元CAと同じであるか否かを判断し、同じでないと判断した場合にはその第2のプリントサーバ10に対して代替署名を依頼しないようにすることができる。このようにすることで、署名元CAが同じであるプリントサーバ10に対してのみ代替署名を依頼することとなるため、代替署名であってもより信頼性の高いプリントサーバ10にサーバ証明書10cを発行させることができる。
【0071】
第1のプリントサーバ10は、他のプリントサーバ10のサーバ証明書10cを作成可能である旨の応答のあったプリントサーバ10のうちの一つ(説明の便宜上「第2のプリントサーバ」と称する。)に対し、SSL通信要求を送信する。これにより、第1のプリントサーバ10と第2のプリントサーバ10との間でSSLハンドシェークが行われる。そして、第1のプリントサーバ10は、CSRを作成し、第2のプリントサーバ10に対し、サーバ証明書10cの作成(電子署名)を要求するための署名要求を送信し、更に作成したCSRを送信する。ここで送信するCSRは、現時点で所有しているサーバ証明書10cの内容を引き継ぐものである。なお、本実施形態で用いるCSR(図9)にはサーバ証明書10cの有効期限に関する項目が含まれていないため、第1のプリントサーバ10は、CSRに加え、作成を要求するサーバ証明書10cの有効期限を指示するための有効期限情報を送信する。本実施形態では、有効期限を発行時点から20日間後とするように指示する。
【0072】
第2のプリントサーバ10は、第1のプリントサーバ10から署名要求、CSR及び有効期限情報を受信すると、その受信したCSR及び有効期限情報に基づき、自己のサーバ秘密鍵10pを用いて電子署名した第1のプリントサーバ10のサーバ証明書10cを作成し、第1のプリントサーバ10へ送信する。
【0073】
第1のプリントサーバ10は、第2のプリントサーバ10からサーバ証明書10cを受信すると、その受信したサーバ証明書10cをインストールすることにより、それまで所有していたサーバ証明書10cに代えて、受信したサーバ証明書10cを自己のサーバ証明書10cとする(サーバ証明書10cを更新する)。
【0074】
その後、第1のプリントサーバ10は、SSL切断要求を第2のプリントサーバ10へ送信する。これにより、第1のプリントサーバ10と第2のプリントサーバ10との間でのSSLコネクションが切断される。
【0075】
[4.プリントサーバ及び管理装置が実行する処理]
次に、上述した通信を実現するためにプリントサーバ10及び管理PC20が実行する処理について説明する。
【0076】
[4.1 サーバメイン処理]
まず、プリントサーバ10のCPU11が実行するサーバメイン処理について、図13のフローチャートを用いて説明する。
【0077】
このサーバメイン処理が開始されると、まず、S101で、CSR作成要求が受信されたか否かを判定する。なお、CSR作成要求は、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS705,S708とホストネーム/IPアドレス変更処理(図20)におけるS803とで送信される。
【0078】
そして、S101で、CSR作成要求が受信されたと判定した場合には、S102へ移行し、自己のサーバ証明書10cを生成するために必要なCSRを作成するためのCSR作成処理を行った後、S101へ戻る。なお、CSR作成処理の具体的内容については後述する(図14)。
【0079】
一方、S101で、CSR作成要求が受信されていないと判定した場合には、S103へ移行し、証明書インストール要求が受信されたか否かを判定する。なお、証明書インストール要求は、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS713とホストネーム/IPアドレス変更処理(図20)におけるS808とで送信される。
【0080】
そして、S103で、証明書インストール要求が受信されたと判定した場合には、S104へ移行し、サーバ証明書10cを受信する処理を行う。なお、サーバ証明書10cは、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS714とホストネーム/IPアドレス変更処理(図20)におけるS809とで送信される。
【0081】
続いて、S105では、S104で受信したサーバ証明書10cをインストールすることにより、それまで所有していたサーバ証明書10cに代えて、受信したサーバ証明書10cを自己のサーバ証明書10cとする。つまり、サーバ証明書10cを更新する。
【0082】
続いて、S106では、代替署名フラグをリセットする。代替署名フラグはサーバ証明書10cが代替署名によるものであることを表すフラグであり、代替署名フラグがリセットされているときは、サーバ証明書10cが代替署名によるものでないことを表す。その後、S101へ戻る。
【0083】
一方、S103で、証明書インストール要求が受信されていないと判定した場合には、S107へ移行し、自己のサーバ証明書10cの有効期限が所定期間後であるか否かを判定する。本実施形態では、現時点の日時が有効期限日のL日前あるか否かを判定する。ここで、変数Lの値は、管理PC20によってサーバ証明書10cが更新され得る時期(有効期限の10日前)よりも遅い時期となるように設定されている(本実施形態では、変数Lの初期値は5)。このため、現時点の日時が有効期限日のL日前であるか否かの判定は、換言すれば、管理PC20によるサーバ証明書10cの更新が行われるべき状態であるにもかかわらず管理PC20によるサーバ証明書10cの更新が行われていない状態(例えば管理PC20が故障している場合)であるか否かを判定していることになる。
【0084】
そして、S107で、有効期限日のL日前であると判定した場合には、S108へ移行し、CSRを作成する。ここで作成するCSRは、現在所有しているサーバ証明書10cの内容を引き継ぐものである。
【0085】
続いて、S109では、LAN50内の他のプリントサーバ10にサーバ証明書10cの作成(電子署名)を要求するための代替署名依頼処理を行う。なお、代替署名依頼処理の具体的内容については後述する(図15)。
【0086】
続いて、S110では、S109の代替署名依頼処理により代替署名が成功したか否か(他のプリントサーバ10によりサーバ証明書10cが作成されたか否か)を判定する。
そして、S110で、代替署名が成功したと判定した場合には、S111へ移行し、代替署名依頼処理で受信したサーバ証明書10cをインストールすることにより、それまで所有していたサーバ証明書10cに代えて、受信したサーバ証明書10cを自己のサーバ証明書10cとする。つまり、サーバ証明書10cを更新する。
【0087】
続いて、S112では、変数Lの値を5にリセットする。その後、S101へ戻る。
一方、S110で、代替署名が成功していない(失敗した)と判定した場合には、S113へ移行し、変数Lの値を1減算する。これにより、次の日に代替署名依頼処理が再び実行(リトライ)されることとなる(S107:YES,S108,S109)。その後、S101へ戻る。
【0088】
一方、S107で、有効期限日のL日前でないと判定した場合には、S114へ移行し、プリントサーバ検索用ブロードキャストによる送信データが受信されたか否かを判定する。なお、プリントサーバ検索用ブロードキャストは、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS701で送信される。
【0089】
そして、S114で、プリントサーバ検索用ブロードキャストによる送信データが受信されたと判定した場合には、S115へ移行し、プリントサーバ検索用ブロードキャストに対する応答としてのデータを返信する。その後、S101へ戻る。
【0090】
一方、S114で、プリントサーバ検索用ブロードキャストによる送信データが受信されていないと判定した場合には、S116へ移行し、署名可能サーバ検索用ブロードキャストによる送信データが受信されたか否かを判定する。なお、署名可能サーバ検索用ブロードキャストは、LAN50内の他のプリントサーバ10のCPU11により実行される後述の代替署名依頼処理(図15)におけるS301で送信される。
【0091】
そして、S116で、署名可能サーバ検索用ブロードキャストによる送信データが受信されたと判定した場合には、S117へ移行し、署名可能サーバ検索用ブロードキャストに応答するための署名可能応答処理を行った後、S101へ戻る。なお、署名可能応答処理の具体的内容については後述する(図16)。
【0092】
一方、S116で、署名可能サーバ検索用ブロードキャストによる送信データが受信されていないと判定した場合には、S118へ移行し、署名要求が受信されたか否かを判定する。なお、署名要求は、LAN50内の他のプリントサーバ10のCPU11により実行される後述の代替署名依頼処理(図15)におけるS305で送信される。
【0093】
そして、S118で、署名要求が受信されたと判定した場合には、S119へ移行し、署名要求の送信元のプリントサーバ10のサーバ証明書10cを生成する証明書署名処理を行った後、S101へ戻る。なお、証明書署名処理の具体的内容については後述する(図17)。
【0094】
一方、S118で、署名要求が受信されていないと判定した場合には、S120へ移行し、IPアドレス変更要求が受信されたか否かを判定する。なお、IPアドレス変更要求は、管理PC20のCPU21により実行される後述のホストネーム/IPアドレス変更処理(図20)におけるS810で送信される。
【0095】
そして、S120で、IPアドレス変更要求が受信されたと判定した場合には、S121へ移行し、自己のIPアドレスをIPアドレス変更要求によって指定されたIPアドレスに変更する。その後、S101へ戻る。
【0096】
一方、S120で、IPアドレス変更要求が受信されていないと判定した場合には、S122へ移行し、ホストネーム変更要求が受信されたか否かを判定する。なお、ホストネーム変更要求は、管理PC20のCPU21により実行される後述のホストネーム/IPアドレス変更処理(図20)におけるS810で送信される。
【0097】
そして、S122で、ホストネーム変更要求が受信されたと判定した場合には、S123へ移行し、自己のホストネームをホストネーム変更要求によって指定されたホストネームに変更する。その後、S101へ戻る。
【0098】
一方、S122で、ホストネーム変更要求が受信されていないと判定した場合には、S124へ移行し、SSL通信要求が受信されたか否かを判定する。なお、SSL通信要求は、LAN50内の他のプリントサーバ10のCPU11により実行される後述の代替署名依頼処理(図15)におけるS304、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS703、ホストネーム/IPアドレス変更処理(図20)におけるS801等で送信される。
【0099】
そして、S124で、SSL通信要求が受信されたと判定した場合には、S125へ移行し、SSL通信を開始するための処理を行う。その後、S101へ戻る。
一方、S124で、SSL通信要求が受信されていないと判定した場合には、S126へ移行し、SSL切断要求が受信されたか否かを判定する。なお、SSL切断要求は、LAN50内の他のプリントサーバ10のCPU11により実行される後述の代替署名依頼処理(図15)におけるS309、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS715、ホストネーム/IPアドレス変更処理(図20)におけるS811等で送信される。
【0100】
そして、S126で、SSL切断要求が受信されたと判定した場合には、S127へ移行し、SSLコネクションを切断するための処理を行う。これにより、SSLコネクションが切断される。その後、S101へ戻る。
【0101】
一方、S126で、SSL切断要求が受信されていないと判定した場合には、S128へ移行し、クライアントPC30からの印刷要求が受信されたか否かを判定する。
そして、S128で、印刷要求が受信されたと判定した場合には、S129へ移行し、印刷データの表す画像を印刷する印刷処理を行った後、S101へ戻る。なお、印刷処理の具体的内容については後述する(図18)。
【0102】
一方、S128で、印刷要求が受信されていないと判定した場合には、S130へ移行し、その他の処理(SSLハンドシェークの処理等)を行う。その後、S101へ戻る。
[4.2 CSR作成処理]
次に、上述したサーバメイン処理(図13)のS102で実行されるCSR作成処理について、図14のフローチャートを用いて説明する。
【0103】
このCSR作成処理が開始されると、まず、S201で、CSRパラメータを受信する処理を行う。なお、CSRパラメータは、管理PC20のCPU21により実行される後述の管理PCメイン処理(図19)におけるS706,S709、ホストネーム/IPアドレス変更処理(図20)におけるS804等で送信される。
【0104】
続いて、S202では、S201で受信したCSRパラメータに基づきCSRを作成する。
続いて、S203では、S202で作成したCSRを管理PC20へ送信する。その後、本CSR作成処理を終了する。
【0105】
[4.3 代替署名依頼処理]
次に、上述したサーバメイン処理(図13)のS109で実行される代替署名依頼処理について、図15のフローチャートを用いて説明する。
【0106】
この代替署名依頼処理が開始されると、まず、S301で、LAN50内のプリントサーバ10であって他のプリントサーバ10のサーバ証明書10cを作成可能(電子署名可能)なものを検索するための署名可能サーバ検索用ブロードキャストを行う。
【0107】
続いて、S302では、S301で行った署名可能サーバ検索用ブロードキャストに対する応答として返信されてくるデータを受信する処理を行う。なお、応答のデータは、LAN50内の他のプリントサーバ10のCPU11により実行される上述したサーバメイン処理(図13)におけるS117(具体的には後述する図16のS402,S403)で送信される。
【0108】
続いて、S303では、S302で受信したデータに基づき、他のプリントサーバ10のサーバ証明書10cを作成可能(電子署名可能)なプリントサーバ10がLAN50内に存在しているか否かを判定する。
【0109】
そして、S303で、他のプリントサーバ10のサーバ証明書10cを作成可能(電子署名可能)なプリントサーバ10がLAN50内に存在していないと判定した場合には、代替署名失敗の形で本代替署名依頼処理を終了する。この結果、上述したサーバメイン処理(図13)のS110で、代替署名失敗と判定される(S110:NO)。
【0110】
一方、S303で、他のプリントサーバ10のサーバ証明書10cを作成可能(電子署名可能)なプリントサーバ10がLAN50内に存在していると判定した場合には、S304へ移行し、そのプリントサーバ10のうちの一つに対し、SSL通信要求を送信する。これにより、SSLコネクションが確立される。
【0111】
続いて、S305では、SSLコネクションを確立したプリントサーバ10へ署名要求を送信する。
続いて、S306では、サーバメイン処理(図13)のS108で作成したCSRをそのプリントサーバ10へ送信する。
【0112】
続いて、S307では、作成を要求するサーバ証明書10cの有効期限(本実施形態では発行時点から20日後)を指示するための有効期限情報をそのプリントサーバ10へ送信する。
【0113】
続いて、S308では、S305〜S307で送信した署名要求、CSR及び有効期限情報に対してそのプリントサーバ10から送信されてくるサーバ証明書10cを受信する処理を行う。なお、サーバ証明書10cは、署名要求等の送信先であるプリントサーバ10のCPU11により実行される上述したサーバメイン処理(図13)におけるS119(具体的には後述する図17のS503)で送信される。
【0114】
続いて、S309では、SSL切断要求を送信する。これにより、SSLコネクションが切断される。
続いて、S310では、代替署名フラグをセットする。代替署名フラグはサーバ証明書10cが代替署名によるものであることを表すフラグであり、代替署名フラグがセットされているときは、サーバ証明書10cが代替署名によるものであることを表す。その後、代替署名成功の形で本代替署名依頼処理を終了する。この結果、上述したサーバメイン処理(図13)のS110で、代替署名成功と判定される(S110:YES)。
【0115】
[4.4 署名可能応答処理]
次に、上述したサーバメイン処理(図13)のS117で実行される署名可能応答処理について、図16のフローチャートを用いて説明する。
【0116】
この署名可能応答処理が開始されると、まず、S401で、他のプリントサーバ10のサーバ証明書10cを作成可能(電子署名可能)であるか否かを判定する。具体的には、管理PC20の表示装置24に表示される設定画面60(図11)での設定により、他のプリントサーバ10のサーバ証明書10cを作成する機能を有効とする設定がされている場合(上述した設定画面60において証明書発行機能オンオフ用チェックボックス65をチェックする設定が既に行われている場合)であって、自己のサーバ証明書10cが有効で、かつ、自己のサーバ証明書10cが代替署名によるものでないとき(すなわち、代替署名フラグがセットされていないとき)に、サーバ証明書10cを作成可能であると判定する。
【0117】
そして、S401で、他のプリントサーバ10のサーバ証明書10cを作成可能であると判定した場合には、S402へ移行し、他のプリントサーバ10のサーバ証明書10cを作成可能である旨の応答としてのデータを返信する。その後、本署名可能応答処理を終了する。
【0118】
一方、S401で、他のプリントサーバ10のサーバ証明書10cを作成可能でないと判定した場合には、S403へ移行し、他のプリントサーバ10のサーバ証明書10cを作成可能でない旨の応答としてのデータを返信する。その後、本署名可能応答処理を終了する。
【0119】
[4.5 証明書署名処理]
次に、上述したサーバメイン処理(図13)のS119で実行される証明書署名処理について、図17のフローチャートを用いて説明する。
【0120】
この証明書署名処理が開始されると、まず、S501で、CSR及び有効期限情報を受信する処理を行う。なお、CSR及び有効期限情報は、署名要求の送信元であるプリントサーバ10のCPU11により実行される上述したサーバメイン処理(図13)におけるS109(具体的には上述した図15のS306,S307)で送信される。
【0121】
続いて、S502では、S501で受信したCSR及び有効期限情報に基づき、自己のサーバ秘密鍵10pを用いて電子署名したサーバ証明書10cを作成する。
続いて、S503では、S502で作成したサーバ証明書10cを署名要求の送信元であるプリントサーバ10へ送信する。その後、本証明書署名処理を終了する。
【0122】
[4.6 印刷処理]
次に、上述したサーバメイン処理(図13)のS129で実行される印刷処理について、図18のフローチャートを用いて説明する。
【0123】
この印刷処理が開始されると、まず、S601で、クライアントPC30から印刷データを受信するための処理を行う。
続いて、S602では、S601で受信した印刷データの表す画像を印刷する。その後、本印刷処理を終了する。なお、SSL通信中は印刷データが共通鍵により暗号化された状態で送信されてくるため、受信した印刷データを共通鍵により復号した上でその印刷データの表す画像を印刷する。
【0124】
[4.7 管理PCメイン処理]
次に、管理PC20のCPU21が実行する管理PCメイン処理について、図19のフローチャートを用いて説明する。なお、この管理PCメイン処理は、所定期間ごとに(例えば1日1回)実行される。
【0125】
この管理PCメイン処理が開始されると、まず、S701で、LAN50内に存在するプリントサーバ10を検索するためのプリントサーバ検索用ブロードキャストを行う。
続いて、S702では、S701で行ったプリントサーバ検索用ブロードキャストに対する応答として返信されてくるデータを受信する処理を行う。なお、応答のデータは、LAN50内の他のプリントサーバ10のCPU11により実行される上述したサーバメイン処理(図13)におけるS115で送信される。
【0126】
そして、S702で受信したデータに基づき存在が確認されたプリントサーバ10(複数存在する場合には各プリントサーバ10)に対して以下のループ(S703〜S715)を実行する。
【0127】
まず、S703では、プリントサーバ10に対してSSL通信要求を送信する。これによりプリントサーバ10との間でSSLハンドシェークが行われる。
続いて、S704では、SSLハンドシェークの際にプリントサーバ10から受信したサーバ証明書10cを参照し、その発行者(署名者)がCA40以外であるか否かを判定する。
【0128】
そして、S704で、発行者がCA40以外である(他のプリントサーバ10である)と判定した場合には、S705へ移行し、CSR作成要求をプリントサーバ10へ送信する。
【0129】
さらに、S706では、CSRパラメータを送信する。ここで送信するCSRパラメータは、受信したサーバ証明書10cの内容を引き継ぐものである。その後、S710へ移行する。
【0130】
一方、S704で、発行者がCA40以外でない(CA40である)と判定した場合には、S707へ移行し、SSLハンドシェークの際にプリントサーバ10から受信したサーバ証明書10cを参照し、その有効期限が切れるまでの期間が所定期間内であるか否かを判定する。本実施形態では、有効期限が10日以内に切れる状態であるか否かを判定する。
【0131】
そして、S707で、有効期限が10日以内に切れる状態であると判定した場合には、S708へ移行し、CSR作成要求をプリントサーバ10へ送信する。
さらに、S709では、CSRパラメータを送信する。ここで送信するCSRパラメータは、受信したサーバ証明書10cの内容を引き継ぐものである。その後、S710へ移行する。
【0132】
S710では、S705,S706又はS708,S709で送信したCSR作成要求及びCSRパラメータに対してプリントサーバ10から送信されてくるCSRを受信する処理を行う。
【0133】
続いて、S711では、S710で受信したCSRをCA40へ送信する。
続いて、S712では、S711で送信したCSRに対しCA40から送信されてくるサーバ証明書10cを受信する処理を行う。
【0134】
続いて、S713では、証明書インストール要求をプリントサーバ10へ送信する。
さらに、S714では、S712で受信したサーバ証明書10cを送信する。その後、S715へ移行する。
【0135】
一方、S707で、有効期限が10日以内に切れる状態でないと判定した場合(サーバ証明書10cを更新する必要がない場合)にも、そのままS715へ移行する。
S715では、SSL切断要求をプリントサーバ10へ送信する。これにより、プリントサーバ10とのSSLコネクションが切断される。その後、本管理PCメイン処理を終了する。
【0136】
[4.8 ホストネーム/IPアドレス変更処理]
次に、管理PC20のCPU21が実行するホストネーム/IPアドレス変更処理について、図20のフローチャートを用いて説明する。なお、このホストネーム/IPアドレス変更処理は、管理PC20の表示装置24に表示される設定画面60(図11)でプリントサーバ10のホストネーム又はIPアドレスを変更する操作が行われることにより実行される。
【0137】
このホストネーム/IPアドレス変更処理が開始されると、まず、S801で、ホストネーム又はIPアドレスを変更するプリントサーバ10に対しSSL通信要求を送信する。これにより、そのプリントサーバ10との間でSSLハンドシェークが行われる。
【0138】
続いて、S802では、SSLハンドシェークの際にプリントサーバ10から受信したサーバ証明書10cを参照し、変更する識別情報がコモンネームとして使用されているか否かを判定する。つまり、識別情報を変更した場合にサーバ証明書10cが使用できなくなる(無効となる)か否かを判定している。
【0139】
そして、S802で、変更する識別情報がコモンネームとして使用されていると判定した場合(具体的には、ホストネームを変更する場合であってコモンネームとしてホストネームが使用されていると判定したときや、IPアドレスを変更する場合であってコモンネームとしてIPアドレスが使用されていると判定したとき)には、S803へ移行し、CSR作成要求をプリントサーバ10へ送信する。
【0140】
続いて、S804では、CSRパラメータを送信する。ここで送信するCSRパラメータは、受信したサーバ証明書10cの内容を引き継ぐものであるが、コモンネームについては変更後の識別情報とする。具体的には、ホストネームを変更する場合にはコモンネームを新しいホストネームとし、IPアドレスを変更する場合にはコモンネームを新しいIPアドレスとする。
【0141】
続いて、S805では、S803,S804で送信したCSR作成要求及びCSRパラメータに対してプリントサーバ10から送信されてくるCSRを受信する処理を行う。
続いて、S806では、S805で受信したCSRをCA40へ送信する。
【0142】
続いて、S807では、S806で送信したCSRに対しCA40から送信されてくるサーバ証明書10cを受信する処理を行う。
続いて、S808では、証明書インストール要求をプリントサーバ10へ送信する。
【0143】
さらに、S809では、S807で受信したサーバ証明書10cを送信する。その後、S810へ移行する。
一方、S802で、変更する識別情報がコモンネームとして使用されていないと判定した場合(つまり、サーバ証明書10cを更新する必要がない場合)には、そのままS810へ移行する。
【0144】
S810では、識別情報(ホストネーム又はIPアドレス)の変更を要求するための送信データ(ホストネーム変更要求又はIPアドレス変更要求)をプリントサーバ10へ送信する。これにより、プリントサーバ10の識別情報(ホストネーム又はIPアドレス)が変更される。
【0145】
続いて、S811では、SSL切断要求をプリントサーバ10へ送信する。これにより、プリントサーバ10とのSSLコネクションが切断される。その後、本ホストネーム/IPアドレス変更処理を終了する。
【0146】
[5.実施形態の効果]
以上説明したように、本実施形態のネットワーク印刷システムは、CA40により電子署名されたサーバ証明書10cによって本人性が証明される複数のプリントサーバ10と、これらとLAN50を介して通信可能に構成された管理PC20とを備えており、管理PC20が、プリントサーバ10のサーバ証明書10cが無効となる前にそのサーバ証明書10cをCA40に更新させるための処理を行う(S707〜S714,S802〜S809)。このため、本実施形態のネットワーク印刷システムでは、プリントサーバ10のサーバ証明書10cが有効な状態においてそのサーバ証明書10cをCA40に更新させるための処理が行われることとなり、その結果、サーバ証明書10cを容易に更新することができる。すなわち、サーバ証明書10cが無効となった後でサーバ証明書10cの再署名(再発行)をCA40に依頼する場合には、既にプリントサーバ10の本人性が証明されない状態となっていることから、CA40にプリントサーバ10を認証させるために煩雑な処理を要することとなる。これに対し、本実施形態のネットワーク印刷システムでは、サーバ証明書10cによって本人性が証明されている状態でそのサーバ証明書10cの更新を行うため、サーバ証明書10cを容易に更新することができ、しかも、CA40として周知の認証局を利用することが可能である。
【0147】
また、本ネットワーク印刷システムによれば、複数のプリントサーバ10のサーバ証明書10cの管理を共通の管理PC20により効率よく行うことができる。
特に、本実施形態のネットワーク印刷システムでは、プリントサーバ10のサーバ証明書10cの有効期限を参照し、その有効期限前の所定期間内にそのサーバ証明書10cを有効期限が延長されるようにCA40に更新させるための処理が自動的に行われるため(S707〜S714)、ネットワーク印刷システムの管理者等がサーバ証明書10cの有効期限を意識している必要がなく、管理者等が気付かないうちにサーバ証明書10cの有効期限が切れてしまうという事態を防ぐことができる。
【0148】
しかも、本実施形態のネットワーク印刷システムでは、プリントサーバ10のIPアドレスやホストネームが変更される前にそのプリントサーバ10のサーバ証明書10cを新たなIPアドレス等へ変更されるようにCA40に更新させるための処理を行うため(S802〜S809)、プリントサーバ10のIPアドレス等が変更されることによりサーバ証明書10cが無効となってしまうという事態を防ぐことができる。この結果、例えば管理者のミスによってプリントサーバ10のホストネームが変更された場合に、一時的にセキュアな通信が行えなくなってしまうといったことを防ぐことができる。
【0149】
一方、本実施形態のネットワーク印刷システムにおいて、各プリントサーバ10は、自己とは別のプリントサーバ10によりサーバ証明書10cの更新の依頼を受けた場合に(S118:YES)、自己の電子署名によりそのサーバ証明書10cを更新する処理を行うように構成されている(S119)。そして、各プリントサーバ10は、自己のサーバ証明書10cをCA40に更新させるための処理が管理PC20により行われていないと判定した場合に(S107:YES)、そのサーバ証明書10cが無効となる前にそのサーバ証明書10cの更新を自己とは別のプリントサーバ10であってCA40により本人性が証明されているプリントサーバ10に依頼するための処理を行う(S109)。このため、本実施形態のネットワーク印刷システムによれば、自己とは別のプリントサーバ10によりサーバ証明書10cが更新されたプリントサーバ10は、CA40により本人性が証明されているプリントサーバ10の電子署名によって間接的に本人性が証明されることとなるため、サーバ証明書10cをCA40に更新させるための管理PC20による処理が行われない状態(例えば管理PC20の故障)となった場合にもサーバ証明書10cが直ちに無効となってしまうことを防ぐことができる。しかも、本実施形態のネットワーク印刷システムでは、管理PC20が、プリントサーバ10のサーバ証明書10cがCA40により電子署名されたものでないと判定した場合にも、そのサーバ証明書10cをCA40に更新させるための処理を行うようにしているため(S704〜S706,S710〜S714)、プリントサーバ10の信頼性を向上させることができる。
【0150】
[6.特許請求の範囲との対応]
なお、本実施形態のネットワーク印刷システムでは、プリントサーバ10が、本発明の通信装置に相当し、管理PC20が、本発明の管理装置及び証明書更新装置に相当し、CA40が、本発明の認証装置に相当する。
【0151】
また、サーバメイン処理(図13)におけるS107〜S109の処理を実行するCPU11が、本発明の代替更新依頼手段に相当し、S118,S119の処理を実行するCPU11が、本発明の代替更新処理手段に相当し、管理PCメイン処理(図19)におけるS704〜S714の処理及びホストネーム/IPアドレス変更処理(図20)におけるS802〜S809の処理を実行するCPU21が、本発明の証明書更新手段に相当し、S810の処理を実行するCPU21が、本発明の情報変更手段に相当する。
【0152】
さらに、サーバメイン処理(図13)におけるS107〜S109,S118,S119の処理をCPU11に実行させるためのプログラムが、本発明の代替更新プログラムに相当し、管理PCメイン処理(図19)におけるS707〜S714の処理及びホストネーム/IPアドレス変更処理(図20)におけるS802〜S809の処理をCPU21に実行させるためのプログラムが、本発明の証明書更新プログラムに相当する。
【0153】
[7.他の形態]
以上、本発明の一実施形態について説明したが、本発明は、種々の形態を採り得ることは言うまでもない。
【0154】
例えば、上記実施形態のネットワーク印刷システムでは、各プリントサーバ10が所有するサーバ証明書10cの管理のための管理PCメイン処理(図19)を所定期間ごとに(例えば1日1回)自動的に実行するようにしているが、このような定期的なタイミングではなく、本ネットワーク印刷システムの管理者が任意のタイミングで実行するようにしてもよい。ただし、管理者による実行忘れを防止することができるという点では、上記実施形態のように自動的に実行する構成の方が好ましい。
【0155】
また、上記実施形態のネットワーク印刷システムでは、サーバ証明書10cが自動的に更新されるようにしているが、これに限ったものではなく、例えば、サーバ証明書10cの更新が必要な場合に、更新するか否かを管理者等に確認し(例えば、管理PC20の表示装置24にダイアログボックスを表示し)、確認結果に応じてサーバ証明書10cの更新処理を行うようにしてもよい。
【0156】
さらに、上記実施形態のネットワーク印刷システムでは、LAN50内に設けられたCA40によりプリントサーバ10のサーバ証明書10cを発行するようにしているが、これに限ったものではなく、例えばインターネット上のCAを利用してもよい。また、管理PC20内にCAを設けた構成(CAとしての電子署名機能を持たせた構成)とすることも可能である。
【0157】
一方、上記実施形態のネットワーク印刷システムでは、プリントサーバ10が所有するサーバ証明書10cの更新処理を管理PC20が行うようにしているが、プリントサーバ10がサーバ証明書10cの更新処理を自身で行う構成(サーバ証明書10cの更新処理をCA40に直接依頼する構成)とすれば、管理PC20を設けずにシステムを構築することも可能である。
【0158】
また、上記実施形態のネットワーク印刷システムは、管理PC20によるサーバ証明書10cの更新が行われるべき状態であるにもかかわらず管理PC20によるサーバ証明書10cの更新が行われていない場合に、LAN50内の他のプリントサーバ10にサーバ証明書10cの作成を要求するための代替署名依頼処理(図15)を行うプリントサーバ10を用いた構成であるが、このような代替署名依頼処理を行わないプリントサーバを用いてシステムを構築することも可能である。
【図面の簡単な説明】
【0159】
【図1】実施形態のネットワーク印刷システムの構成図である。
【図2】プリントサーバの概略構成を表すブロック図である。
【図3】公開鍵証明書のフォーマット例を表す説明図である。
【図4】管理PCの概略構成を表すブロック図である。
【図5】クライアントPCの概略構成を表すブロック図である。
【図6】CAの概略構成を表すブロック図である。
【図7】クライアントPCからプリントサーバへ暗号化した印刷データを送信して印刷を行う場合に、プリントサーバとクライアントPCとの間で行われる通信の概要を表すラダーチャートである。
【図8】LAN内の各プリントサーバが所有するサーバ証明書を管理PCで統括管理するために、プリントサーバと管理PCとの間及び管理PCとCAとの間で行われる通信の概要を表すラダーチャートである。
【図9】CSRのフォーマット例を表す説明図である。
【図10】LAN内に存在するプリントサーバの識別情報を変更する場合に、プリントサーバと管理PCとの間及び管理PCとCAとの間で行われる通信の概要を表すラダーチャートである。
【図11】管理PCの表示装置に表示される設定画面の説明図である。
【図12】プリントサーバがLAN内の他のプリントサーバに対してサーバ証明書の生成を要求するために2台のプリントサーバの間で行われる通信の概要を表すラダーチャートである。
【図13】プリントサーバのCPUが実行するサーバメイン処理のフローチャートである。
【図14】プリントサーバのCPUが実行するCSR作成処理のフローチャートである。
【図15】プリントサーバのCPUが実行する代替署名依頼処理のフローチャートである。
【図16】プリントサーバのCPUが実行する署名可能応答処理のフローチャートである。
【図17】プリントサーバのCPUが実行する証明書署名処理のフローチャートである。
【図18】プリントサーバのCPUが実行する印刷処理のフローチャートである。
【図19】管理PCのCPUが実行する管理PCメイン処理のフローチャートである。
【図20】管理PCのCPUが実行するホストネーム/IPアドレス変更処理のフローチャートである。
【符号の説明】
【0160】
10…プリントサーバ、10c…サーバ証明書、10p…サーバ秘密鍵、11,21,31,41…CPU、12…印刷部、13…操作部、14…表示部、15,26,36,42…ネットワークインタフェース、16,27,37,43…データ送受信部、17,28,38,44…記憶部、20…管理PC、22,32…入力装置、23,33…入力装置制御部、24,34…表示装置、25,35…表示装置制御部、30…クライアントPC、40…CA、40c…CA証明書、40p…CA秘密鍵、60…設定画面




 

 


     NEWS
会社検索順位 特許の出願数の順位が発表

URL変更
平成6年
平成7年
平成8年
平成9年
平成10年
平成11年
平成12年
平成13年


 
   お問い合わせ info@patentjp.com patentjp.com   Copyright 2007-2013