(57)【要約】【課題】複数の電子証明書を有する通信装置において、いずれかの電子証明書を用いた通信に失敗した場合でもより適切な電子証明書を用いて通信を行えるようにする。【解決手段】クライアント証明書領域に記憶されている複数のクライアント証明書のいずれかを用いて行った認証処理に失敗したときには（ステップＳ１９０でＹＥＳ）、失敗時に用いたクライアント証明書以外のクライアント証明書を送信用証明書に設定し（ステップＳ２５０）これを用いて再度認証処理を行う。これにより、複数の電子証明書の中に通信を行うことのできる電子証明書が含まれていれば、その電子証明書を用いることで通信が成功する可能性があり、適切な電子証明書を用いて通信を行えるようにすることができる。【選択図】図４
2013232826.tif 000002
【特許請求の範囲】
【請求項１】
複数の電子証明書を記憶可能な記憶手段と、
前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行い、該通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書を用いて再度前記通信を行う通信手段と、
を備えた通信装置。
【請求項２】
前記通信手段は、前記電子証明書を用いた通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書のうち、前記通信の通信先から取得した情報又は前記通信の設定に関する情報の少なくともいずれかを含む環境情報と該電子証明書に付された付属情報との一致度が最も高い電子証明書を用いて再度前記通信を行う、
請求項１に記載の通信装置。
【請求項３】
前記付属情報は、電子証明書に含まれる証明書の申請元を表す情報である、
請求項２に記載の通信装置。
【請求項４】
前記通信手段は、前記電子証明書を用いた通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書のうち最も新しいものを用いて再度前記通信を行う、
請求項１に記載の通信装置。
【請求項５】
前記通信手段は、前記電子証明書を用いた通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書のうち、前記複数の電子証明書に予め定められた順位の最も高いものを用いて再度前記通信を行う、
請求項１に記載の通信装置。
【請求項６】
前記通信手段は、前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行うにあたり、前回の成功した通信時に用いた電子証明書を最初に用いる、
請求項１〜５のいずれか１項に記載の通信装置。
【請求項７】
前記通信手段は、前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行うにあたり、予め定められた電子証明書を最初に用いる、
請求項１〜５のいずれか１項に記載の通信装置。
【請求項８】
請求項１〜７のいずれか１項に記載の通信装置と、
流体を吐出して、前記通信により取得した画像データに基づく画像を媒体に形成可能な画像形成手段と、
を備えた画像形成装置。
【請求項９】
複数の電子証明書を記憶可能な記憶手段を備えた通信装置の通信方法であって、
（ａ）前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行うステップと、
（ｂ）前記ステップ（ａ）の通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書を用いて再度前記通信を行うステップと、
を含む通信方法。
【請求項１０】
請求項９に記載の通信方法の各ステップを１以上のコンピューターに実現させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信装置，画像形成装置，通信方法及びそのプログラムに関する。
【背景技術】
【０００２】
従来、電子証明書を用いた通信を行う通信装置が知られている。例えば、特許文献１に記載の通信装置では、記憶している電子証明書を用いて認証処理を行い、認証処理に成功したときにネットワークに接続されるプリンターなどの通信装置が記載されている。この通信装置では、電子証明書の有効期間が所定日数以下のときには、新たな電子証明書の取得を促すガイダンスがネットワーク管理装置から通知される。これにより、ユーザーが電子証明書の有効期限切れを見過ごすことを防止できるとしている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００８−４２３８１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ところで、通信装置が複数の異なるネットワークへ接続可能な場合や同じネットワークであってもその設定が変更される場合など、異なる通信環境での通信を行う必要がある際には、ネットワーク毎の電子証明書や設定変更の前後にそれぞれに対応した電子証明書など、複数の異なる電子証明書を通信装置が有している場合がある。そして、このような複数の電子証明書を有する通信装置においては、通信を行う際にいずれの電子証明書を用いるかの選択や設定をユーザーが誤ると通信が失敗してしまい、再度ユーザーが電子証明書を選択や設定をし直す必要があるなどの問題があった。
【０００５】
本発明は、上述した課題に鑑みなされたものであり、複数の電子証明書を有する通信装置において、いずれかの電子証明書を用いた通信に失敗した場合でもより適切な電子証明書を用いて通信を行えるようにすることを主目的とする。
【課題を解決するための手段】
【０００６】
本発明は、上述の目的を達成するために以下の手段を採った。
【０００７】
本発明の通信装置は、
複数の電子証明書を記憶可能な記憶手段と、
前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行い、該通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書を用いて再度前記通信を行う通信手段と、
を備えたものである。
【０００８】
この本発明の通信装置では、記憶手段に記憶されている複数の電子証明書のいずれかを用いて行った通信に失敗したときには、失敗時に用いた電子証明書以外の電子証明書を用いて再度通信を行う。これにより、複数の電子証明書の中に通信を行うことのできる電子証明書が含まれていれば、その電子証明書を用いることで通信が成功する可能性がある。すなわち、複数の電子証明書を有する通信装置において、いずれかの電子証明書を用いた通信に失敗した場合でもより適切な電子証明書を用いて通信を行えるようにすることができる。ここで、電子証明書を用いた通信とは、例えば、電子証明書を用いて自己を証明して通信先の機器の認証を受ける認証処理や、認証処理を含む処理によって接続を確立しその後の通信を行うことや、電子証明書に含まれる公開鍵を用いて暗号化した通信を行うことなどを含む。また、電子証明書を用いた通信とは、通信先の機器と１対１の通信を行うことであってもよいし、複数の機器が接続されているネットワークに接続して通信を行うことであってもよい。さらに、通信は有線であっても無線であってもよい。
【０００９】
本発明の通信装置において、前記通信手段は、前記電子証明書を用いた通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書のうち、前記通信の通信先から取得した情報又は前記通信の設定に関する情報の少なくともいずれかを含む環境情報と該電子証明書に付された付属情報との一致度が最も高い電子証明書を用いて再度前記通信を行うものとしてもよい。こうすれば、電子証明書の付属情報と通信の環境情報との一致度が高いほどその電子証明書はその通信に適したものである可能性が高いと考えられるため、失敗を繰り返すことなくより適切な電子証明書を用いて通信を行える可能性が高くなる。ここで、付属情報とは、例えば電子証明書の基本領域や拡張領域に含まれる情報などの電子証明書を構成する少なくとも一部の情報であってもよいし、電子証明書の一部ではない電子証明書に対応付けられた情報であってもよい。付属情報は、電子証明書に含まれる証明書の申請元を表す情報であるものとしてもよい。申請元を表す情報には、例えば申請元の会社名，部署名，通信装置のＩＰアドレス，ホスト名のいずれか１以上が含まれているものとしてもよい。また、通信先から取得した情報には、通信先の機器のドメイン名，ホスト名，ＩＰアドレスや、通信先のネットワークのドメイン名などが含まれる。通信の設定に関する情報には、認証プロトコルや通信装置のＩＤ，通信先の機器のＩＤなどが含まれる。前記通信の設定に関する情報は、前記記憶手段に記憶されているものとしてもよい。
【００１０】
本発明の通信装置において、前記通信手段は、前記電子証明書を用いた通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書のうち最も新しいものを用いて再度前記通信を行うものとしてもよい。こうすれば、新しい電子証明書は古い電子証明書に比べて通信に適したものである可能性が高い傾向にあると考えられるため、失敗を繰り返すことなくより適切な電子証明書を用いて通信を行える可能性が高くなる。ここで、最も新しい電子証明書とは、例えば通信装置にインストールした時期が最も新しい電子証明書としてもよいし、有効期間の終了時期が最も遅い電子証明書としてもよいし、認証局からの発行時期が最も新しい電子証明書としてもよい。
【００１１】
本発明の通信装置において、前記通信手段は、前記電子証明書を用いた通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書のうち、前記複数の電子証明書に予め定められた順位の最も高いものを用いて前記通信を行うものとしてもよい。
【００１２】
本発明の通信装置において、前記通信手段は、前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行うにあたり、前回の成功した通信時に用いた電子証明書を最初に用いるものとしてもよい。こうすれば、前回の成功した通信時の電子証明書はそれ以外の電子証明書に比べて通信に適したものである可能性が高い傾向にあると考えられるため、失敗することなくより適切な電子証明書を用いて通信を行える可能性が高くなる。
【００１３】
本発明の通信装置において、前記通信手段は、前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行うにあたり、予め定められた電子証明書を最初に用いるものとしてもよい。
【００１４】
本発明の画像形成装置は、
上述したいずれかの態様の本発明の通信装置と、
流体を吐出して、前記通信により取得した画像データに基づく画像を媒体に形成可能な画像形成手段と、
を備えたものである。
【００１５】
この本発明の画像形成装置は、上述したいずれかの態様の本発明の通信装置を備えているため、上述した本発明の通信装置と同様の効果、例えば、いずれかの電子証明書を用いた通信に失敗した場合でもより適切な電子証明書を用いて通信を行えるようにすることができる効果が得られる。
【００１６】
本発明の通信方法は、
複数の電子証明書を記憶可能な記憶手段を備えた通信装置の通信方法であって、
（ａ）前記記憶手段に記憶されている複数の電子証明書のいずれかを用いて通信を行うステップと、
（ｂ）前記ステップ（ａ）の通信に失敗したときには、該失敗時に用いた電子証明書以外の電子証明書を用いて再度前記通信を行うステップと、
を含むものである。
【００１７】
この本発明の通信方法では、記憶手段に記憶されている複数の電子証明書のいずれかを用いて行った通信に失敗したときには、失敗時に用いた電子証明書以外の電子証明書を用いて再度通信を行う。これにより、複数の電子証明書の中に通信を行うことのできる電子証明書が含まれていれば、その電子証明書を用いることで通信が成功する可能性がある。すなわち、複数の電子証明書を有する通信装置において、いずれかの電子証明書を用いた通信に失敗した場合でもより適切な電子証明書を用いて通信を行えるようにすることができる。なお、この通信装置の情報処理方法において、上述した通信装置の種々の態様を採用してもよいし、また、上述した通信装置の各機能を実現するようなステップを追加してもよい。
【００１８】
本発明のプログラムは、上述した通信方法の各ステップを１以上のコンピューターに実現させるものである。このプログラムは、コンピューターが読み取り可能な記録媒体（例えばハードディスク、ＲＯＭ、ＦＤ、ＣＤ、ＤＶＤなど）に記録されていてもよいし、伝送媒体（インターネットやＬＡＮなどの通信網）を介してあるコンピューターから別のコンピューターへ配信されてもよいし、その他どのような形で授受されてもよい。このプログラムを一つのコンピューターに実行させるか又は複数のコンピューターに各ステップを分担して実行させれば、上述した通信方法の各ステップが実行されるため、この通信方法と同様の作用効果が得られる。
【図面の簡単な説明】
【００１９】
【図１】本実施形態の複合機２０を備えたネットワークシステム１０の構成図。
【図２】通信設定情報領域４０の説明図。
【図３】クライアント証明書領域４１の説明図。
【図４】通信接続確立ルーチンの一例を示すフローチャート。
【発明を実施するための形態】
【００２０】
次に、本発明の実施の形態を図面を用いて説明する。図１は、本発明の通信装置及び画像形成装置の一実施形態である複合機２０を備えたネットワークシステム１０の構成の概略を示す構成図である。図示するように、ネットワークシステム１０は、認証スイッチ６０を有するＬＡＮ１２と、認証スイッチ１６０を有するＬＡＮ１１２と、認証スイッチ６０，１６０を介してＬＡＮ１２，１１２にそれぞれ接続可能な複合機２０と、ＬＡＮ１２に接続された認証サーバー７０と、ＬＡＮ１１２に接続された認証サーバー７０と、を備えている。
【００２１】
ＬＡＮ１２は、ＩＥＥＥ８０２．１Ｘの規格に従うネットワークとして構成されており、認証スイッチ６０を備えている。この認証スイッチ６０は、認証機能付きのスイッチングハブとして構成されており、認証スイッチ６０の図示しない通信ポートを制御する通信ポート制御部６１と、通信ポートに接続された複合機２０などの機器の認証を行う通信機器認証部６２と、各種プログラムや各種データを記憶する記憶部６３と、複合機２０，認証サーバー７０などとの通信を行うデバイスである通信インターフェース（Ｉ／Ｆ）６４とを備えている。認証スイッチ６０は、通信Ｉ／Ｆ６４を介してＬＡＮ１２と接続されており、複合機２０とも接続可能に構成されている。通信ポート制御部６１は、複合機２０などの通信ポートに接続された機器から送信された情報を検知して通信機器認証部６２に認証処理を開始させる機能を有する。また、通信ポート制御部６１は、認証処理に成功した機器についてはＬＡＮ１２への接続を許可し、認証処理に失敗した機器についてはＬＡＮ１２への接続を遮断する機能を有する。通信機器認証部６２は、複合機２０などの認証スイッチ６０に接続された機器（クライアントとも称する）と認証サーバー７０との間で認証処理の仲介を行う機能を有する。具体的には、通信機器認証部６２は、認証処理において複合機２０などのクライアント側から受信したＭＡＣフレームをＲＡＤＩＵＳフレームに変換して認証サーバー７０に送信したり、認証サーバー７０から受信したＲＡＤＩＵＳフレームをＭＡＣフレームに変換してクライアントに送信したりする。また、通信機器認証部６２は、認証処理に成功したクライアントについて一定間隔（例えば６０分毎）に再認証要求を行う機能を有する。なお、本実施形態では、認証スイッチ６０を介して行う認証処理は、ＩＥＥＥ８０２．１Ｘにおける認証方式としての、ＥＡＰ−ＴＬＳ方式で行うものとした。ＥＡＰ−ＴＬＳ方式は、電子証明書を用いて認証を行う方式である。記憶部６３には、認証サーバー７０に関する情報である認証サーバー情報６６など、認証処理に用いる情報が記憶されている。
【００２２】
複合機２０は、スキャナーとしても機能すると共にプリンターとしても機能する装置であり、ＬＡＮ１２，１１２などのネットワークに接続されると、同じネットワークに接続された他の機器（例えばパソコンなど）から通信によりネットワークを介して画像データや電子証明書などのデータを取得したり、スキャンした画像データをネットワークを介して他の機器に送信したりすることが可能な装置である。この複合機２０は、通信Ｉ／Ｆ２６を介して例えばＬＡＮケーブルなどにより認証スイッチ６０，１６０と接続可能に構成されている。複合機２０は、画像データなどに基づく画像を紙などの媒体に形成する印刷機構２１と、紙などの媒体の画像などをスキャンして画像データとする読取機構２２と、ユーザーに各種情報を表示したりユーザーからの各種指示が入力されたりする操作パネル２３と、装置全体を制御するコントローラー３０と、を備えている。印刷機構２１は、各色のインクに圧力をかけこの加圧されたインクを媒体に吐出することで画像データに基づく画像を媒体に形成する印刷処理を実行するインクジェット方式の機構である。なお、インクへ圧力をかける機構は、圧電素子の変形によるものとしてもよいしヒーターの熱による気泡の発生によるものとしてもよい。また、読取機構２２は、ガラス台に載置された書類に向かって発光したあとの反射光を各色に分解して読取データとする周知のカラーイメージセンサーを走査して原稿を読み取るスキャナー機構として構成されている。操作パネル２３は、画像を表示する液晶ディスプレイとして構成された表示部と、ユーザーが各種入力を行うキーが配置された操作部とを備えており、表示部によりユーザーに各種情報を出力したり、ユーザーからの指示を操作部から入力したりする。
【００２３】
複合機２０のコントローラー３０は、ＣＰＵ３１を中心とするマイクロプロセッサーとして構成されており、一時的にデータを記憶したりデータを保存したりするＲＡＭ３２と、各種処理プログラムや各種データを記憶し書き換え可能なフラッシュメモリー３３とを備えている。フラッシュメモリー３３には、通信Ｉ／Ｆ２６を介して他の機器と通信を行うための通信設定情報を記憶する通信設定情報領域４０と、複合機２０自身を証明するための電子証明書（クライアント証明書とも称する）を記憶するクライアント証明書領域４１とが設けられている。
【００２４】
図２は、通信設定情報領域４０の説明図である。図示するように、通信設定情報領域４０には、通信設定情報Ａ，Ｂなど、複合機２０が通信を行うために必要な各種設定情報が記憶されている。通信設定情報Ａは、ＬＡＮ１２に接続して通信を行うための設定情報であり、認証方式がＩＥＥＥ８０２．１ＸのＥＡＰ−ＴＬＳ方式であることを示す情報や、複合機２０のユーザーＩＤ，認証サーバー７０のサーバーＩＤなどが含まれている。通信設定情報Ｂは、ＬＡＮ１１２に接続して通信を行うための設定情報であり、認証方式がＩＥＥＥ８０２．１ＸのＥＡＰ−ＴＬＳ方式であることを示す情報や、複合機２０のユーザーＩＤ，認証サーバー１７０のサーバーＩＤなどが含まれている。また、通信設定情報領域４０には、クライアント証明書領域４１に記憶されたクライアント証明書や認証処理において取得するサーバー証明書などの信頼性を検証するために用いる図示しないＣＡ証明書（ルートＣＡ証明書及び中間ＣＡ証明書）なども記憶されている。
【００２５】
図３は、クライアント証明書領域４１の説明図である。図示するように、クライアント証明書領域４１には、複合機２０自身を証明するための電子証明書としてクライアント証明書Ａ，Ｂ，Ｃが記憶されている。クライアント証明書Ａは、基本領域，拡張領域，認証局の署名を有している。基本領域には、複合機２０やその利用者などの情報である申請元情報（主体者情報ともいう）や、クライアント証明書Ａを発行した認証局に関する情報である発行者情報、有効期間などが含まれている。申請元情報には、例えば複合機２０やその利用者の所属する国名，会社名，部署名や、複合機２０のＩＰアドレスなどの情報が含まれている。クライアント証明書Ａは、ＬＡＮ１２に接続する際の認証処理において用いられるものであり、ＬＡＮ１２に接続する際に複合機２０を識別するために割り当てられたＩＰアドレスが、申請元情報に含まれている。なお、クライアント証明書の発行を要求するために図示しない認証局に送信するＣＳＲ（証明書署名要求）に予め申請者に関する情報を登録しておくと、発行されたクライアント証明書の申請元情報にはその情報が反映される。そのため、申請元情報にどのような情報を含めるかは、ＣＳＲの作成時に複合機２０の利用者や管理者などが任意に定めることができる。クライアント証明書Ｂ，Ｃについても、構成はクライアント証明書Ａと同様である。なお、クライアント証明書Ｂは、ＬＡＮ１１２に接続する際の認証処理において用いられるものであり、ＬＡＮ１１２に接続する際に複合機２０を識別するために割り当てられたＩＰアドレスが、申請元情報に含まれている。クライアント証明書Ｃは、ＬＡＮ１２，１１２以外の図示しない所定のネットワークに接続する際の認証処理に用いられるものである。また、クライアント証明書領域４１に記憶されているクライアント証明書には、クライアント証明書の用途（認証に用いるプロトコル）などのクライアント証明書に関する情報を含む利用設定情報が対応付けられている。例えば、クライアント証明書Ａには、用途がＬＡＮ１２に接続する際の認証プロトコルであるＩＥＥＥ８０２．１ＸのＥＡＰ−ＴＬＳ方式である旨の情報を含む利用設定情報が対応付けられている。同様に、クライアント証明書Ｂには、用途がＩＥＥＥ８０２．１ＸのＥＡＰ−ＴＬＳ方式である旨の情報を含む利用設定情報が対応付けられ、クライアント証明書Ｃには、用途がＩＰｓｅｃである旨の情報を含む利用設定情報が対応付けられている。なお、クライアント証明書Ａ〜Ｃには、通信設定情報領域４０に記憶されたＣＡ証明書が対応づけられ、証明書チェーンを構成している。
【００２６】
また、コントローラー３０は、機能ブロックとして、通信制御部３４を備えている。通信制御部３４は、通信Ｉ／Ｆ２６を介して接続された他の機器との通信を制御するものである。この通信制御部３４は、クライアント証明書領域４１に記憶されている複数のクライアント証明書のいずれかを用いて例えば認証処理などの通信を行う機能を有する。通信制御部３４は、例えばＬＡＮ１２に接続して通信を行う際には、認証スイッチ６０を介して認証サーバー７０とＩＥＥＥ８０２．１ＸにおけるＥＡＰ−ＴＬＳ方式に従って認証処理を行ったり、認証処理に成功したあとのデータの送受信などを行ったりする。また、通信制御部３４は、クライアント証明書を用いた通信に失敗したときには、失敗時に用いたクライアント証明書以外のクライアント証明書のうち、通信先から取得した情報とクライアント証明書に付された付属情報との一致度が最も高い電子証明書を用いて再度通信を行う機能を有する。通信制御部３４は、通信を行う際に必要に応じて通信設定情報４０を参照する。
【００２７】
このコントローラー３０は、印刷機構２１や読取機構２２からの各種動作信号や各種検出信号を入力したり、操作パネル２３の操作部の操作に応じて発生する操作信号を入力したり、他の機器から送信された各種データを通信Ｉ／Ｆ２６から入力したりする。また、コントローラー３０は、画像を印刷するよう印刷機構２１に指令を出力したり、原稿を読み取るよう読取機構２２に指令を出力したり、操作パネル２３の表示部に表示指令や表示する画像データを出力したり、他の機器に送信する各種データを通信Ｉ／Ｆ２６に出力したりする。
【００２８】
認証サーバー７０は、ＲＡＤＩＵＳサーバーとして構成されており、認証スイッチ６０を介して複合機２０などのクライアントから送信された認証要求を受け付け、クライアントに対してＩＥＥＥ８０２．１ＸにおけるＥＡＰ−ＴＬＳ方式での認証処理を行って認証結果を応答する装置である。認証サーバー７０は、通信Ｉ／Ｆ７４を介してＬＡＮ１２と接続されており、認証処理を行うクライアント認証部７１と、各種プログラムや各種データを記憶する記憶部７３とを備えている。記憶部７３には、ルートＣＡ証明書，中間ＣＡ証明書やクライアントのＩＤなどの認証処理に用いる情報である認証情報７６や、認証サーバー７０自身を証明するためのサーバー７８が記憶されている。
【００２９】
ＬＡＮ１１２は、ＩＥＥＥ８０２．１Ｘの規格に従うネットワークとして構成されており、認証スイッチ１６０を備えている。この認証スイッチ１６０は、通信ポート制御部１６１と、通信機器認証部１６２と、記憶部１６３と、通信インターフェース（Ｉ／Ｆ）１６４とを備えている。記憶部１６３には、認証サーバー情報１６６が記憶されている。認証スイッチ１６０は、認証サーバー７０ではなく認証サーバー１７０とデータのやりとりを行う点以外は認証スイッチ６０と同様の構成である。そのため、認証スイッチ１６０の構成要素には認証スイッチ６０の構成要素の符号に値１００を加えた符号を付して、詳細な説明を省略する。
【００３０】
認証サーバー１７０は、クライアント認証部１７１と、記憶部１７３と、通信Ｉ／Ｆ１７４とを備えている。記憶部１７３には、認証情報１７６やサーバー証明書１７８が記憶されている。この認証サーバー１７０は、認証スイッチ６０ではなく認証スイッチ１６０を介して複合機２０などのクライアントとデータのやりとりを行う点以外は認証サーバー７０と同様の構成である。そのため、認証サーバー１７０の構成要素には認証サーバー７０の構成要素の符号に値１００を加えた符号を付して、詳細な説明を省略する。
【００３１】
次に、こうして構成された本実施形態のネットワークシステム１０の動作、特に、複合機２０がＬＡＮ１２，１１２との間でクライアント証明書を用いた認証処理を行って接続を確立する様子について説明する。図４は、コントローラー３０のＣＰＵ３１によって実行される通信接続確立ルーチンの一例を示すフローチャートである。このルーチンは、フラッシュメモリー３３に記憶され、複合機２０の電源がオンされ且つ複合機２０と認証スイッチ６０又は認証スイッチ１６０とがＬＡＮケーブルなどで接続された状態となったときに実行される。なお、このルーチンは、コントローラー３０のＣＰＵ３１が通信制御部３４の機能を用いて実行する。以下、例として、複合機２０がＬＡＮ１２への接続を確立する様子について説明する。
【００３２】
この通信接続確立ルーチンが実行されると、通信制御部３４は、まず、接続要求としてのＥＡＰＯＬ開始フレームを認証スイッチ６０に送信し（ステップＳ１００）、認証スイッチ６０からの応答であるＥＡＰリクエスト（ＩＤ要求）を受信するのを待つ（ステップＳ１１０）。ＥＡＰリクエスト（ＩＤ要求）を受信すると、複合機２０自身のユーザーＩＤを通信設定情報領域４０の通信設定情報Ａから読み出し、ユーザーＩＤを付した認証要求であるＥＡＰレスポンス（ＩＤ通知）を送信する（ステップＳ１２０）。認証スイッチ６０は、複合機２０から受信したＥＡＰレスポンス（ＩＤ通知）に基づいて生成したＲＡＤＩＵＳアクセスリクエスト（ＩＤ通知）を、ＬＡＮ１２を介して認証サーバー７０に送信する。認証サーバー７０は、ＲＡＤＩＵＳアクセスリクエスト（ＩＤ通知）に含まれるユーザーＩＤを確認し、ＲＡＤＩＵＳアクセスチャレンジ（ＴＬＳ開始）を認証スイッチ６０に送信して、ＴＳＬによるユーザー認証を開始する。認証スイッチ６０は、認証サーバー７０からＲＡＤＩＵＳアクセスチャレンジ（ＴＬＳ開始）を受信すると、複合機２０にＥＡＰリクエスト（ＴＬＳ開始）を送信する。
【００３３】
通信制御部３４は、このＥＡＰリクエスト（ＴＬＳ開始）を認証スイッチ６０から受信するのを待ち（ステップＳ１３０）、受信すると応答として認証スイッチ６０にＥＡＰレスポンス（client_hello）を送信する（ステップＳ１４０）。複合機２０からのＥＡＰレスポンス（client_hello）を受信した認証スイッチ６０は、認証サーバー７０にＲＡＤＩＵＳアクセスリクエスト（レスポンススルー）を送信する。これを受信した認証サーバー７０は、自己を証明するサーバー証明書７８やそれを検証するためのルートＣＡ証明書，中間ＣＡ証明書などの情報を含むＲＡＤＩＵＳアクセスチャレンジ（サーバー証明書）を認証スイッチ６０に送信する。これを受信した認証スイッチ６０は、ＥＡＰリクエスト（リクエストスルー）を複合機２０に送信する。
【００３４】
通信制御部３４は、このＥＡＰリクエスト（リクエストスルー）を認証スイッチ６０から受信するのを待ち（ステップＳ１５０）、受信すると、ＥＡＰリクエスト（リクエストスルー）のＭＡＣフレームに含まれる送信元のＩＰアドレスすなわち認証サーバー７０のＩＰアドレスを取得する（ステップＳ１５５）。そして、ＥＡＰリクエスト（リクエストスルー）に含まれるサーバー証明書の検証処理を行う（ステップＳ１６０）。検証処理では、例えば、サーバー証明書の有効期限が切れていないことや、サーバー証明書の証明書チェーンを確認して、サーバー証明書やそれに対応付けられたルートＣＡ証明書，中間ＣＡ証明書などが信頼できる証明書であることを確認する。
【００３５】
続いて、通信制御部３４は、クライアント証明書領域４１に記憶されたクライアント証明書のうち、送信用証明書に設定されているクライアント証明書を読み出して、読み出したクライアント証明書やそれを検証するためのルートＣＡ証明書，中間ＣＡ証明書などの情報を含むＥＡＰレスポンス（クライアント証明書）を作成する（ステップＳ１７０）。そして、このＥＡＰレスポンス（クライアント証明書）を認証スイッチ６０に送信する（ステップＳ１８０）。このように、本実施形態では、クライアント証明書領域４１に記憶されたクライアント証明書Ａ〜Ｃのうち、送信用証明書に設定されているものを優先して認証処理に用いる。送信用証明書の設定について説明すると、例えば複合機２０が初めてクライアント証明書を用いた通信を行う際には、クライアント証明書領域４１に記憶された電子証明書からユーザーが予め選択したものが送信用証明書として設定される。送信用証明書の設定は例えば認証処理に失敗した際に変更されることがあるが、これについては後述する。
【００３６】
複合機２０からのＥＡＰレスポンス（クライアント証明書）を受信した認証スイッチ６０は、認証サーバー７０にＲＡＤＩＵＳアクセスリクエスト（レスポンススルー）を送信する。認証サーバー７０は、ＲＡＤＩＵＳアクセスリクエスト（レスポンススルー）に含まれる複合機２０のクライアント証明書を検証し、クライアント証明書が信頼できることを確認するとＲＡＤＩＵＳアクセスチャレンジ（暗号化方式）を認証スイッチ６０に送信する。一方、例えばクライアント証明書の有効期限が切れている場合やクライアント証明書に対応付けられたルートＣＡ証明書などの信頼性が確認できない場合など、クライアント証明書に問題があるときには、認証サーバー７０はＦａｉｌｕｒｅ応答を認証スイッチ６０に送信する。認証スイッチ６０は、認証サーバー７０からＲＡＤＩＵＳアクセスチャレンジ（暗号化方式）を受信したときにはＥＡＰリクエスト（リクエストスルー）を複合機２０に送信し、認証サーバー７０からＦａｉｌｕｒｅ応答を受信したときにはＦａｉｌｕｒｅ応答を複合機２０に送信する。
【００３７】
通信制御部３４は、認証スイッチ６０からこのＦａｉｌｕｒｅ応答を受信する（ステップＳ１９０）か又はＥＡＰリクエスト（リクエストスルー）を受信する（ステップＳ２００）まで待つ。そして、ＥＡＰリクエスト（リクエストスルー）を受信すると、認証スイッチ６０からさらにＥＡＰサクセスを受信するのを待ち（ステップＳ２１０）、ＥＡＰサクセスを受信すると、認証スイッチ６０からＥＡＰＯＬキーを受信するのを待つ（ステップＳ２２０）。ＥＡＰＯＬキーを受信すると、これをコントローラー３０のＲＡＭ３２に記憶して（ステップＳ２３０）、本ルーチンを終了する。これにより、複合機２０のＬＡＮ１２への接続が完了し、以降はＥＡＰＯＬキーを用いた暗号通信により認証スイッチ６０やＬＡＮ１２に接続された機器との間でデータのやり取りが可能になる。
【００３８】
一方、ステップＳ１９０で認証スイッチ６０からこのＦａｉｌｕｒｅ応答を受信したとき、すなわちステップＳ１８０で送信したクライアント証明書に問題があり認証処理に失敗したときには、通信制御部３４は、今回の通信接続確立ルーチンの実行中に認証に失敗していないクライアント証明書がクライアント証明書領域４１に記憶されているか否かを判定する（ステップＳ２４０）。例えば、今回の通信接続確立ルーチンにおいて最初にステップＳ１８０の処理を行ったときにクライアント証明書領域４１のクライアント証明書Ｃを用いていたとする。この場合、クライアント証明書Ａ，Ｂはまだ認証に失敗していないので、認証に失敗していないクライアント証明書がクライアント証明書領域４１に記憶されていると判定する。
【００３９】
ステップＳ２４０で、認証に失敗していないクライアント証明書がクライアント証明書領域４１に記憶されているときには、通信制御部３４は、ステップＳ１５５で取得した認証サーバー７０のＩＰアドレスと、認証に失敗していないクライアント証明書の申請元情報に含まれる複合機２０のＩＰアドレスとを比較して、両者の一致度が最も高いクライアント証明書を送信用証明書に設定する（ステップＳ２５０）。ＩＰアドレスの一致度は、例えば次のように判定する。まず、比較する両者のＩＰアドレスについて最上位桁から順に１ビットずつ一致しているか否かを調べていく。そして、最上位桁から連続して一致しているビット数をＩＰアドレスの一致度として導出する。
【００４０】
ステップＳ２５０で送信用証明書を設定すると、通信制御部３４は、ステップＳ１００に進んでＥＡＰＯＬ開始フレームを認証スイッチ６０に送信し、認証処理を再び最初から開始する。これにより、次のステップＳ１７０では、ステップＳ２５０で新たに送信用証明書に設定されたクライアント証明書を用いたＥＡＰレスポンス（クライアント証明書）を作成するから、このクライアント証明書が認証処理に適したものであれば、認証処理が成功することになる。また、ステップＳ２５０では、サーバーのＩＰアドレスと一致度が最も高いＩＰアドレスを有するクライアント証明書を送信用証明書に設定するから、認証処理により適した物を送信用証明書に設定することができる。
【００４１】
一方、ステップＳ２４０で、認証に失敗していないクライアント証明書がクライアント証明書領域４１に記憶されていないとき、すなわち、クライアント証明書領域４１に記憶されたいずれのクライアント証明書を用いても認証処理に失敗したときには、接続確立を中止して（ステップＳ２６０）、本ルーチンを終了する。
【００４２】
ここで、送信用証明書の設定について具体例を用いて説明する。例えば、クライアント証明書Ｃが送信用証明書に設定されている状態で、複合機２０が通信接続確立ルーチンを実行してＬＡＮ１２への接続を試みたとすると、ステップＳ１７０ではクライアント証明書Ｃを含むＥＡＰレスポンス（クライアント証明書）を作成してステップＳ１８０で認証スイッチ６０に送信する。しかし、クライアント証明書ＣはＬＡＮ１２に接続する際に用いられる証明書ではないから、ステップＳ１９０で認証スイッチ６０からＦａｉｌｕｒｅ応答を受信して、認証処理が失敗する。そして、認証処理に失敗したクライアント証明書Ｃ以外に電子証明書Ａ，Ｂがクライアント証明書領域４１に記憶されているから、ステップＳ２４０では認証に失敗していないクライアント証明書があると判定してステップＳ２５０に進む。そして、クライアント証明書Ａ，Ｂの申請元情報に含まれるＩＰアドレスと認証サーバー７０のＩＰアドレスとの一致度をそれぞれ導出して比較する。ここで、クライアント証明書Ａの申請元情報に含まれるＩＰアドレスは、複合機２０がＬＡＮ１２に接続する際のＩＰアドレスであるから、認証スイッチ６０や認証サーバー７０など同じＬＡＮ１２に接続される機器のＩＰアドレスとは下位の数ビットが異なるだけであるなど、クライアント証明書Ｂの申請元情報に含まれるＩＰアドレスに比して、通常は認証サーバー７０のＩＰアドレスにより近い値となる。そのため、クライアント証明書ＡのＩＰアドレスと認証サーバー７０のＩＰアドレスとの一致度が最も高いと判定して、クライアント証明書Ａが送信用証明書に設定される。これにより、再びステップＳ１００に進んで認証処理を行うときには、ＬＡＮ１２に接続する際の適切なクライアント証明書であるクライアント証明書Ａを含むＥＡＰレスポンス（クライアント証明書）をステップＳ１８０で認証スイッチ６０に送信することになり、認証処理が成功する。
【００４３】
なお、認証処理が成功したときには送信用証明書の設定は変更されない。そのため、次回の通信接続確立ルーチンにおける最初のステップＳ１７０では、前回の成功した通信時の送信用証明書であるクライアント証明書Ａを含むＥＡＰレスポンス（クライアント証明書）を作成して認証スイッチ６０に送信することになる。例えば、次回も複合機２０がＬＡＮ１２への接続を試みる場合には、失敗することなく認証処理が成功する。一方、次回に複合機２０がＬＡＮ１１２への接続を試みる場合であっても、最初はクライアント証明書Ａを用いることで認証処理が失敗するが、そのあとクライアント証明書Ｂを送信用証明書に設定して認証処理を成功させることができる。これにより、ユーザーが認証処理を行う毎に適切なクライアント証明書を選択するなどの煩雑な操作を行うことなく、ＬＡＮ１２とＬＡＮ１１２のいずれに対しても認証処理を成功させて接続することができる。
【００４４】
ここで、本実施形態の構成要素と本発明の構成要素との対応関係を明らかにする。本実施形態のフラッシュメモリー３３が本発明の記憶手段に相当し、通信Ｉ／Ｆ２６及び通信制御部３４が通信手段に相当する。また、印刷機構２１が画像形成手段に相当する。なお、本実施形態では、複合機２０の動作を説明することにより本発明の通信方法の一例も明らかにしている。
【００４５】
以上説明した本実施形態の複合機２０によれば、クライアント証明書領域４１に記憶されている複数のクライアント証明書のいずれかを用いて行った通信に失敗したときには、失敗時に用いたクライアント証明書以外のクライアント証明書を用いて再度通信を行う。これにより、複数のクライアント証明書のうちいずれかのクライアント証明書を用いた通信に失敗した場合でもより適切なクライアント証明書を用いて通信を行えるようにすることができる。
【００４６】
また、クライアント証明書を用いた通信に失敗したときには、失敗時に用いたクライアント証明書以外のクライアント証明書のうち、通信先から取得したＩＰアドレスとクライアント証明書の申請元に含まれるＩＰアドレスとの一致度が最も高いクライアント証明書を用いて再度通信を行う。このため、失敗を繰り返すことなくより適切な電子証明書を用いて通信を行える可能性が高くなる。
【００４７】
さらに、クライアント証明書領域４１に記憶されている複数のクライアント証明書のいずれかを用いて通信を行うにあたり、前回の成功した通信時に用いたクライアント証明書を最初に用いる。このため、失敗することなくより適切な電子証明書を用いて通信を行える可能性が高くなる。
【００４８】
なお、本発明は上述した実施形態に何ら限定されることはなく、本発明の技術的範囲に属する限り種々の態様で実施し得ることはいうまでもない。
【００４９】
例えば、上述した実施形態では、ステップＳ１５０で受信したＥＡＰリクエスト（リクエストスルー）に含まれる認証サーバー７０のＩＰアドレスを取得するものとしたが、認証サーバー７０のＩＰアドレスを取得すればよく、他のステップで受信したデータから取得するものとしてもよい。また、通信の通信先から取得した情報であれば、ＩＰアドレスに限られない。例えば、通信先の機器のドメイン名，ホスト名を取得してもよいし、通信先のネットワークのドメイン名を取得してもよい。このような場合、取得した情報と電子証明書に付された付属情報との一致度を導出できるよう、予め電子証明書の申請元情報などに、その電子証明書を用いて通信を行う通信先の機器のドメイン名，ホスト名，ネットワークのドメイン名などを含めておくものとしてもよい。
【００５０】
上述した実施形態では、通信先から取得したＩＰアドレスとクライアント証明書に含まれるＩＰアドレスとの一致度を比較するものとしたが、通信先から取得する情報に限らず、通信の設定に関する情報をフラッシュメモリー３３から取得し、この情報とクライアント証明書に付された付属情報との一致度に基づいて送信用証明書を設定してもよい。例えば、通信に用いる認証方式や複合機２０のＩＤ，通信先の機器のＩＤなどに基づいて送信用証明書を設定してもよい。例えば、通信の設定に関する情報として、通信に用いる認証方式を通信設定情報領域４０から取得するときには、クライアント証明書の利用設定情報に含まれる用途との一致度に基づいて送信用証明書を設定してもよい。あるいは、通信先の機器のＩＤ（サーバーＩＤなど）を通信設定情報領域４０から取得するときには、予めクライアント証明書の申請元情報などに、そのクライアント証明書を用いて通信を行う通信先の機器のＩＤを含めておくものとしてもよい。
【００５１】
上述した実施形態では、クライアント証明書の申請元情報に含まれるＩＰアドレスに基づいて送信用証明書を設定するものとしたが、クライアント証明書に付された付属情報と、通信先から取得した情報又は通信の設定に関する情報の少なくともいずれかを含む環境情報と、に基づいて送信用証明書を設定するものであればよい。例えば、クライアント証明書の発行者情報，有効期間や拡張領域に含まれる情報に基づいて送信用証明書を設定してもよいし、利用設定情報に基づいて送信用証明書を設定してもよい。また、環境情報を取得せずにクライアント証明書に付された付属情報に基づいて送信用証明書を設定してもよい。例えば、有効期間の終了時期が最も遅いクライアント証明書を送信用証明書に設定してもよい。あるいは、クライアント証明書のインストール時期が最も新しいものを送信用証明書に設定してもよい。
【００５２】
上述した実施形態では、ステップＳ２５０でＩＰアドレスの一致度に基づいて送信用証明書を設定するものとしたが、送信用証明書に設定する優先順位が予め定められていてもよい。
【００５３】
上述した実施形態では、比較する両者のＩＰアドレスについて最上位桁から連続して一致しているビット数をＩＰアドレスの一致度として導出するものとしたが、他の方法により一致度を導出してもよい。例えば、比較する両者のＩＰアドレスの差を導出し、差が大きいほど一致度が低いものとしてもよい。
【００５４】
上述した実施形態では、複数の異なるネットワークであるＬＡＮ１２，１１２に接続する際に、認証処理に失敗しても適切に送信証明書を設定する例について説明したが、同じネットワークにおいて複数の異なる認証サーバーが存在する際にも、本発明を適用可能である。例えば、ＬＡＮ１２に接続された認証サーバー７０を認証サーバーに交換する必要がある場合において、認証サーバー７０との認証処理に適したクライアント証明書と、新しい認証サーバーとの認証処理に適したクライアント証明書とを、それぞれクライアント証明書領域４１に記憶しておけば、認証サーバーの交換前後のいずれにおいても、適切なクライアント証明書を用いて認証処理を成功させることができる。例えばＬＡＮ１２に多数のクライアントが接続されている場合において、これらのクライアントに本発明を適用すれば、認証サーバーの交換タイミングに併せて一斉に多数のクライアントの設定変更やクライアント証明書のインストールをする必要がなくなるため本発明を適用する意義が高い。
【００５５】
上述した実施形態では、ステップＳ２５０のあとステップＳ１００に進み最初から認証処理をやり直すものとしたが、ステップＳ１７０に進みＥＡＰレスポンス（クライアント証明書）を作成する処理からやり直すものとしてもよい。
【００５６】
上述した実施形態では、送信用証明書は認証処理のプロトコルに関わらず１つ設定されているものとしたが、認証処理のプロトコル毎や、通信の環境設定毎に送信用証明書を設定するものとしてもよい。例えば、図２において、通信設定情報Ａに対応する送信用証明書と、通信設定情報Ｂに対応する送信用証明書とを別々に設定するものとしてもよい。
【００５７】
上述した実施形態では、ステップＳ２５０の後のステップＳ１００以降の処理でもステップＳ１５５の処理を行うが、これを省略してもよい。
【００５８】
上述した実施形態では、クライアント証明書ＡはＬＡＮ１２に対する接続確立処理の際に用いられるものであり、クライアント証明書ＢはＬＡＮ１１２に対する接続確立処理の際に用いられるものとしたが、１つのクライアント証明書を複数のネットワークの接続や異なる認証プロトコルでの認証処理に用いることができるものとしてもよい。
【００５９】
上述した実施形態では、クライアント証明書領域４１に３つのクライアント証明書が記憶されているものとしたが、複数記憶されているものとすればよく、２つ記憶されていても良いし４つ以上記憶されていてもよい。
【００６０】
上述した実施形態では、複合機２０はＩＥＥＥ８０２．１Ｘに従ってＬＡＮ１２，１１２と接続されるものとしたが、電子証明書を用いた通信を行うものであればよく、例えば他のプロトコルによりＬＡＮ１２，１１２と接続されるものとしてもよい。また、ＬＡＮ１２，１１２に限らず他のネットワークに接続されるものとしてもよいし、ネットワークに接続されず電子証明書を用いて通信先の機器と１対１の通信を行うものであってもよい。
【００６１】
上述した実施形態では、認証サーバー７０はＬＡＮ１２に接続されているものとしたが、例えばＬＡＮ１２にルーターを介して接続されたインターネットに認証サーバーが接続されているなど、複合機２０が接続されるネットワークとは別のネットワークに認証サーバー７０が接続されていてもよい。認証サーバー１７０についても同様である。このような場合、認証スイッチ６０や認証スイッチ１６０のＩＰアドレスを例えばステップＳ１１０で受信するＥＡＰリクエスト（ＩＤ要求）のＭＡＣフレームから取得し、認証処理に失敗したときには、取得した認証スイッチのＩＰアドレスとクライアント証明書の申請元に含まれるＩＰアドレスとの一致度が最も高いクライアント証明書を送信用証明書に設定するものとしてもよい。
【００６２】
上述した実施形態では、通信接続確立ルーチンのステップＳ１９０でＦａｉｌｕｒｅ応答を受信したとき、すなわちクライアント証明書にエラーがある旨の通知を通信先から受信したときに、ステップＳ２４０，Ｓ２５０の処理を行って送信用証明書を設定するものとしたが、これに限られない。例えば、通信接続確立に失敗したときには、失敗理由に関わらずステップＳ２４０，Ｓ２５０の処理を行うものとしてもよい。
【００６３】
上述した実施形態では、クライアント証明書領域４１にはクライアント証明書と利用設定情報とを対応付けて記憶するものとしたが、利用設定情報が対応付けられていないものとしてもよい。
【００６４】
上述した実施形態では、複合機２０と認証スイッチ６０，１６０とは有線で接続されるものとしたが、無線で接続されるものとしてもよい。
【００６５】
上述した実施形態では、印刷機能とスキャン機能とを備える複合機２０として説明したが、電子証明書を用いた通信を行う通信装置であればよい。例えば、印刷機能のみを備えたプリンターに適用するものとしてもよいし、ファクシミリ装置などに適用するものとしてもよいし、パソコンなどのコンピューターに適用するものとしてもよい。
【００６６】
上述した実施形態では、本発明の通信装置及び画像形成装置を複合機２０に具体化した例を用いて説明したが、通信方法の形態とするものとしてもよいし、通信方法の各ステップを１または複数のコンピューターに実現させるためのプログラムの形態とするものとしてもよい。
【符号の説明】
【００６７】
１０  ネットワークシステム、１２  ＬＡＮ、２０  複合機、２１  印刷機構、２２  読取機構、２３  操作パネル、２６  通信インターフェース（Ｉ／Ｆ）、３０  コントローラー、３１  ＣＰＵ、３２  ＲＡＭ、３３  フラッシュメモリー、３４  通信制御部、４０  通信設定情報領域、４１  クライアント証明書領域、６０，１６０  認証スイッチ、６１，１６１  通信ポート制御部、６２，１６２  通信機器認証部、６３，１６３  記憶部、６４，１６４  通信インターフェース（Ｉ／Ｆ）、６６，１６６  認証サーバー情報、７０，１７０  認証サーバー、７１，１７１  クライアント認証部、７３，１７３  記憶部、７４，１７４  通信インターフェース（Ｉ／Ｆ）、７６，１７６  認証情報、７８，１７８  サーバー証明書。
【図１】
2013232826.tif 000003
【図２】
2013232826.tif 000004
【図３】
2013232826.tif 000005
【図４】
2013232826.tif 000006