(57)【要約】【課題】クライアントからサーバへ接続要求を行った後、メッセージの送受信を行うまでの時間を柔軟に制御可能とする。【解決手段】通信先ノードに対して暗号化された接続要求を行い、暗号通信を行う第１暗号通信制御部１３と、第１暗号通信制御部１３による接続要求と並行して、通信先ノードに対して平文による接続要求を行い、接続後に暗号通信を行う第２暗号通信制御部１４と、第１暗号通信制御部１３の接続要求に対する通信先ノードからの応答を受信する前に第２暗号通信制御部１４の接続要求に対する通信先ノードからの応答を受信した場合、第１暗号通信制御部１３の接続要求に対して予め設定されたタイムアウトの時間を変更するタイムアウト制御部１５と、を備える。【選択図】図２
2020057170.tif 000002
【特許請求の範囲】
【請求項１】
通信先ノードに対して暗号化された接続要求を行い、暗号通信を行う第１暗号通信制御部と、
前記第１暗号通信制御部による接続要求と並行して、前記通信先ノードに対して平文による接続要求を行い、接続後に暗号通信を行う第２暗号通信制御部と、
前記第１暗号通信制御部の接続要求に対する前記通信先ノードからの応答を受信する前に前記第２暗号通信制御部の接続要求に対する当該通信先ノードからの応答を受信した場合、当該第１暗号通信制御部の接続要求に対して予め設定されたタイムアウトの時間を変更するタイムアウト制御部と、
を備えることを特徴とする、情報処理装置。
【請求項２】
タイムアウト制御部は、前記第１暗号通信制御部の接続要求に対して設定されたタイムアウトの時間を、前記第２暗号通信制御部の接続要求に対する前記通信先ノードからの応答を受信した時点を基準とする時間に変更することを特徴とする、請求項１に記載の情報処理装置。
【請求項３】
前記第２暗号通信制御部の接続要求に対する応答を受信した後、変更されたタイムアウトの時間に達するまでに前記第１暗号通信制御部の接続要求に対する応答を受信した場合、
当該第１暗号通信制御部は、当該第１暗号通信制御部の接続要求に基づく接続を確立することを特徴とする、請求項２に記載の情報処理装置。
【請求項４】
タイムアウト制御部は、前記第１暗号通信制御部の接続要求に対する前記通信先ノードからの応答を受信する前に前記第２暗号通信制御部の接続要求に対する当該通信先ノードからの応答を受信した場合に、前記第１暗号通信制御部の接続要求に対して設定されたタイムアウトの時間を、初期設定よりも短い時間に変更することを特徴とする、請求項１に記載の情報処理装置。
【請求項５】
アプリケーション・ソフトウェアの制御により実行される通信が暗号通信か平文通信かを判断する判断部をさらに備え、
前記第１暗号通信制御部および前記第２暗号通信制御部は、前記判断部により前記通信が平文通信であると判断された場合に、前記通信先ノードに対する接続要求を並行して実行することを特徴とする、請求項１に記載の情報処理装置。
【請求項６】
前記第１暗号通信制御部および前記第２暗号通信制御部は、当該第１暗号通信制御部による接続要求および当該第２暗号通信制御部による接続要求の何れもタイムアウトとなった場合、前記アプリケーション・ソフトウェアの制御により実行される通信を中断させることを特徴とする、請求項５に記載の情報処理装置。
【請求項７】
コンピュータに、
アプリケーション・ソフトウェアの制御により実行される通信が暗号通信か平文通信かを判断する処理と、
前記通信が平文通信である場合に、通信先ノードに対して暗号化された接続要求を行い、暗号通信を行う第１暗号通信制御による接続要求と、当該通信先ノードに対して平文による接続要求を行い、接続後に暗号通信を行う第２暗号通信制御による接続要求とを並行して行う処理と、
前記第１暗号通信制御による接続要求に対する前記通信先ノードからの応答を受信する前に前記第２暗号通信制御による接続要求に対する当該通信先ノードからの応答を受信した場合、当該第１暗号通信制御による接続要求に対して予め設定されたタイムアウトの時間を変更する処理と、
前記第１暗号通信制御による接続要求に対する前記通信先ノードからの応答を受信した場合は当該第１暗号通信制御による暗号通信を行い、前記第２暗号通信制御による接続要求に対する当該通信先ノードからの応答を受信しかつ当該第１暗号通信制御による接続要求がタイムアウトの時間に達した場合は当該第１暗号通信制御による暗号通信を行う処理と、
を実行させることを特徴とする、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置およびプログラムに関する。
【背景技術】
【０００２】
サーバ・クライアント間の通信において、セキュリティの観点からメッセージを暗号化して送受信することが行われている。下記特許文献１には、平文通信の接続要求に応じ、暗号通信の接続要求と平文通信の接続要求を並行してサーバに送信し、サーバからの応答に応じて暗号通信の接続あるいは平文通信の接続を確立する技術が開示されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１７−２２０８１８号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
サーバ・クライアント間で暗号通信を行うためには、サーバおよびクライアントの双方が同じ暗号通信に対応している必要がある。そして、サーバが暗号通信に対応していない場合、クライアントから暗号通信による接続要求を行った後、サーバからの応答がタイムアウトになるまで、クライアントは次の対応を待たなければならない。
【０００５】
本発明は、単にフォールバックを行う構成と比較して、クライアントからサーバへ接続要求を行った後、メッセージの送受信を行うまでの時間を柔軟に制御可能とすることを目的とする。
【課題を解決するための手段】
【０００６】
請求項１に係る本発明は、
通信先ノードに対して暗号化された接続要求を行い、暗号通信を行う第１暗号通信制御部と、
前記第１暗号通信制御部による接続要求と並行して、前記通信先ノードに対して平文による接続要求を行い、接続後に暗号通信を行う第２暗号通信制御部と、
前記第１暗号通信制御部の接続要求に対する前記通信先ノードからの応答を受信する前に前記第２暗号通信制御部の接続要求に対する当該通信先ノードからの応答を受信した場合、当該第１暗号通信制御部の接続要求に対して予め設定されたタイムアウトの時間を変更するタイムアウト制御部と、
を備えることを特徴とする、情報処理装置である。
請求項２に係る本発明は、
タイムアウト制御部は、前記第１暗号通信制御部の接続要求に対して設定されたタイムアウトの時間を、前記第２暗号通信制御部の接続要求に対する前記通信先ノードからの応答を受信した時点を基準とする時間に変更することを特徴とする、請求項１に記載の情報処理装置である。
請求項３に係る本発明は、
前記第２暗号通信制御部の接続要求に対する応答を受信した後、変更されたタイムアウトの時間に達するまでに前記第１暗号通信制御部の接続要求に対する応答を受信した場合、
当該第１暗号通信制御部は、当該第１暗号通信制御部の接続要求に基づく接続を確立することを特徴とする、請求項２に記載の情報処理装置である。
請求項４に係る本発明は、
タイムアウト制御部は、前記第１暗号通信制御部の接続要求に対する前記通信先ノードからの応答を受信する前に前記第２暗号通信制御部の接続要求に対する当該通信先ノードからの応答を受信した場合に、前記第１暗号通信制御部の接続要求に対して設定されたタイムアウトの時間を、初期設定よりも短い時間に変更することを特徴とする、請求項１に記載の情報処理装置である。
請求項５に係る本発明は、
アプリケーション・ソフトウェアの制御により実行される通信が暗号通信か平文通信かを判断する判断部をさらに備え、
前記第１暗号通信制御部および前記第２暗号通信制御部は、前記判断部により前記通信が平文通信であると判断された場合に、前記通信先ノードに対する接続要求を並行して実行することを特徴とする、請求項１に記載の情報処理装置である。
請求項６に係る本発明は、
アプリケーション・ソフトウェアの制御により実行される通信が暗号通信か平文通信かを判断する判断部をさらに備え、
前記第１暗号通信制御部および前記第２暗号通信制御部は、前記判断部により前記通信が平文通信であると判断された場合に、前記通信先ノードに対する接続要求を並行して実行することを特徴とする、請求項１に記載の情報処理装置である。
請求項７に係る本発明は、
コンピュータに、
アプリケーション・ソフトウェアの制御により実行される通信が暗号通信か平文通信かを判断する処理と、
前記通信が平文通信である場合に、通信先ノードに対して暗号化された接続要求を行い、暗号通信を行う第１暗号通信制御による接続要求と、当該通信先ノードに対して平文による接続要求を行い、接続後に暗号通信を行う第２暗号通信制御による接続要求とを並行して行う処理と、
前記第１暗号通信制御による接続要求に対する前記通信先ノードからの応答を受信する前に前記第２暗号通信制御による接続要求に対する当該通信先ノードからの応答を受信した場合、当該第１暗号通信制御による接続要求に対して予め設定されたタイムアウトの時間を変更する処理と、
前記第１暗号通信制御による接続要求に対する前記通信先ノードからの応答を受信した場合は当該第１暗号通信制御による暗号通信を行い、前記第２暗号通信制御による接続要求に対する当該通信先ノードからの応答を受信しかつ当該第１暗号通信制御による接続要求がタイムアウトの時間に達した場合は当該第１暗号通信制御による暗号通信を行う処理と、
を実行させることを特徴とする、プログラムである。
【発明の効果】
【０００７】
請求項１の発明によれば、単にフォールバックを行う構成と比較して、クライアントからサーバへ接続要求を行った後、メッセージの送受信を行うまでの時間を柔軟に制御することができる。
請求項２の発明によれば、複数の通信手段による接続要求に関して予め設定されたタイムアウトに従う構成と比較して、先に応答を受信した接続要求の受信タイミングに応じて柔軟にタイムアウトの制限時間を設定することができる。
請求項３の発明によれば、常に接続要求に対する応答が先にあった手法で通信を行う構成と比較して、よりセキュリティの高い手法を採用することができる。
請求項４の発明によれば、複数の通信手段による接続要求に関して予め設定されたタイムアウトに従う構成と比較して、各通信手段による接続要求がタイムアウトとなるのを待たずに通信を開始することができる。
請求項５の発明によれば、アプリケーション・ソフトウェア自体による制御に従って通信を行う構成と比較して、アプリケーション・ソフトウェアによる平文通信に対して暗号化手段を適用し、セキュリティを高めることができる。
請求項６の発明によれば、通信先ノードが暗号通信に対応していない場合に平文通信を行う構成と比較して、平文通信を実行させないことによりセキュリティを強化することができる。
請求項７の発明によれば、単にフォールバックを行う構成と比較して、本発明のプログラムを実行するコンピュータにおいて、クライアントからサーバへ接続要求を行った後、メッセージの送受信を行うまでの時間を柔軟に制御することができる。
【図面の簡単な説明】
【０００８】
【図１】本実施形態が適用される情報処理システムの全体構成を示す図である。
【図２】クライアント端末の機能構成を示す図である。
【図３】メール・サーバの機能構成を示す図である。
【図４】クライアント端末における通信時の動作を示すフローチャートである。
【図５】クライアント端末における通信時の動作を示すフローチャートである。
【図６】本実施形態の変形例を示す図である。
【図７】中継サーバの機能構成を示す図である。
【図８】クライアント端末を実現するコンピュータのハードウェア構成例を示す図である。
【発明を実施するための形態】
【０００９】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。本実施形態はネットワークを介して通信を行う情報処理装置において実現され、種々の通信方式に対して適用し得るが、ここでは、電子メールによる通信を行う場合を例として説明する。
【００１０】
＜システム構成＞
図１は、本実施形態が適用される情報処理システムの全体構成を示す図である。情報処理システムは、クライアント端末１０と、メール・サーバ２０とを備える。クライアント端末１０は、図示しない他の情報処理装置との間で電子メールを送受信する情報処理装置である。電子メールは、メール・サーバ２０を介して転送される。したがって、クライアント端末１０は、電子メールを送信する場合、メール・サーバ２０に接続して電子メールを送信する。そして、メール・サーバ２０が、送信先の情報処理装置が接続するメール・サーバへ電子メールを転送する。また、クライアント端末１０は、電子メールを受信する場合、メール・サーバ２０接続し、メール・サーバ２０に蓄積されている電子メールを取得する。すなわち、メール・サーバ２０は、クライアント端末１０が行う電子メールによる通信において、通信先ノードである。
【００１１】
＜クライアント端末の機能構成＞
図２は、クライアント端末１０の機能構成を示す図である。クライアント端末１０は、アプリケーション実行部１１と、判断部１２と、第１暗号通信制御部１３と、第２暗号通信制御部１４と、タイムアウト制御部１５と、通信部１６とを備える。
【００１２】
アプリケーション実行部１１は、アプリケーション・プログラム（ソフトウェア）を実行して各種の処理を実行する処理手段である。アプリケーション実行部１１が実行する処理には、電子メールの送受信が含まれる。アプリケーション実行部１１は、アプリケーション・プログラムにより提供される機能に基づき、電子メール・ソフトウェア（メーラー）を起動させ、メール・サーバ２０に接続する。そして、アプリケーション実行部１１は、宛先を指定して電子メールを送信したり、自装置宛ての電子メールを取得したりする。
【００１３】
判断部１２は、アプリケーション実行部１１が電子メールを送受信する際にメール・サーバ２０に対して行う接続要求を監視し、接続要求が暗号通信により行われているか、平文通信により行われているかを判断する。判断部１２は、アプリケーション実行部１１からメール・サーバ２０への接続要求が平文通信であると判断した場合、アプリケーション実行部１１に通信（接続要求）の動作を中断させる。
【００１４】
第１暗号通信制御部１３は、判断部１２によりアプリケーション実行部１１からメール・サーバ２０への接続要求が平文通信であると判断された場合、第１暗号通信によりメール・サーバ２０に対して接続要求を行い、暗号通信を行う。第１暗号通信とは、通信先ノードであるメール・サーバ２０に対して暗号化された接続要求を行い、接続が確立すると暗号通信を行う通信形式である。第１暗号通信では、通信路が暗号化される。例えば、ｏｖｅｒ  ＳＳＬ（Secure Socket Layer）がある。
【００１５】
第１暗号通信制御部１３による接続動作にはタイムアウトが設定される。タイムアウトは、初期設定として、接続要求を行ってから一定時間が設定される。したがって、第１暗号通信制御部１３がメール・サーバ２０に対して接続要求を行った後、設定されたタイムアウトの制限時間までにメール・サーバ２０から応答がなければタイムアウトとなり、第１暗号通信制御部１３による通信は中止となる。
【００１６】
第２暗号通信制御部１４は、判断部１２によりアプリケーション実行部１１からメール・サーバ２０への接続要求が平文通信であると判断された場合、第１暗号通信制御部１３の接続要求と並行して、第２暗号通信によりメール・サーバ２０に対して接続要求を行い、暗号通信を行う。第２暗号通信とは、通信先ノードであるメール・サーバ２０に対して平文による接続要求を行い、接続が確立した後に暗号通信を行う通信形式である。第２暗号通信では、通信プロトコル内で暗号化が行われる。例えば、ＳＴＡＲＴＴＬＳがある。
【００１７】
第２暗号通信制御部１４による接続動作には、第１暗号通信制御部１３による接続動作と同様に、タイムアウトが設定される。したがって、第２暗号通信制御部１４がメール・サーバ２０に対して接続要求を行った後、設定されたタイムアウトの制限時間までにメール・サーバ２０から応答がなければタイムアウトとなり、第２暗号通信制御部１４による通信は中止となる。
【００１８】
タイムアウト制御部１５は、第１暗号通信制御部１３による接続要求が行われた場合、特定の条件にしたがって、第１暗号通信制御部１３におけるタイムアウトの設定を変更する。タイムアウト制御部１５による具体的な第１暗号通信制御部１３のタイムアウトの制御内容については後述する。
【００１９】
通信部１６は、第１暗号通信制御部１３および第２暗号通信制御部１４がネットワークを介してメール・サーバ２０に接続し、通信を行うためのインターフェイスである。また、通信部１６は、アプリケーション実行部１１からメール・サーバ２０への接続要求が暗号通信であった場合、アプリケーション実行部１１による接続要求および電子メールの通信を行う。
【００２０】
＜メール・サーバの機能構成＞
図３は、メール・サーバ２０の機能構成を示す図である。メール・サーバ２０は、通信部２１と、ＳＭＴＰ通信制御部２２と、ＰＯＰ通信制御部２３と、ＩＭＡＰ通信制御部２４とを備える。なお、特に図示しないが、メール・サーバ２０は、送受信された電子メールを保持する記憶装置を備えている。
【００２１】
通信部２１は、ネットワークを介してクライアント端末１０との間の電子メールの送受信および他のメール・サーバ２０との間の電子メールの送受信を行うためのインターフェイスである。クライアント端末１０からメール・サーバ２０への電子メールの転送および他のメール・サーバ２０との間の電子メールの送受信には、通信プロトコルとしてＳＭＴＰ（Simple Mail Transfer Protocol）が用いられる。また、メール・サーバ１０からクライアント端末１０への電子メールの転送には、通信プロトコルとしてＰＯＰ（Post Office Protocol）やＩＭＡＰ（Internet Message Access Protocol）が用いられる。
【００２２】
ＳＭＴＰ通信制御部２２は、通信プロトコルとしてＳＭＴＰを用いた通信を制御する。ＳＭＴＰ通信制御部２２は、クライアント端末１０からの接続要求を受け付けて、ＳＭＴＰによる通信接続を確立した後、クライアント端末１０から送信された電子メールを受信する。また、ＳＭＴＰ通信制御部２２は、他のメール・サーバ２０との間でＳＭＴＰによる通信接続を確立し、電子メールの送受信を行う。
【００２３】
ＳＭＴＰ通信制御部２２は、少なくとも２種類の暗号通信に対応し得る。一つは、クライアント端末１０の第１暗号通信制御部１３により制御される第１暗号通信である。第１暗号通信としてｏｖｅｒ  ＳＳＬが用いられる場合、ＳＭＴＰ通信制御部２２は、ＳＭＴＰ  ｏｖｅｒ  ＳＳＬ（ＳＭＴＰｓ）による通信制御を行う。暗号通信の他の一つは、クライアント端末１０の第２暗号通信制御部１４により制御される第２暗号通信である。第２暗号通信としてＳＴＡＲＴＴＬＳが用いられる場合、ＳＭＴＰ通信制御部２２は、ＳＭＴＰ  ＳＴＡＲＴＴＬＳによる通信制御を行う。ただし、メール・サーバ２０のＳＭＴＰ通信制御部２２は、必ずしもこれらの暗号通信に対応していなくても良い。いずれか一つの暗号通信にのみ対応していても良いし、何れの暗号通信にも対応していなくても良い。
【００２４】
ＰＯＰ通信制御部２３は、通信プロトコルとしてＰＯＰ３（POP Version 3）を用いた通信を制御する。ＰＯＰ通信制御部２３は、クライアント端末１０からの接続要求を受け付けて、ＰＯＰ３による通信接続を確立した後、クライアント端末１０からの読み出し要求に応じて電子メールを送信する。
【００２５】
ＰＯＰ通信制御部２３は、少なくとも２種類の暗号通信に対応し得る。一つは、クライアント端末１０の第１暗号通信制御部１３により制御される第１暗号通信である。第１暗号通信としてｏｖｅｒ  ＳＳＬが用いられる場合、ＰＯＰ通信制御部２３は、ＰＯＰ３  ｏｖｅｒ  ＳＳＬ（ＰＯＰｓ）による通信制御を行う。暗号通信の他の一つは、クライアント端末１０の第２暗号通信制御部１４により制御される第２暗号通信である。第２暗号通信としてＳＴＡＲＴＴＬＳが用いられる場合、ＰＯＰ通信制御部２３は、ＰＯＰ３  ＳＴＡＲＴＴＬＳによる通信制御を行う。ただし、メール・サーバ２０のＰＯＰ通信制御部２３は、必ずしもこれらの暗号通信に対応していなくても良い。いずれか一つの暗号通信にのみ対応していても良いし、何れの暗号通信にも対応していなくても良い。
【００２６】
ＩＭＡＰ通信制御部２４は、通信プロトコルとしてＩＭＡＰを用いた通信を制御する。ＩＭＡＰ通信制御部２４は、クライアント端末１０からの接続要求を受け付けて、ＩＭＡＰによる通信接続を確立した後、クライアント端末１０からの読み出し要求に応じて電子メールを送信する。
【００２７】
ＩＭＡＰ通信制御部２４は、少なくとも２種類の暗号通信に対応し得る。一つは、クライアント端末１０の第１暗号通信制御部１３により制御される第１暗号通信である。第１暗号通信としてｏｖｅｒ  ＳＳＬが用いられる場合、ＩＭＡＰ通信制御部２４は、ＩＭＡＰ  ｏｖｅｒ  ＳＳＬ（ＩＭＡＰｓ）による通信制御を行う。第２暗号通信としてＳＴＡＲＴＴＬＳが用いられる場合、ＩＭＡＰ通信制御部２４は、ＩＭＡＰ  ＳＴＡＲＴＴＬＳによる通信制御を行う。暗号通信の他の一つは、クライアント端末１０の第２暗号通信制御部１４により制御される第２暗号通信である。ただし、メール・サーバ２０のＩＭＡＰ通信制御部２４は、必ずしもこれらの暗号通信に対応していなくても良い。いずれか一つの暗号通信にのみ対応していても良いし、何れの暗号通信にも対応していなくても良い。
【００２８】
＜第１、第２暗号通信制御部による接続制御＞
クライアント端末１０の第１暗号通信制御部１３および第２暗号通信制御部１４による接続制御について説明する。第１暗号通信制御部１３および第２暗号通信制御部１４は、アプリケーション実行部１１による接続要求が平文で行われた場合に動作する。このとき、第１暗号通信制御部１３および第２暗号通信制御部１４は、並行に動作してそれぞれの暗号通信方式によりメール・サーバ２０に対する接続要求を行う。
【００２９】
ここで、第１暗号通信は、暗号化された接続要求を行う。一方、第２暗号通信は、平文で接続要求を行い、接続が確立した後に暗号通信を行う。そのため、第１暗号通信の方が情報セキュリティにおける安全性が高い。そこで、本実施形態では、第１暗号通信および第２暗号通信の両方で通信が可能な場合は、第１暗号通信を優先する。一方で、第２暗号通信であっても接続が確立した後は暗号通信が行われるため、ある程度の安全性は確保される。そのため、第２暗号通信で接続可能である（接続要求に対するメール・サーバ２０の応答があった）にもかかわらず第１暗号通信での接続が可能か否かが確定するのを待つとすれば、無駄な時間を費やすこととなる。そこで、本実施形態では、第１暗号通信制御部１３による接続要求に対するタイムアウトを制御することにより、第１暗号通信を優先させながら、第２暗号通信で接続可能である場合に、無駄な時間の消費を削減する。
【００３０】
図４および図５は、クライアント端末１０における通信時の動作を示すフローチャートである。ここでは、アプリケーション実行部１１が電子メールを送信する際の動作を例として説明する。クライアント端末１０の判断部１２は、アプリケーション実行部１１によるメール・サーバ２０への接続要求が行われたことを検知すると、その接続要求が平文か否かを判断する（Ｓ４０１、Ｓ４０２）。アプリケーション実行部１１による通信が、例えばｏｖｅｒ  ＳＳＬを用いており、暗号化された接続要求が行われている場合（Ｓ４０２でＮＯ）、判断部１２は、そのまま接続要求をメール・サーバ２０へ送信し、暗号通信で接続を確立させる（Ｓ４０３）。接続が確立すると、アプリケーション実行部１１は、暗号通信により電子メールの通信を行う（Ｓ４０４）。
【００３１】
アプリケーション実行部１１による接続要求が平文で行われている場合（Ｓ４０２でＹＥＳ）、判断部１２は、アプリケーション実行部１１による接続要求を中断させ、第１暗号通信制御部１３および第２暗号通信制御部１４に通知する。そして、第１暗号通信制御部１３および第２暗号通信制御部１４は、それぞれ並行に、メール・サーバ２０に対する接続要求を行う（Ｓ４０５）。
【００３２】
第１暗号通信制御部１３の接続要求に対して、第２暗号通信制御部１４の接続要求に対する応答よりも早くまたは同時にメール・サーバ２０からの応答があった場合（Ｓ４０６でＹＥＳ）、クライアント端末１０は第１暗号通信による接続を選択し（Ｓ４０７）、第１暗号通信制御部１３が第１暗号通信でメール・サーバ２０との間の接続を確立する（Ｓ４０８）。そして、接続が確立すると、アプリケーション実行部１１は、第１暗号通信制御部１３を介して電子メールの通信を行う（Ｓ４０４）。
【００３３】
一方、第１暗号通信制御部１３の接続要求に対する応答よりも早く第２暗号通信制御部１４の接続要求に対するメール・サーバ２０からの応答があった場合（Ｓ４０６でＮＯ、Ｓ４０９でＹＥＳ）、タイムアウト制御部１５が、第１暗号通信制御部１３の接続要求におけるタイムアウトの設定を変更する。具体的には、第１暗号通信制御部１３の接続要求におけるタイムアウトの制限時間は、第２暗号通信制御部１４の接続要求に対するメール・サーバ２０からの応答があったときから一定時間（例えば１秒）とされる。そして、第１暗号通信制御部１３は、第１暗号通信の接続要求に対するメール・サーバ２０の応答を、変更後の制限時間だけ待つ（Ｓ４１０）。
【００３４】
この変更後の制限時間が経過する前に第１暗号通信制御部１３の接続要求に対するメール・サーバ２０からの応答があった場合（Ｓ４１１でＹＥＳ）、クライアント端末１０は第１暗号通信による接続を選択し（Ｓ４１２）、第１暗号通信制御部１３が第１暗号通信でメール・サーバ２０との間の接続を確立する（Ｓ４０８）。そして、接続が確立すると、アプリケーション実行部１１は、第１暗号通信制御部１３を介して電子メールの通信を行う（Ｓ４０４）。
【００３５】
これに対し、第１暗号通信制御部１３の接続要求に対するメール・サーバ２０からの応答を受信することなく変更後の制限時間を経過した場合（Ｓ４１１でＮＯ）、クライアント端末１０は第２暗号通信による接続を選択し（Ｓ４１３）、第２暗号通信制御部１４が第２暗号通信でメール・サーバ２０との間の接続を確立する（Ｓ４１４）。そして、接続が確立すると、アプリケーション実行部１１は、第２暗号通信制御部１４を介して電子メールの通信を行う（Ｓ４０４）。
【００３６】
また、第１暗号通信制御部１３の接続要求および第２暗号通信制御部１４の接続要求の何れもがメール・サーバ２０からの応答を受信することなくタイムアウトとなった場合（Ｓ４０６でＮＯ、Ｓ４０９でＮＯ、Ｓ４１５でＹＥＳ）、第１暗号通信制御部１３および第２暗号通信制御部１４は、通信を切断する。また、判断部１２は、アプリケーション実行部１１による接続要求を再開せずに通信を切断する（Ｓ４１６）。
【００３７】
以上、アプリケーション実行部１１が電子メールを送信する場合の動作を例として説明したが、アプリケーション実行部１１が電子メールを受信する場合においても同様の動作を行って良い。すなわち、クライアント端末１０からメール・サーバ２０に対して接続要求を行う際に、判断部１２、第１暗号通信制御部１３、第２暗号通信制御部１４およびタイムアウト制御部１５による制御が行われる。
【００３８】
＜タイムアウトの制御＞
上記の動作例で説明したように、本実施形態は、第１暗号通信制御部１３の接続要求に対して先にメール・サーバ２０からの応答があった場合には、第１暗号通信で接続を確立し、暗号通信を行う。また、第２暗号通信制御部１４の接続要求に対して先にメール・サーバ２０からの応答があった場合には、第１暗号通信制御部１３の接続要求におけるタイムアウトの制限時間を変更する。そして、変更後の制限時間内に第１暗号通信制御部１３の接続要求に対するメール・サーバ２０からの応答があった場合は、第１暗号通信で接続を確立し、暗号通信を行い、応答がなかった場合は、第２暗号通信で接続を確立し、暗号通信を行う。このようなタイムアウトの制御を行うことにより、第１暗号通信を優先させながら、第２暗号通信で接続可能である場合に、第１暗号通信制御部１３の接続要求に対するタイムアウトの初期設定による制限時間を待つことなく通信を開始することが可能となる。
【００３９】
第１暗号通信制御部１３の接続要求におけるタイムアウトの制御では、初期設定の制限時間が、第１暗号通信制御部１３が接続要求を行ってから一定時間であるのに対し、設定変更後の制限時間が、第２暗号通信制御部１４の接続要求に対する応答があってから一定時間である。ここで、例えば、初期設定の制限時間を３０秒とし、変更後の制限時間を２秒とする。また、第２暗号通信制御部１４の接続要求におけるタイムアウトの制限時間は、第１暗号通信制御部１３の接続要求におけるタイムアウトの初期設定の制限時間と同様の３０秒とする。この場合、どちらの接続要求に対しても応答がなかった場合、第１暗号通信制御部１３および第２暗号通信制御部１４の接続要求が行われてから３０秒後にどちらもタイムアウトとなる。
【００４０】
これに対し、第２暗号通信制御部１４の接続要求に対する応答を受信すると、第１暗号通信制御部１３の接続要求におけるタイムアウトの制限時間が、応答の受信から２秒に設定変更される。例えば、第１暗号通信制御部１３および第２暗号通信制御部１４の接続要求が行われてから１５秒後に第２暗号通信制御部１４の接続要求に対する応答を受信した場合を考える。この場合、第１暗号通信制御部１３の接続要求におけるタイムアウトの変更後の制限時間は、第２暗号通信制御部１４の接続要求に対する応答があってから２秒後であるので、第１暗号通信制御部１３が接続要求を行ってから１７秒に短縮されたことになる。
【００４１】
以上のように、本実施形態では、第２暗号通信制御部１４の接続要求に対する応答があった場合に、第１暗号通信制御部１３の接続要求におけるタイムアウトの制限時間を短縮することにより、接続要求を行ってから通信開始までに要する時間の短縮を図っている。一方、第２暗号通信制御部１４の接続要求に対する応答があった場合に、直ちに第２暗号通信による接続を確立するのではなく、一定時間、第１暗号通信制御部１３の接続要求に対する応答を待ち、その間に第１暗号通信制御部１３の接続要求に対する応答があった場合は第１暗号通信による接続を確立して通信を行うことにより、情報セキュリティにおいてより安全性の高い第１暗号通信を優先させている。
【００４２】
ところで、上記のタイムアウト制御では、第２暗号通信制御部１４の接続要求に対する応答が制限時間の終了間際であった場合、第１暗号通信制御部１３の接続要求におけるタイムアウトの変更後の制限時間が、初期設定の制限時間を超えてしまうことがあり得る。例えば、第１暗号通信制御部１３および第２暗号通信制御部１４の接続要求が行われてから２９秒後に第２暗号通信制御部１４の接続要求に対する応答を受信したものとする。この場合、第１暗号通信制御部１３の接続要求におけるタイムアウトの変更後の制限時間は、第２暗号通信制御部１４の接続要求に対する応答があってから２秒後であるので、第１暗号通信制御部１３が接続要求を行ってから３１秒後となり、初期設定の３０秒を超えてしまう。しかしながら、この場合は、変更後の制限時間の間に第１暗号通信制御部１３の接続要求に対する応答があったならば、より安全性の高い第１暗号通信を行うことができるため、タイムアウトの制限時間の実質的な延長となるとしても、上記のタイムアウト制御を実施する。
【００４３】
＜平文通信の可否＞
図４および図５を参照して説明した動作例では、第１暗号通信制御部１３の接続要求および第２暗号通信制御部１４の接続要求の何れもがタイムアウトとなった場合、通信を切断した。したがって、情報セキュリティにおける安全性の低い平文による通信は行われない。これにより、メール・サーバ２０が第１暗号通信（例えば、ｏｖｅｒ  ＳＳＬ）および第２暗号通信（例えば、ＳＴＡＲＴＴＬＳ）のどちらにも対応していない場合、アプリケーション実行部１１から電子メールの送信を行うことはできない。しかしながら、ユーザや通信の内容によっては、安全性を低下させても通信を行う必要がある場合がある。このような場合、第１暗号通信制御部１３の接続要求および第２暗号通信制御部１４の接続要求の何れもがタイムアウトとなっても通信を切断するのではなく、平文での接続および通信を行うことをユーザが選択できるようにしても良い。
【００４４】
＜変形例＞
図６は、本実施形態の変形例を示す図である。図６に示す情報処理システムは、メール・サーバ２０と、中継サーバ３０と、クライアント端末４０とを備える。メール・サーバ２０は、図１および図３を参照して説明したメール・サーバ２０と同様である。中継サーバ３０は、クライアント端末４０とメール・サーバ２０との間の電子メールの通信を中継する。中継サーバ３０とクライアント端末４０とは、外部から許可なく接続できないＬＡＮ（Local Area Network）等の安全性の高いネットワークで接続されている。クライアント端末４０は、図１および図２を参照して説明したクライアント端末１０と同様に、メール・サーバ２０を介して、他の情報処理装置との間で電子メールを送受信する。
【００４５】
図６に示す変形例において、中継サーバ３０は、クライアント端末４０からメール・サーバ２０への接続要求を監視する。そして、この接続要求が平文で行われている場合、中継サーバ３０は、その接続要求を中断させ、メール・サーバ２０に対し、第１暗号通信および第２暗号通信による接続要求を行う。
【００４６】
図７は、中継サーバ３０の機能構成を示す図である。中継サーバ３０は、通信部３１と、判断部３２と、第１暗号通信制御部３３と、第２暗号通信制御部３４と、タイムアウト制御部３５とを備える。通信部３１は、クライアント端末４０とメール・サーバ２０との間の通信を中継する。
【００４７】
判断部３２、第１暗号通信制御部３３、第２暗号通信制御部３４およびタイムアウト制御部３５は、図２を参照して説明したクライアント端末１０の判断部１２、第１暗号通信制御部１３、第２暗号通信制御部１４およびタイムアウト制御部１５と同様である。すなわち、図６に示す変形例は、図２に示したクライアント端末１０が備える第１暗号通信制御および第２暗号通信制御の機能を、外部装置である中継サーバ３０に移した構成となっている。したがって、判断部３２、第１暗号通信制御部３３、第２暗号通信制御部３４およびタイムアウト制御部３５の動作は、図４および図５を参照して説明した動作と同様である。
【００４８】
中継サーバ３０において第１暗号通信制御および第２暗号通信制御の機能を担当することにより、クライアント端末４０は第１暗号通信制御および第２暗号通信制御の機能を備える必要がない。また、中継サーバ３０が通信を中継する複数のクライアント端末４０に対して暗号通信による通信制御を行い得る。
【００４９】
＜ハードウェア構成例＞
図８は、クライアント端末１０を実現するコンピュータのハードウェア構成例を示す図である。図８に示すコンピュータ２００は、演算手段であるＣＰＵ（Central Processing Unit）２０１と、記憶手段である主記憶装置（メイン・メモリ）２０２および外部記憶装置２０３を備える。ＣＰＵ２０１は、外部記憶装置２０３に格納されたプログラムを主記憶装置２０２に読み込んで実行する。主記憶装置２０２としては、例えばＲＡＭ（Random Access Memory）が用いられる。外部記憶装置２０３としては、例えば磁気ディスク装置やＳＳＤ（Solid State Drive）等が用いられる。また、コンピュータ２００は、表示装置（ディスプレイ）２１０に表示出力を行うための表示機構２０４と、コンピュータ２００のユーザによる入力操作が行われる入力デバイス２０５とを備える。入力デバイス２０５としては、例えばキーボードやマウス等が用いられる。また、コンピュータ２００は、ネットワークに接続するためのネットワーク・インターフェイス２０６を備える。なお、図８に示すコンピュータ２００の構成は一例に過ぎず、本実施形態で用いられるコンピュータは図８の構成例に限定されるものではない。例えば、記憶装置としてフラッシュ・メモリ等の不揮発性メモリやＲＯＭ（Read Only Memory）を備える構成としても良い。
【００５０】
図２に示したクライアント端末１０が図８に示すコンピュータにより実現される場合、アプリケーション実行部１１、判断部１２、第１暗号通信制御部１３、第２暗号通信制御部１４およびタイムアウト制御部１５の各機能は、例えば、ＣＰＵ２０１がプログラムを実行することにより実現される。通信部１６は、例えば、ネットワーク・インターフェイス２０６により実現される。
【００５１】
以上、本発明の実施形態について説明したが、本発明の技術的範囲は上記実施形態には限定されない。例えば、上記の実施形態では、アプリケーション実行部１１が電子メールの通信を行う場合について説明したが、本実施形態は、電子メール以外の通信に対しても適用し得る。すなわち、通信を開始する前の、通信先ノードである装置に対して接続要求を行う際に、判断部１２による判断、第１暗号通信制御部１３および第２暗号通信制御部１４による通信制御、タイムアウト制御部による第１暗号通信制御部１３のタイムアウトの制御等が行われる。その他、本発明の技術思想の範囲から逸脱しない様々な変更や構成の代替は、本発明に含まれる。
【符号の説明】
【００５２】
１０…クライアント端末、１１…アプリケーション実行部、１２…判断部、１３…第１暗号通信制御部、１４…第２暗号通信制御部、１５…タイムアウト制御部、１６…通信部
【図１】
2020057170.tif 000003
【図２】
2020057170.tif 000004
【図３】
2020057170.tif 000005
【図４】
2020057170.tif 000006
【図５】
2020057170.tif 000007
【図６】
2020057170.tif 000008
【図７】
2020057170.tif 000009
【図８】
2020057170.tif 000010