(57)【要約】  コネクション確立要求機能を具備するがコネクション待ち受け機能を具備していない第１端末装置１０が、コネクション待ち受け機能を具備する中継サーバ装置３０に第１コネクション確立要求情報を送信したことを契機として、第１端末装置１０と中継サーバ装置３０との間の第１コネクションを確立する。また、コネクション確立要求機能を具備する第２端末装置２０が、中継サーバ装置３０に第２コネクション確立要求情報を送信したことを契機として、第２端末装置２０と中継サーバ装置３０との間の第２コネクションを確立する。また、第１コネクションに対応する第１端点情報と第１端末装置１０の識別子とが相互に関連付けられて、中継サーバ装置３０の記憶部３０ｇに格納される。
2009019925.tif 000002
【特許請求の範囲】
【請求項１】
コネクションを確立していない他の装置に対してコネクション確立要求情報を送信するコネクション確立要求機能を具備するが、待ち受け状態で他の装置からのコネクション確立要求情報を受信して当該他の装置とコネクションを確立するコネクション待ち受け機能を具備していない第１端末装置と、コネクション確立要求機能を具備する第２端末装置との間の通信方法であって、
（ａ）上記第１端末装置の送信部が、上記コネクション待ち受け機能を具備する中継サーバ装置に対し、第１コネクション確立要求情報を送信したことを契機として、上記中継サーバ装置と上記第１端末装置とが第１コネクションを確立するステップと、
（ｂ）上記中継サーバ装置の通信路端点関連付け部が、識別子と、上記第１コネクションに対応する第１端点情報と、を相互に関連付けて記憶部に格納するステップと、
（ｃ）上記第２端末装置の送信部が、上記中継サーバ装置に対し、第２コネクション確立要求情報を送信したことを契機として、上記中継サーバ装置と上記第２端末装置とが第２コネクションを確立するステップと、
（ｄ）上記第２端末装置の送信部が、上記第２コネクションを通じて、送信情報と上記識別子とを具備する第２要求情報を送信するステップと、
（ｅ）上記中継サーバ装置の受信部が、上記第２コネクションを通じて、上記第２要求情報を受信するステップと、
（ｆ）上記中継サーバ装置の通信路端点検索部が、上記第２要求情報が具備する上記識別子を用いて上記記憶部を検索し、当該識別子に関連付けられている上記第１端点情報を抽出するステップと、
（ｇ）上記中継サーバ装置の送信部が、上記第１要求情報の応答情報として、上記ステップ（ｆ）で抽出された上記第１端点情報に対応する上記第１コネクションを通じて、上記第２要求情報が具備する上記送信情報を送信するステップと、
（ｈ）上記第１端末装置の受信部が、上記第１コネクションを通じて、上記送信情報を受信するステップと、
を有する通信方法。
【請求項２】
請求項１の通信方法であって、
前記識別子は、前記第１端末装置の識別子であり、
（ｉ）上記第１端末装置の送信部が、上記第１コネクションを通じて、当該第１端末装置の識別子を具備する第１要求情報を送信するステップと、
（ｊ）上記中継サーバ装置の受信部が、上記第１コネクションを通じて、上記第１要求情報を受信するステップと、をさらに有し、
上記ステップ（ｉ）及び（ｊ）は、上記ステップ（ａ）と上記ステップ（ｂ）との間に実行されるステップであり、
上記第２要求情報が具備する上記識別子は、上記第２端末装置のユーザインタフェースである入力部に入力された情報によって特定されるものである、
こととする通信方法。
【請求項３】
請求項１の通信方法であって、
上記識別子が、一時的に生成されたランダムな文字列からなる一時識別子である、
こととする通信方法。
【請求項４】
請求項３の通信方法であって、
（ｋ−１）上記中継サーバ装置の一時識別子生成部が上記一時識別子を生成するステップと、
（ｋ−２）上記中継サーバ装置の送信部が、上記一時識別子を上記第１端末装置に送信するステップと、
（ｋ−３）上記第１端末装置のユーザインタフェースである出力部が、上記一時識別子を出力するステップと、
（ｋ−４）上記第２端末装置のユーザインタフェースである入力部が、上記一時識別子の入力を受け付けるステップと、をさらに有し、
上記ステップ（ｋ−１）は、
上記ステップ（ｂ）の前に実行されるステップであり、
上記ステップ（ｂ）は、
上記ステップ（ｋ−１）で生成された上記一時識別子と上記第１端点情報とを相互に関連付けて上記記憶部に格納するステップを含み、
上記第２要求情報が具備する上記識別子は、上記ステップ（ｋ−４）で上記入力部に入力された上記一時識別子である、
こととする通信方法。
【請求項５】
請求項１から４の何れかの通信方法であって、
上記第２要求情報が具備する上記送信情報は、セッション情報を含み、
当該通信方法は、
（ｌ）上記中継サーバ装置の通信路端点関連付け部が、上記第２要求情報が具備する上記セッション情報と、上記第２コネクションに対応する第２端点情報と、を相互に関連付けて上記記憶部に格納するステップと、
（ｍ）上記第１端末装置の送信部が、第１コネクションを通じて、上記セッション情報を含む返信情報を上記中継サーバ装置に送信するステップと、
（ｎ）上記中継サーバ装置の受信部が、第１コネクションを通じて、上記返信情報を受信するステップと、
（ｏ）上記中継サーバ装置の通信路端点検索部が、上記返信情報が具備する上記セッション情報を用いて上記記憶部を検索し、上記セッション情報に関連付けられている上記第２端点情報を抽出するステップと、
（ｐ）上記中継サーバ装置の送信部が、上記第２要求情報の応答情報として、上記ステップ（ｏ）で抽出された上記第２端点情報に対応する上記第２コネクションを通じて、上記返信情報を送信するステップと、
（ｑ）上記第２端末装置の受信部が、上記第２コネクションを通じて、上記返信情報を受信するステップと、
をさらに有し、
上記ステップ（ｌ）は、上記ステップ（ｅ）と上記ステップ（ｇ）との間に実行されるステップであり、
上記ステップ（ｍ）は、上記ステップ（ｈ）と上記ステップ（ｎ）との間に実行されるステップであり、
上記ステップ（ｏ）は、上記ステップ（ｎ）と上記ステップ（ｐ）との間に実行されるステップである、
こととする通信方法。
【請求項６】
請求項１から４の何れかの通信方法であって、
上記第１端末装置は、ユーザ認証を行うユーザ認証装置であり、
上記第２端末装置は、上記第１端末装置と別の筺体に構成されたユーザ装置であり、
上記送信情報は、上記第１端末装置に対する認証要求情報を含み、
当該通信方法は、
（ｒ）上記第１端末装置のユーザインタフェースである入力部が、認証情報の入力を受け付けるステップと、
（ｓ）上記第１端末装置の認証処理部が、上記認証情報を用い、上記第２端末装置を使用するユーザの認証処理を行い、当該認証処理結果を示す認証結果情報を生成するステップと、
（ｍ）上記第１端末装置の送信部が、第１コネクションを通じて、上記認証結果情報を上記中継サーバ装置に送信するステップと、
（ｎ）中継サーバ装置の受信部が、第１コネクションを通じて、上記認証結果情報を受信するステップと、
（ｐ）上記中継サーバ装置の送信部が、上記第２要求情報の応答情報として、上記第２コネクションを通じて、上記認証結果情報を送信するステップと、
（ｑ）上記第２端末装置の受信部が、上記第２コネクションを通じて、上記認証結果情報を受信するステップと、
（ｔ）上記第２端末装置の送信部が、上記認証結果情報を目的サーバ装置に送信するステップと、
（ｕ）目的サーバ装置の受信部が、上記認証結果情報を受信するステップと、
（ｖ）上記返信情報を受信した上記目的サーバ装置の許可部が、上記目的サーバ装置と上記第２端末装置との間でのサービス情報通信を許可するステップと、
をさらに有し、
上記ステップ（ｒ），（ｓ），（ｍ），（ｎ），（ｐ），（ｑ），（ｔ），（ｕ），及び（ｖ）は、上記ステップ（ｈ）の後に実行されるステップである、
こととする通信方法。
【請求項７】
請求項６の通信方法であって、
（ｗ）上記中継サーバ装置の署名生成部が、上記第１端末装置の第１秘密鍵を用い、上記認証結果情報の署名情報を生成し、当該署名情報を出力するステップと、
（ｘ）上記目的サーバ装置の認証結果検証部が、上記第１秘密鍵に対応する第１公開鍵を用いて上記認証結果情報の署名情報を検証し、当該認証結果情報が正当であるか否かを判定し、その判定結果を出力するステップと、をさらに有し、
上記ステップ（ｗ）は、上記ステップ（ｎ）と上記ステップ（ｐ）との間に実行されるステップであり、
上記ステップ（ｐ）は、上記中継サーバ装置の送信部が、上記認証結果情報に加え、その署名情報をさらに上記第２端末装置に送信するステップであり、
上記ステップ（ｑ）は、上記第２端末装置の受信部が、上記認証結果情報に加え、その署名情報をさらに受信するステップであり、
上記ステップ（ｔ）は、上記第２端末装置の送信部が、上記認証結果情報に加え、その署名情報をさらに目的サーバ装置に送信するステップであり、
上記ステップ（ｕ）は、目的サーバ装置の受信部が、上記認証結果情報に加え、その署名情報をさらに受信するステップであり、
上記ステップ（ｘ）は、
上記ステップ（ｕ）と上記ステップ（ｖ）との間に実行されるステップであり、
上記ステップ（ｖ）は、
上記ステップ（ｘ）によって上記認証結果情報が正当であると判定された場合に、上記目的サーバ装置の許可部が、上記目的サーバ装置と上記第２端末装置との間でのサービス情報の通信を許可するステップである、
こととする通信方法。
【請求項８】
請求項１の通信方法であって、
上記第２端末装置は、
コネクション確立要求機能を具備するが、コネクション待ち受け機能を具備していない装置である、
こととする通信方法。
【請求項９】
記憶部と、
第１端末装置から第１コネクション確立要求情報が送信されたことを契機として、当該第１端末装置との第１コネクションを確立するように構成された第１コネクション処理部と、
識別子と、上記第１コネクションに対応する第１端点情報と、を相互に関連付けて上記記憶部に格納するように構成された通信路端点関連付け部と、
第２端末装置から第２コネクション確立要求情報が送信されたことを契機として、当該第２端末装置との第２コネクションを確立するように構成された第２コネクション確立部と、
上記第２コネクションを通じて、送信情報と上記識別子とを具備する第２要求情報を受信するように構成された受信部と、
上記第２要求情報が具備する上記識別子を用いて上記記憶部を検索し、当該識別子に関連付けられている上記第１端点情報を抽出するように構成された通信路端点検索部と、
上記第１要求情報の応答情報として、上記通信路端点検索部で抽出された上記第１端点情報に対応する上記第１コネクションを通じて、上記第２要求情報が具備する上記送信情報を送信するように構成された送信部と、
を有する中継サーバ装置。
【請求項１０】
請求項９の中継サーバ装置であって、
上記識別子が、一時的に生成されたランダムな文字列からなる一時識別子である、
こととする中継サーバ装置。
【請求項１１】
請求項９の中継サーバ装置であって、
上記第２要求情報が具備する上記送信情報は、セッション情報を含み、
上記通信路端点関連付け部が、さらに、上記第２要求情報が具備する上記セッション情報と、上記第２コネクションに対応する第２端点情報と、を相互に関連付けて上記記憶部に格納するように構成され、
上記受信部が、さらに、上記第１コネクションを通じて、上記セッション情報を含む返信情報を受信するように構成され、
上記通信路端点検索部が、さらに、上記返信情報が具備する上記セッション情報を用いて上記記憶部を検索し、上記セッション情報に関連付けられている上記第２端点情報を抽出するように構成され、
上記送信部が、上記第２要求情報の応答情報として、抽出された上記第２端点情報に対応する上記第２コネクションを通じて、上記返信情報を送信するように構成される、
こととする中継サーバ装置。
【請求項１２】
請求項９の中継サーバ装置としてコンピュータを機能させるためのプログラム。
【請求項１３】
請求項１２のプログラムを格納したコンピュータ読み取り可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを通じた通信技術に関し、特に、コネクションを確立していない他の装置に対してコネクション確立要求情報を送信する機能を具備するが、コネクションを確立していない他の装置から送信されたコネクション確立要求情報に対して当該他の装置とコネクションを確立する機能を具備していない装置との通信技術に関する。
【背景技術】
【０００２】
ＨＴＴＰ（Hyper Text Transfer Protocol）は、インターネット通信のプロトコルの一つである（例えば、非特許文献１参照）。
ＨＴＴＰに従った通信では、まず、ＴＣＰ（Transmission Control Protocol）に従い、以下のようにクライアント装置とサーバ装置との間の双方向コネクションを確立する（スリーウェイハンドシェイク）。
１．クライアント装置が待ち受け状態にあるサーバ装置に対してコネクション確立要求情報（SYNパケット）を送信する。
２．サーバ装置がクライアント装置に対し、確認応答情報とクライアント装置に対するコネクション確立要求情報と（ACK+SYNパケット）を送信する。
３．クライアント装置がサーバ装置に対し、確認応答情報（ACKパケット）を送信する。【０００３】
このように確立された双方向のコネクションを通じ、クライアント装置がサーバ装置に要求情報を送信し、サーバ装置がクライアント装置に応答情報を返信する。
【非特許文献１】“RFC 2616  Hypertext Transfer Protocol -- HTTP/1.1”、［online］、［平成20年4月9日検索］、インターネット〈URL：http://www.ietf.org/rfc/rfc2616.txt〉
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかし、このような通信方法の場合、コネクションを確立していない他の装置に対してコネクション確立要求情報を送信するコネクション確立要求機能を具備するが、待ち受け状態で他の装置からのコネクション確立要求情報を受信して当該他の装置とコネクションを確立するコネクション待ち受け機能を具備していない第１端末装置に対し、コネクション確立前の第２端末装置が任意のタイミングで通信を開始することができない。【０００５】
すなわち、従来方法においてコネクション確立前の第２端末装置が任意のタイミングで第１端末装置と通信を行う場合、まず、第２端末装置が第１端末装置にコネクション確立要求情報を送信し、第１端末装置とのコネクションを確立しなければならない。しかし、第１端末装置がコネクション待ち受け機能を具備していない場合、このような処理を行うことができない。このような問題は、ＨＴＴＰに限定される問題ではなく、装置間でコネクションを確立し、確立されたコネクションを用いて装置間通信を行う通信プロトコルに共通する問題である。【０００６】
本発明はこのような点に鑑みてなされたものであり、コネクション確立要求機能を具備するが、コネクション待ち受け機能を具備していない第１端末装置に対し、コネクション確立前の第２端末装置が任意のタイミングで通信を開始することを可能にする技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
本発明では、まず、コネクション確立要求機能を具備するが、コネクション待ち受け機能を具備していない第１端末装置の送信部が、コネクション待ち受け機能を具備する中継サーバ装置に対し、第１コネクション確立要求情報を送信したことを契機として、中継サーバ装置と第１端末装置とが第１コネクションを確立する。次に、中継サーバ装置の通信路端点関連付け部が、識別子と、第１コネクションに対応する第１端点情報と、を相互に関連付けて記憶部に格納する。次に、第２端末装置の送信部が、中継サーバ装置に対し、第２コネクション確立要求情報を送信したことを契機として、中継サーバ装置と第２端末装置とが第２コネクションを確立する。次に、第２端末装置の送信部が、第２コネクションを通じて、送信情報と識別子とを具備する第２要求情報を送信する。中継サーバ装置の受信部は、第２コネクションを通じて、第２要求情報を受信する。中継サーバ装置の通信路端点検索部は、第２要求情報が具備する識別子を用いて記憶部を検索し、当該識別子に関連付けられている第１端点情報を抽出する。そして、中継サーバ装置の送信部が、第１要求情報の応答情報として、第１端点情報に対応する第１コネクションを通じて、第２要求情報が具備する送信情報を送信する。第１端末装置の受信部は、第１コネクションを通じて、送信情報を受信する。
【発明の効果】
【０００８】
本発明では、コネクション確立要求機能を具備するが、コネクション待ち受け機能を具備していない第１端末装置に対し、コネクション確立前の第２端末装置が任意のタイミングで通信を開始することができる。
【図面の簡単な説明】
【０００９】
【図１】図１は、第１の態様に対応する通信システムの構成を例示した概念図である。
【図２】図２は、第２の態様に対応する通信システムの構成を例示した概念図である。
【図３】図３は、第１実施形態の通信システムの全体構成を例示した概念図である。
【図４】図４は、第１実施形態のユーザ認証装置（「第１端末装置」に相当）の詳細構成を例示したブロック図である。
【図５】図５は、第１実施形態のユーザ装置（「第２端末装置」に相当）の詳細構成を例示したブロック図である。
【図６】図６は、第１実施形態の中継サーバ装置の詳細構成を例示したブロック図である。
【図７】図７は、第１実施形態の目的サーバ装置の詳細構成を例示したブロック図である。
【図８】図８は、第１実施形態の通信処理を説明するためのシーケンス図である。
【図９】図９は、第１実施形態の通信処理を説明するためのシーケンス図である。
【図１０】図１０は、第１実施形態の通信処理を説明するためのシーケンス図である。
【図１１】図１１は、第１実施形態の通信処理を説明するためのシーケンス図である。
【図１２】図１２は、第２実施形態の通信システムの全体構成を例示した概念図である。
【図１３】図１３は、第２実施形態の中継サーバ装置の詳細構成を例示したブロック図である。
【図１４】図１４は、第２実施形態の通信処理を説明するためのシーケンス図である。
【図１５】図１５は、第２実施形態の通信処理を説明するためのシーケンス図である。
【図１６】図１６は、第３実施形態の通信システムの全体構成を例示した概念図である。
【図１７】図１７は、第３実施形態のユーザ認証装置（「第１端末装置」に相当）の詳細構成を例示したブロック図である。
【図１８】図１８は、第３実施形態のユーザ装置（「第２端末装置」に相当）の詳細構成を例示したブロック図である。
【図１９】図１９は、第３実施形態の中継サーバ装置の詳細構成を例示したブロック図である。
【図２０】図２０は、第３実施形態の目的サーバ装置の詳細構成を例示したブロック図である。
【図２１】図２１は、第３実施形態の通信処理を説明するためのシーケンス図である。
【図２２】図２２は、第３実施形態の通信処理を説明するためのシーケンス図である。
【図２３】図２３は、第３実施形態の通信処理を説明するためのシーケンス図である。
【図２４】図２４は、第４実施形態の通信システムの全体構成を例示した概念図である。
【図２５】図２５は、第４実施形態のユーザ認証装置（第１端末装置）の詳細構成を例示したブロック図である。
【図２６】図２６は、中継サーバ装置の詳細構成を例示したブロック図である。
【図２７】図２７は、第４実施形態の通信処理を説明するためのシーケンス図である。
【図２８】図２８は、第４実施形態の通信処理を説明するためのシーケンス図である。
【図２９】図２９は、第５実施形態の通信システムの全体構成を例示した概念図である。
【図３０】図３０は、第５実施形態のユーザ認証装置の詳細構成を例示したブロック図である。
【図３１】図３１は、第５実施形態の中継サーバ装置の詳細構成を例示したブロック図である。
【図３２】図３２は、第５実施形態の目的サーバ装置の詳細構成を例示したブロック図である。
【図３３】図３３は、第５実施形態の通信処理を説明するためのシーケンス図である。
【図３４】図３４は、第５実施形態の通信処理を説明するためのシーケンス図である。
【図３５】図３５は、第６実施形態の通信システムの全体構成を例示した概念図である。
【図３６】図３６は、第６実施形態の中継サーバ装置の詳細構成を例示したブロック図である。
【図３７】図３７は、第６実施形態の通信処理を説明するためのシーケンス図である。
【符号の説明】
【００１０】
１，１００，２００，３００，４００，５００，６００，７００：通信システム
１０，１１０：第１端末装置
２０，１２０：第２端末装置
３０，１３０，２３０，３３０，４３０，５３０，６３０，７３０：中継サーバ装置
２１０，４１０，５１０，６１０：ユーザ認証装置（第１端末装置）
２２０，４２０：ユーザ装置（第２端末装置）
ＡＣＫ：確認応答情報
ＡＵＴＲＱ：認証要求情報
ＡＵＴＲＳ：認証結果情報
ＡＵＴ：認証情報
ＣＥＲ：公開鍵証明書
ＩＤ：識別子
ＩＮＤ：入力指示情報
ＰＫ−１：第１公開鍵  
ＰＫ−２：第２公開鍵
ＲＱ−１：第１要求情報  
ＲＱ−２：第２要求情報
ＩＳＡＤＲ：中継サーバ装置宛先情報
ＳＮ−１：第１ソケット番号
ＳＮ−２：第２ソケット番号
ＳＮ−３：第３ソケット番号
ＳＮ−４：第４ソケット番号
ＳＩＤ：セッション情報
ＳＩＧＮ：署名情報
ＳＫ−１：第１秘密鍵
ＩＳＰＮ−０：中継サーバ装置待ち受けポート番号  
ＩＳＰＮ−１：中継サーバ装置側第１ポート番号
ＩＳＰＮ−２：中継サーバ装置側第２ポート番号  
ＩＳＰＮ−４：中継サーバ装置側第４ポート番号
ＳＲＱ：サービス要求情報
ＳＥＲＶ：サービス情報
ＳＹＮ：コネクション確立要求情報
Ｔ−１：第１端点情報
Ｔ−２：第２端点情報
ＴＩＤ：一時識別子
ＴＳＡＤＲ：目的サーバ装置宛先情報  
ＴＳＰＮ−０：目的サーバ装置待ち受けポート番号
ＴＳＰＮ−３：目的サーバ装置側第３ポート番号
ＴＲ：送信情報
ＵＡＤＲ：ユーザ装置宛先情報
ＡＵＴＡＤＲ：ユーザ認証装置宛先情報
ＡＵＴＰＮ−１：ユーザ認証装置側第１ポート番号  
ＡＵＴＰＮ−４：ユーザ認証装置側第４ポート番号
ＡＵＴＩＤ：ユーザ認証装置識別子  
ＵＰＮ−２：ユーザ装置側第２ポート番号
ＵＰＮ−３：ユーザ装置側第３ポート番号
【発明を実施するための最良の形態】
【００１１】
以下、本発明を実施するための最良の形態を図面を参照して説明する。【００１２】
〔基本態様〕
まず、本発明の基本態様について説明する。
＜第１の態様＞
まず、第１の態様の基本構成を例示する。
［第１の態様の基本構成］
図１は、第１の態様に対応する通信システム１の構成を例示した概念図である。
図１に例示するように、通信システム１は、コネクションを確立していない他の装置に対してコネクション確立要求情報を送信するコネクション確立要求機能を具備するが、待ち受け状態で他の装置からのコネクション確立要求情報を受信して当該他の装置とコネクションを確立するコネクション待ち受け機能を具備していない第１端末装置１０と、コネクション確立要求機能を具備する第２端末装置２０と、コネクション待ち受け機能を具備する中継サーバ装置３０とを有する。【００１３】
［第１の態様の基本処理］
次に、第１の態様の基本処理を例示する。
まず、第１端末装置１０の送信部１０ａが、中継サーバ装置３０に対し、第１コネクション確立要求情報を送信したことを契機として、中継サーバ装置３０及び第１端末装置１０の第１コネクション処理部３０ｃ，１０ｃが、中継サーバ装置３０と第１端末装置１０との第１コネクションを確立する。【００１４】
すなわち、まず、第１端末装置１０の送信部１０ａが、中継サーバ装置３０に対し、第１コネクション確立要求情報（SYN）を送信する。次に、中継サーバ装置３０の受信部３０ｂが第１コネクション確立要求情報（SYN）を受信したことを契機として、中継サーバ装置３０の送信部３０ａが確認応答情報（ACK）と第１端末装置１０に対する第１コネクション確立要求情報（SYN）を送信する。次に、第１端末装置１０の受信部１０ｂがこれらの情報を受信したことを契機として、第１端末装置１０の送信部１０ａが確認応答情報（ACK）を中継サーバ装置３０に送信し、中継サーバ装置３０の受信部３０ｂがこの確認応答情報（ACK）を受信する。これらのやりとりを通じ、第１コネクション処理部３０ｃ，１０ｃが、中継サーバ装置３０と第１端末装置１０との第１コネクションを確立する。【００１５】
次に、第１端末装置１０の送信部１０ａが、第１コネクションを通じて、当該第１端末装置１０の識別子（ID）を具備する第１要求情報（RQ-1）を送信し、中継サーバ装置３０の受信部３０ｂが、第１コネクションを通じて、第１要求情報（RQ-1）を受信する。そして、中継サーバ装置３０の通信路端点関連付け部３０ｅが、第１要求情報（RQ-1）が具備する第１端末装置の識別子（ID）と、第１コネクションに対応する第１端点情報（T-1）と、を相互に関連付けて記憶部３０ｇに格納する。【００１６】
次に、第２端末装置２０の送信部２０ａが、中継サーバ装置に対し、第２コネクション確立要求情報を送信したことを契機として、中継サーバ装置３０及び第２端末装置２０の第２コネクション処理部３０ｄ，２０ｃが、中継サーバ装置３０と第２端末装置２０との第２コネクションを確立する。【００１７】
すなわち、まず、第２端末装置２０の送信部２０ａが、中継サーバ装置３０に対し、第２コネクション確立要求情報(SYN)を送信する。次に、中継サーバ装置３０の受信部３０ｂが第２コネクション確立要求情報(SYN)を受信したことを契機として、中継サーバ装置３０の送信部３０ａが確認応答情報（ACK）と第２端末装置２０に対する第２コネクション確立要求情報(SYN)を送信する。次に、第２端末装置２０の受信部２０ｂがこれらの情報を受信したことを契機として、第２端末装置２０の送信部２０ａが確認応答情報（ACK）を中継サーバ装置３０に送信し、中継サーバ装置３０の受信部３０ｂがこの確認応答情報（ACK）を受信する。これらのやりとりを通じ第２コネクション処理部３０ｃ，２０ｃが、中継サーバ装置３０と第２端末装置２０との第２コネクションを確立する。【００１８】
次に、第２端末装置２０の送信部２０ａが、第２コネクションを通じて、送信情報（TR）と第１端末装置の識別子（ID）とを具備する第２要求情報（RQ-2）を送信し、中継サーバ装置３０の受信部３０ｂが、第２コネクションを通じて、第２要求情報（RQ-2）を受信する。そして、中継サーバ装置３０の通信路端点検索部３０ｆが、第２要求情報（RQ-2）が具備する第１端末装置の識別子（ID）を用いて記憶部３０ｇを検索し、当該第１端末装置の識別子（ID）に関連付けられている第１端点情報（T-1）を抽出する。【００１９】
次に、中継サーバ装置３０の送信部３０ａが、第１要求情報の応答情報として、抽出された第１端点情報（T-1）に対応する第１コネクションを通じて、第２要求情報が具備する送信情報（TR）を送信し、第１端末装置１０の受信部１０ｂが、第１コネクションを通じて、送信情報（TR）を受信する。【００２０】
［第１の態様の特徴］
第１の態様では、コネクション確立要求機能を具備するがコネクション待ち受け機能を具備していない第１端末装置１０が、コネクション待ち受け機能を具備する中継サーバ装置３０に第１コネクション確立要求情報を送信したことを契機として、第１端末装置１０と中継サーバ装置３０との間の第１コネクションを確立する。また、コネクション確立要求機能を具備する第２端末装置２０が、コネクション待ち受け機能を具備する中継サーバ装置３０に第２コネクション確立要求情報を送信したことを契機として、第２端末装置２０と中継サーバ装置３０との間の第２コネクションを確立する。また、第１の態様では、第１コネクションに対応する第１端点情報と第１端末装置１０の識別子とを関連付けて、中継サーバ装置３０の記憶部３０ｇに格納しておく。これにより、第２端末装置２０が第２コネクションを通じて識別子を送信し、中継サーバ装置３０が識別子を用いて記憶部３０ｇを検索し、第１コネクションの端点を抽出できる。【００２１】
以上により、第２端末装置２０は、任意のタイミングで、第２端末装置２０→第２コネクション→中継サーバ装置３０→第１コネクション→第１端末装置１０との通信路を確保でき、第１端末装置１０との通信を開始することができる。【００２２】
また、第１端末装置１０の識別子は、第１端末装置１０に固有の固定値であってもよいが、第１端末装置１０の識別子を送信毎にランダムに設定する構成であってもよい。第１端末装置１０の識別子を送信毎にランダムに設定する構成の場合、識別子が第三者に盗聴された場合であっても、その第三者がその識別子を用い、それ以降、半永久的に第１コネクションの端点を不正に抽出し、第１端末装置１０にアクセスできるという事態を回避できる。【００２３】
また、第２要求情報が具備する識別子は、第２端末装置２０のユーザインタフェースである入力部（図示せず）に入力された情報によって特定されるものであることが望ましい。この場合、第１端末装置１０の識別子を特定する情報を知っている利用者が第２端末装置２０を利用している場合にのみ、第２端末装置２０から第１端末装置１０への通信路が確保されることになる。これにより、第１端末装置１０へのアクセス権を管理できる。なお、第２端末装置２０の入力部に入力される第１端末装置１０の識別子を特定する情報の例は、その識別子そのものや、第２端末装置２０内で当該識別子を一義に特定できる識別子以外の情報である。なお、識別子を一義に特定できる識別子以外の情報の一例は、第２端末装置２０内で当該識別子に対応つけられた第１端末装置１０のＵＲＬ（Uniform Resource Locator）等である。【００２４】
＜第２の態様＞
次に、第２の態様の基本構成を例示する。
［第２の態様の基本構成］
図２は、第２の態様に対応する通信システム１００の構成を例示した概念図である。
図２に例示するように、通信システム１００は、コネクション確立要求機能を具備するがコネクション待ち受け機能を具備していない第１端末装置１０と、コネクション確立要求機能を具備する第２端末装置１２０と、コネクション待ち受け機能を具備する中継サーバ装置１３０とを有する。なお、図２において図１と共通する部分については、図１と同じ符号を用いた。【００２５】
［第２の態様の基本処理］
次に、第２の態様の基本処理を例示する。
まず、第１端末装置１０の送信部１０ａが、コネクション待ち受け機能を具備する中継サーバ装置１３０に対し、第１コネクション確立要求情報を送信したことを契機として、中継サーバ装置１３０及び第１端末装置１０の第１コネクション処理部３０ｃ，１０ｃが、中継サーバ装置１３０と第１端末装置１０との第１コネクションを確立する。【００２６】
次に、第１端末装置１０の送信部１０ａが、第１コネクションを通じて、第１要求情報（RQ-1）を送信し、中継サーバ装置１３０の受信部３０ｂが、第１コネクションを通じて、第１要求情報（RQ-1）を受信する。そして、中継サーバ装置１３０の通信路端点関連付け部１３０ｅが、一時的に生成（例えば、一時識別子生成部１３０ｈで生成）されたランダムな文字列からなる一時識別子（TID）と、第１コネクションに対応する第１端点情報（T-1）と、を相互に関連付けて記憶部１３０ｇに格納する。【００２７】
次に、第２端末装置１２０の送信部２０ａが、中継サーバ装置１３０に対し、第２コネクション確立要求情報を送信したことを契機として、中継サーバ装置１３０及び第２端末装置１２０の第２コネクション処理部３０ｄ，２０ｃが、中継サーバ装置１３０と第２端末装置１２０との第２コネクションを確立する。【００２８】
次に、第２端末装置１２０の送信部２０ａが、第２コネクションを通じて、送信情報（TR）と一時識別子（TID）とを具備する第２要求情報（RQ-2）を送信し、中継サーバ装置１３０の受信部３０ｂが、第２コネクションを通じて、第２要求情報（RQ-2）を受信する。そして、中継サーバ装置１３０の通信路端点検索部１３０ｆが、第２要求情報（RQ-2）が具備する一時識別子（TID）を用いて記憶部１３０ｇを検索し、当該一時識別子（TID）に関連付けられている第１端点情報（T-1）を抽出する。【００２９】
次に、中継サーバ装置１３０の送信部３０ａが、第１要求情報の応答情報として、抽出された第１端点情報（T-1）に対応する第１コネクションを通じて、第２要求情報が具備する送信情報（TR）を送信し、第１端末装置１０の受信部１０ｂが、第１コネクションを通じて、送信情報（TR）を受信する。【００３０】
［第２の態様の特徴］
第２の態様では、コネクション確立要求機能を具備するがコネクション待ち受け機能を具備していない第１端末装置１０が、コネクション待ち受け機能を具備する中継サーバ装置１３０に第１コネクション確立要求情報を送信したことを契機として、第１端末装置１０と中継サーバ装置１３０との間の第１コネクションを確立する。また、コネクション確立要求機能を具備する第２端末装置１２０が、コネクション待ち受け機能を具備する中継サーバ装置１３０に第２コネクション確立要求情報を送信したことを契機として、第２端末装置１２０と中継サーバ装置１３０との間の第２コネクションを確立する。また、第２の態様では、第１コネクションに対応する第１端点情報と、一時的にランダムに生成された一時識別子とを関連付けて、中継サーバ装置１３０の記憶部１３０ｇに格納しておく。これにより、第２端末装置１２０が第２コネクションを通じて一時識別子を送信し、中継サーバ装置１３０が一時識別子を用いて記憶部１３０ｇを検索し、第１コネクションの端点を抽出できる。【００３１】
以上により、第２端末装置１２０は、任意のタイミングで、第２端末装置１２０→第２コネクション→中継サーバ装置１３０→第１コネクション→第１端末装置１０との通信路を確保でき、第１端末装置１０との通信を開始することができる。【００３２】
また、第２端末装置１２０から中継サーバ装置１３０に送信される一時識別子は一時的にランダムに生成されたデータである。そのため、一時識別子が第三者に盗聴された場合であっても、その第三者がその一時識別子を用い、それ以降、半永久的に第１コネクションの端点を不正に抽出し、第１端末装置１０にアクセスできるという事態を回避できる。つまり、セキュリティ管理上、一時識別子は、第１端末装置１０の識別子ほど厳重に管理する必要はなく、取扱いが容易なデータである。第２の態様では、セキュリティ管理上取扱いが容易な一時識別子を利用できるため、より広範囲な分野に容易に応用できる。【００３３】
また、中継サーバ装置１３０の送信部３０ａが、一時識別子を第１端末装置１０に送信し、第１端末装置１０のユーザインタフェースである出力部（図示せず）が、一時識別子を出力し、第２端末装置１２０のユーザインタフェースである入力部（図示せず）が、一時識別子の入力を受け付け、第２要求情報がこの一時識別子を含むものとしてもよい。この場合、第１端末装置１０を所持している利用者が第２端末装置１２０を利用している場合にのみ、第２端末装置１２０から第１端末装置１０への通信路が確保されることになる。これにより、第１端末装置１０へのアクセス権を管理できる。【００３４】
〔第１実施形態〕
第１実施形態は、第１の態様をシングルサインオンシステムに適用した実施形態である。以下、第１実施形態について説明する。
＜構成＞
図３は、第１実施形態の通信システム２００の全体構成を例示した概念図である。また、図４は、第１実施形態のユーザ認証装置２１０（「第１端末装置」に相当）の詳細構成を例示したブロック図である。また、図５は、第１実施形態のユーザ装置２２０（「第２端末装置」に相当）の詳細構成を例示したブロック図である。また、図６は、第１実施形態の中継サーバ装置２３０の詳細構成を例示したブロック図である。さらに、図７は、第１実施形態の目的サーバ装置２４０の詳細構成を例示したブロック図である。【００３５】
図３に例示するように、本形態の通信システム２００は、インターネット等のネットワーク２５０を通じて通信可能に構成されたユーザ認証装置２１０とユーザ装置２２０と中継サーバ装置２３０と目的サーバ装置２４０とを有する。なお、図２では、１つずつのユーザ認証装置２１０とユーザ装置２２０と中継サーバ装置２３０と目的サーバ装置２４０のみを図示するが、ユーザ認証装置２１０とユーザ装置２２０と中継サーバ装置２３０と目的サーバ装置２４０の少なくとも１つが、２個以上存在する構成であってもよい。【００３６】
ここで、目的サーバ装置２４０は、ユーザが利用するユーザ装置２２０にサービス情報を提供するサーバ装置である。また、ユーザ認証装置２１０は、ユーザ装置２２０を利用するユーザの認証を行う装置である。ユーザ認証装置２１０で行われたユーザ認証結果は目的サーバ装置２４０に送られ、目的サーバ装置２４０はこれによりユーザを信用し、ユーザ装置２２０にサービス情報を提供する。ユーザ認証装置２１０で行われたユーザ認証結果は、他の目的サーバ装置へも引き継ぐことができ、これにより、ユーザは１度の認証を受けるだけで、複数の目的サーバ装置を利用できる（シングルサインオン）。【００３７】
図４に例示するように、この例のユーザ認証装置２１０は、送信部２１０ａと、受信部２１０ｂと、第１コネクション処理部２１０ｃと、第１ソケット部２１０ｄと、通信処理部２１０ｅと、署名生成部２１０ｆと、認証処理部２１０ｇと、ユーザインタフェースである入力部２１０ｈ及び出力部２１０ｉと、記憶部２１０ｊと、ユーザ認証装置２１０を制御する制御部２１０ｋと、処理過程のデータを逐次格納する一時記憶部２１０ｍとを有する。なお、第１ソケット部２１０ｄは、第１コネクション処理部２１０ｃによって生成される（詳細は後述）。【００３８】
また、この例のユーザ認証装置２１０は、キーボードや入力キーやマウスやタッチパネルなどの入力装置、ディスプレイやスピーカ等の出力装置、ＣＰＵ（Central Processing Unit）、ＲＡＭ（Random Access Memory）、ＲＯＭ（Read Only Memory）等から構成される公知のコンピュータに所定のプログラム（ＯＳ〔Operating System〕やアプリケーションプログラム等）が読み込まれ、ＣＰＵがこれらのプログラムを実行することにより構成される。このようなユーザ認証装置２１０を構成する公知のコンピュータとしては、例えば、パーソナルコンピュータ、ＰＤＡ（Personal Digital Assistant）端末装置、携帯電話端末装置等を例示できる。しかし、本形態では、一例として、移動体通信端末装置である携帯電話端末装置を用い、ユーザ認証装置２１０を構成する例を示す。また、ユーザ認証装置２１０は、上述のコネクション確立要求機能を具備するがコネクション待ち受け機能を具備していない。【００３９】
また、図５に例示するように、この例のユーザ装置２２０は、送信部２２０ａと、受信部２２０ｂと、第２コネクション処理部２２０ｃと、第３コネクション処理部２２０ｄと、第２ソケット部２２０ｅと、第３ソケット部２２０ｆと、通信処理部２２０ｇと、入力部２２０ｈと、出力部２２０ｉと、記憶部２２０ｊと、ユーザ装置２２０を制御する制御部２２０ｋと、処理過程のデータを逐次格納する一時記憶部２２０ｍとを有する。なお、第２ソケット部２２０ｅ及び第３ソケット部２２０ｆは、コネクション確立時に第２コネクション処理部２２０ｃ及び第３コネクション処理部２２０ｄによってそれぞれ生成される（詳細は後述）。【００４０】
また、この例のユーザ装置２２０は、キーボードや入力キーやマウスやタッチパネルなどの入力装置、ディスプレイやスピーカやバイブレーション装置等の出力装置、ＣＰＵ、ＲＡＭ、ＲＯＭ等から構成される公知のコンピュータに所定のプログラム（ＯＳ〔Operating System〕やブラウザーなどのアプリケーションプログラム等）が読み込まれ、ＣＰＵが当該プログラムを実行することにより構成される。このようなユーザ装置２２０を構成する公知のコンピュータとしては、例えば、パーソナルコンピュータ、ＰＤＡ端末装置、携帯電話端末装置等を例示できる。また、ユーザ装置２２０は、上述のコネクション確立要求機能を具備するがコネクション待ち受け機能を具備していない。【００４１】
また、図６に例示するように、この例の中継サーバ装置２３０は、送信部２３０ａと、受信部２３０ｂと、第１コネクション処理部２３０ｃと、第２コネクション処理部２３０ｄと、通信路端点関連付け部２３０ｅと、通信路端点検索部２３０ｆと、記憶部２３０ｇと、通信処理部２３０ｈと、待ち受けソケット部２３０ｉと、第１ソケット部２３０ｊと、第２ソケット部２３０ｋと、中継サーバ装置２３０を制御する制御部２３０ｎと、処理過程のデータを逐次格納する一時記憶部２３０ｐとを有する。なお、第１ソケット部２３０ｊ及び第２ソケット部２３０ｋは、コネクション確立時に生成される第１コネクション処理部２３０ｃ及び第２コネクション処理部２３０ｄによってそれぞれ生成される（詳細は後述）。【００４２】
また、この例の中継サーバ装置２３０は、ＣＰＵ、ＲＡＭ、ＲＯＭ等から構成される公知のコンピュータに所定のプログラムが読み込まれ、ＣＰＵがこれらのプログラムを実行することにより構成される。また、中継サーバ装置２３０を構成する公知のコンピュータとしては、例えば、サーバマシン等を例示できる。また、中継サーバ装置２３０は、上述のコネクション待ち受け機能を具備する。【００４３】
また、図７に例示するように、この例の目的サーバ装置２４０は、送信部２４０ａと、受信部２４０ｂと、第３コネクション処理部２４０ｃと、待ち受けソケット部２４０ｄと、第３ソケット部２４０ｅと、通信処理部２４０ｆと、認証結果検証部２４０ｇと、許可部２４０ｈと、記憶部２４０ｉと、目的サーバ装置２４０を制御する制御部２４０ｊと、処理過程のデータを逐次格納する一時記憶部２４０ｋとを有する。なお、第３ソケット部２４０ｅは、コネクション確立時に生成される第３コネクション処理部２４０ｃによって生成される（詳細は後述）。【００４４】
また、この例の目的サーバ装置２４０は、ＣＰＵ、ＲＡＭ、ＲＯＭ等から構成される公知のコンピュータに所定のプログラムが読み込まれ、ＣＰＵがこれらのプログラムを実行することにより構成される。また、目的サーバ装置２４０を構成する公知のコンピュータとしては、例えば、サーバマシン等を例示できる。また、目的サーバ装置２４０は、上述のコネクション待ち受け機能を具備する。【００４５】
＜処理＞
次に、本形態の処理について説明する。
［前処理］
まず、前処理として、ユーザ認証装置２１０の記憶部２１０ｊに、ユーザ認証装置２１０のアドレスであるユーザ認証装置宛先情報（AUTADR）と、中継サーバ装置２３０のアドレスである中継サーバ装置宛先情報（ISADR）と、中継サーバ装置２３０の待ち受けソケット部２３０ｉに割り当てられたポート番号である中継サーバ装置待ち受けポート番号（ISPN-0）と、公開鍵暗号方式の第１秘密鍵（SK-1）と、ユーザ認証装置２１０の識別子であるユーザ認証装置識別子（AUTID）とが格納される。【００４６】
また、ユーザ装置２２０の記憶部２２０ｊに、ユーザ装置２２０のアドレスであるユーザ装置宛先情報（UADR）と、中継サーバ装置２３０の待ち受けソケット部２３０ｉに割り当てられたポート番号である中継サーバ装置待ち受けポート番号（ISPN-0）と、目的サーバ装置２４０のアドレスである目的サーバ装置宛先情報（TSADR）と、目的サーバ装置２４０の待ち受けソケット部２４０ｄに割り当てられたポート番号である目的サーバ装置待ち受けポート番号（TSPN-0）とが格納される。【００４７】
また、中継サーバ装置２３０の記憶部２３０ｇに、中継サーバ装置２３０のアドレスである中継サーバ装置宛先情報（ISADR）が格納される。
さらに、目的サーバ装置２４０の記憶部２４０ｉに、目的サーバ装置２４０のアドレスである目的サーバ装置宛先情報（TSADR）と、前述の第１秘密鍵（SK-1）に対応する第１公開鍵（PK-1）とが格納される。【００４８】
［通信処理］
図８から図１１は、第１実施形態の通信処理を説明するためのシーケンス図である。以下、これらの図に従い、第１実施形態の通信処理を説明する。
まず、ユーザ認証装置２１０（図４）が立ち上がったこと等を契機として、ユーザ認証装置２１０の送信部２１０ａが、待ち受け状態にある中継サーバ装置２３０に対し、第１コネクション確立要求情報を送信する。そして、これを契機として、中継サーバ装置２３０の第１コネクション処理部２３０ｃとユーザ認証装置２１０の第１コネクション処理部２１０ｃとが、中継サーバ装置２３０とユーザ認証装置２１０との第１コネクションを確立する（ステップＳ１）。
ステップＳ１の処理は、例えば、ＴＣＰに基づく公知のスリーウェイハンドシェイクによって行われる。以下に、ステップＳ１の処理の詳細を例示する。【００４９】
《ステップＳ１の詳細》
まず、ユーザ認証装置２１０（図４）の第１コネクション処理部２１０ｃが、第１ソケット部２１０ｄを生成し、それに割り当てたポート番号であるユーザ認証装置側第１ポート番号（AUTPN-1）を記憶部２１０ｊに格納する。次に、第１コネクション処理部２１０ｃは、ユーザ認証装置宛先情報（AUTADR）と、ユーザ認証装置側第１ポート番号（AUTPN-1）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置待ち受けポート番号（ISPN-0）とを記憶部２１０ｊから読み込み、これらを含む第１コネクション確立要求情報（例えば、SYNパケット）を生成する。生成された第１コネクション確立要求情報は、送信部２１０ａに送られ、送信部２１０ａは、これをネットワーク２５０経由で中継サーバ装置２３０に送信する。【００５０】
第１コネクション確立要求情報は、中継サーバ装置２３０（図６）の受信部２３０ｂで受信され、待ち受けソケット部２３０ｉ経由で、新たに生成された第１コネクション処理部２３０ｃに送られる。第１コネクション処理部２３０ｃは、まず、第１ソケット部２３０ｊを生成し、それに中継サーバ装置側第１ポート番号（ISPN-1）を割り当て、第１ソケット番号（SN-1）を付与する。そして、第１コネクション処理部２３０ｃは、第１ソケット番号（SN-1）と、ユーザ認証装置宛先情報（AUTADR）と、ユーザ認証装置側第１ポート番号（AUTPN-1）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第１ポート番号（ISPN-1）とを相互に関連付け、記憶部２３０ｇに格納する。なお、ソケット番号は、例えば、Ｃ言語におけるソケットファイルディクリプタや、Ｊａｖａ（登録商標）言語におけるOutput Stream オブジェクトのインスタンス番号等である。【００５１】
次に、第１コネクション処理部２３０ｃは、ユーザ認証装置宛先情報（AUTADR）と、ユーザ認証装置側第１ポート番号（AUTPN-1）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第１ポート番号（ISPN-1）とを記憶部２３０ｇから読み込み、これらを含む第１コネクション確立要求情報を生成する。また、第１コネクション処理部２３０ｃは、確認応答情報も生成し、生成した第１コネクション確立要求情報と確認応答情報（例えば、ACK+SYNパケット）とを送信部２３０ａに送る。送信部２３０ａは、これらをネットワーク２５０経由でユーザ認証装置２１０に送信する。【００５２】
第１コネクション確立要求情報と確認応答情報とは、ユーザ認証装置２１０（図４）の受信部２１０ｂで受信され、第１ソケット部２１０ｄ経由で第１コネクション処理部２１０ｃに送られる。第１コネクション処理部２１０ｃは、ユーザ認証装置宛先情報（AUTADR）と、ユーザ認証装置側第１ポート番号（AUTPN-1）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第１ポート番号（ISPN-1）とを相互に関連付け、これらを第１ソケット部２１０ｄに付与された第１ソケット番号（SN-1）に関連付けて記憶部２１０ｊに格納する。【００５３】
最後に、第１コネクション処理部２１０ｃは確認応答情報（例えば、ACKパケット）を生成し、これを送信部２１０ａから中継サーバ装置２３０に送信する。そして、この確認応答情報が中継サーバ装置２３０に受信されることで、中継サーバ装置２３０とユーザ認証装置２１０との第１コネクションが確立する（《ステップＳ１の詳細》の説明終わり）。【００５４】
第１コネクションが確立されると、ユーザ認証装置２１０（図４）の通信処理部２１０ｅが記憶部２１０ｊからユーザ認証装置２１０の識別子であるユーザ認証装置識別子（AUTID）を読み込み、これを第１ソケット部２１０ｄに送る。第１ソケット部２１０ｄは、ユーザ認証装置識別子（AUTID）を送信部２１０ａに送り、送信部２１０ａは、第１コネクションを通じて、当該ユーザ認証装置識別子（AUTID）を具備する第１要求情報（RQ-1）を送信する（ステップＳ２）。送信された第１要求情報（RQ-1）は、第１コネクションを通じて、中継サーバ装置２３０（図６）の受信部２３０ｂに受信される（ステップＳ３）。すなわち、ユーザ認証装置２１０（図４）の送信部２１０ａが、記憶部２１０ｊに格納された第１ソケット番号（SN-1）に対応する、ユーザ認証装置側第１ポート番号（AUTPN-1）（送信元ポート番号）及び中継サーバ装置側第１ポート番号（ISPN-1）（送信先ポート番号）を具備するＴＣＰヘッダと、ユーザ認証装置宛先情報（AUTADR）（送信元アドレス）及び中継サーバ装置宛先情報（ISADR）（送信先アドレス）を具備するIPヘッダと、ユーザ認証装置識別子（AUTID）を具備するペイロード情報とを有する第１要求情報（RQ-1）を、ネットワーク２５０を通じて送信し、当該第１要求情報（RQ-1）は、中継サーバ装置２３０（図６）の受信部２３０ｂで受信される。【００５５】
中継サーバ装置２３０の受信部２３０ｂに受信された第１要求情報（RQ-1）が具備するユーザ認証装置識別子（AUTID）は、第１ソケット部２３０ｊ経由で通信路端点関連付け部２３０ｅに送られる。通信路端点関連付け部２３０ｅは、当該ユーザ認証装置識別子（AUTID）と、第１コネクションに対応する第１ソケット番号（SN-1）（「第１端点情報」に相当）と、を相互に関連付けて記憶部２３０ｇに格納する（ステップＳ４）。【００５６】
次に、ユーザ装置２２０の送信部２２０ａが、待ち受け状態にある目的サーバ装置２４０（図７）に対し、第３コネクション確立要求情報を送信する。これを契機として、目的サーバ装置３４０の第３コネクション処理部２４０ｃと、ユーザ装置２２０の第３コネクション処理部２２０ｄとが、目的サーバ装置２４０とユーザ装置２２０との第３コネクションを確立する（ステップＳ７）。【００５７】
ステップＳ７の処理も、例えば、ステップＳ１と同様に行われる。以下にステップＳ７の詳細を例示する。
《ステップＳ７の詳細》
まず、ユーザ装置２２０（図５）の第３コネクション処理部２２０ｄが、第３ソケット部２２０ｆを生成し、それに割り当てたポート番号であるユーザ装置側第３ポート番号（UPN-3）を記憶部２２０ｊに格納する。次に、第３コネクション処理部２２０ｄは、ユーザ装置宛先情報（UADR）と、ユーザ装置側第３ポート番号（UPN-3）と、目的サーバ装置宛先情報（TSADR）と、目的サーバ装置待ち受けポート番号（TSPN-0）とを記憶部２２０ｊから読み込み、これらを含む第３コネクション確立要求情報（例えば、SYNパケット）を生成する。生成された第３コネクション確立要求情報は、送信部２２０ａに送られ、送信部２２０ａは、これをネットワーク２５０経由で目的サーバ装置２４０に送信する。【００５８】
第３コネクション確立要求情報は、目的サーバ装置２４０（図７）の受信部２４０ｂで受信され、待ち受けソケット部２４０ｄ経由で、新たに生成された第３コネクション処理部２４０ｃに送られる。第３コネクション処理部２４０ｃは、まず、第３ソケット部２４０ｅを生成し、それに目的サーバ装置側第３ポート番号（TSPN-3）を割り当て、第３ソケット番号（SN-3）を付与する。第３コネクション処理部２４０ｃは、第３ソケット番号（SN-3）と、ユーザ装置宛先情報（UADR）と、ユーザ装置側第３ポート番号（UPN-3）と、目的サーバ装置宛先情報（TSADR）と、目的サーバ装置側第３ポート番号（TSPN-3）とを相互に関連付け、記憶部２４０ｉに格納する。【００５９】
次に、第３コネクション処理部２３０ｃは、ユーザ装置宛先情報（UADR）と、ユーザ装置側第３ポート番号（UPN-3）と、目的サーバ装置宛先情報（TSADR）と、目的サーバ装置側第３ポート番号（TSPN-3）とを記憶部２４０ｉから読み込み、これらを含む第３コネクション確立要求情報を生成する。また、第３コネクション処理部２４０ｃは、確認応答情報も生成し、生成した第３コネクション確立要求情報と確認応答情報（例えば、ACK+SYNパケット）とを送信部２４０ａに送る。送信部２４０ａは、これらをネットワーク２５０経由でユーザ装置２２０に送信する。【００６０】
第３コネクション確立要求情報と確認応答情報とは、ユーザ装置２２０（図５）の受信部２２０ｂで受信され、第３ソケット部２２０ｆ経由で第３コネクション処理部２２０ｄに送られる。第３コネクション処理部２２０ｄは、ユーザ装置宛先情報（UADR）と、ユーザ装置側第３ポート番号（UPN-3）と、目的サーバ装置宛先情報（TSADR）と、目的サーバ装置側第３ポート番号（TSPN-3）とを相互に関連付け、これらを第３ソケット部２２０ｆに対応する第３ソケット番号（SN-3）に関連付けて記憶部２２０ｊに格納する。【００６１】
最後に、第３コネクション処理部２２０ｄは確認応答情報（例えば、ACKパケット）を生成し、これを送信部２２０ａから目的サーバ装置２４０に送信する。そして、この確認応答情報が目的サーバ装置２４０に受信されることで、目的サーバ装置２４０とユーザ装置２２０との第３コネクションが確立する（《ステップＳ７の詳細》の説明終わり）。【００６２】
その後、ユーザ装置２２０の通信処理部２２０ｇがログイン要求を第３ソケット部２２０ｆに送り、第３ソケット部２２０ｆは、この情報を送信部２２０ａに送り、送信部２２０ａは、第３コネクションを通じてこの情報を目的サーバ装置２４０に送信する。これに対し、目的サーバ装置２４０の通信処理部２４０ｆは、入力指示情報（IND）を第３ソケット部２４０ｅに送り、第３ソケット部２４０ｅはこの情報を送信部２４０ａに送り、送信部２４０ａは、第３コネクションを通じてこの情報をユーザ装置２２０に送信する（ステップＳ７ａ）。この入力指示情報（IND）は、ユーザ装置２２０の受信部２２０ｂで受信され、これを契機に、ユーザ装置２２０（図５）の出力部２２０ｉから、ユーザ認証装置識別子（AUTID）と中継サーバ装置宛先情報（ISADR）との入力を促す入力指示情報（IND）が出力される（ステップＳ７ｂ）。これに対してユーザは、入力部２２０ｈにユーザ認証装置２１０のユーザ認証装置識別子（AUTID）と、中継サーバ装置２３０の中継サーバ装置宛先情報（ISADR）とを入力し、これらは通信処理部２２０ｇによって記憶部２２０ｊに格納される（ステップＳ７ｃ）。一例として、ユーザは、入力部２２０ｈに「https://sasso.jp/abe」と入力する。ここで、「https://sasso.jp」の部分が中継サーバ装置宛先情報（ISADR）であり、「abe」の部分がユーザ認証装置識別子（AUTID）である。【００６３】
次に、ユーザ装置２２０（図５）の通信処理部２２０ｇが、記憶部２２０ｊから中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）とを読み込み、これらをサービス要求情報（SRQ）とともに第３ソケット部２２０ｆに送る。第３ソケット部２２０ｆは、これらの情報を送信部２２０ａに送り、送信部２２０ａは、第３コネクションを通じてこれらの情報を目的サーバ装置２４０に送信する（ステップＳ８）。送信されたこれらの情報は、第３コネクションを通じて、目的サーバ装置２４０（図７）の受信部２４０ｂに受信される（ステップＳ９）。すなわち、ユーザ装置２２０（図５）の送信部２２０ａが、記憶部２２０ｊに格納された第３ソケット番号（SN-3）に対応する、ユーザ装置側第３ポート番号（UPN-3）（送信元ポート番号）及び目的サーバ装置側第３ポート番号（TSPN-3）（送信先ポート番号）を具備するＴＣＰヘッダと、ユーザ装置宛先情報（UADR）（送信元アドレス）及び目的サーバ装置宛先情報（TSADR）（送信先アドレス）を具備するIPヘッダと、中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）とサービス要求情報（SRQ）を具備するペイロード情報とを有する情報を、ネットワーク２５０を通じて送信し、当該情報は、目的サーバ装置２４０（図７）の受信部２４０ｂで受信される。【００６４】
受信された情報が具備する中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）とサービス要求情報（SRQ）は、第３ソケット部２４０ｅ経由で通信処理部２４０ｆに送られる。通信処理部２４０ｆは、中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）とを記憶部２４０ｉに格納するとともに、サービス要求情報（SRQ）に対応するセッション情報（SID）を生成し、当該サービス要求情報（SRQ）とセッション情報（SID）とを相互関連付けて記憶部２４０ｉに格納する（ステップＳ１０）。【００６５】
次に、通信処理部２４０ｆは、記憶部２４０ｉから、中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）とを読み込み、これを認証要求情報（AUTRQ）とともに第３ソケット部２４０ｅに送る。第３ソケット部２４０ｅは、これらの情報を送信部２４０ａに送る。送信部２４０ａは、それらの情報を、ステップＳ８で送信された情報の応答情報として、第３コネクションを通じ、ユーザ装置２２０（図５）に送信する（ステップＳ１１）。送信されたこれらの情報は、第３コネクションを通じて、ユーザ装置２２０の受信部２２０ｂで受信される（ステップＳ１２）。すなわち、目的サーバ装置２４０（図７）の送信部２４０ａが、記憶部２４０ｉに格納された第３ソケット番号（SN-3）に対応する、ユーザ装置側第３ポート番号（UPN-3）（送信先ポート番号）及び目的サーバ装置側第３ポート番号（TSPN-3）（送信元ポート番号）を具備するＴＣＰヘッダと、ユーザ装置宛先情報（UADR）（送信先アドレス）及び目的サーバ装置宛先情報（TSADR）（送信元アドレス）を具備するＩＰヘッダと、中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）と認証要求情報（AUTRQ）を具備するペイロード情報とを有する情報を、ネットワーク２５０を通じて送信し、当該情報は、ユーザ装置２２０（図５）の受信部２２０ｂで受信される。【００６６】
受信された情報が具備する中継サーバ装置宛先情報（ISADR）とユーザ認証装置識別子（AUTID）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）と認証要求情報（AUTRQ）とは、第３ソケット部２２０ｆ経由で通信処理部２２０ｇに送られ、そこから記憶部２２０ｊに格納される。【００６７】
次に、ユーザ装置２２０の送信部２２０ａが、待ち受け状態にある中継サーバ装置２３０（図６）に対し、第２コネクション確立要求情報を送信する。これを契機として、中継サーバ装置２３０の第２コネクション処理部２３０ｄと、ユーザ装置２２０の第２コネクション処理部２２０ｃとが、中継サーバ装置２３０とユーザ装置２２０との第２コネクションを確立する（ステップＳ１３）。【００６８】
ステップＳ１３の処理も、例えば、ステップＳ１と同様に行われる。以下にステップＳ１３の詳細を例示する。
《ステップＳ１３の詳細》
まず、ユーザ装置２２０（図５）の第２コネクション処理部２２０ｃが、第２ソケット部２２０ｅを生成し、それに割り当てたポート番号であるユーザ装置側第２ポート番号（UPN-2）を記憶部２２０ｊに格納する。次に、第２コネクション処理部２２０ｃは、ユーザ装置宛先情報（UADR）と、ユーザ装置側第２ポート番号（UPN-2）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置待ち受けポート番号（ISPN-0）とを記憶部２２０ｊから読み込み、これらを含む第２コネクション確立要求情報（例えば、SYNパケット）を生成する。生成された第２コネクション確立要求情報は、送信部２２０ａに送られ、送信部２２０ａは、これをネットワーク２５０経由で中継サーバ装置２３０に送信する。【００６９】
第２コネクション確立要求情報は、中継サーバ装置２３０（図６）の受信部２３０ｂで受信され、待ち受けソケット部２３０ｉ経由で、新たに生成された第２コネクション処理部２３０ｄに送られる。第２コネクション処理部２３０ｄは、まず、第２ソケット部２３０ｋを生成し、それに中継サーバ装置側第２ポート番号（ISPN-2）を割り当て、第２ソケット番号（SN-2）を付与する。第２コネクション処理部２３０ｄは、第２ソケット番号（SN-2）と、ユーザ装置宛先情報（UADR）と、ユーザ装置側第２ポート番号（UPN-2）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第２ポート番号（ISPN-2）とを相互に関連付け、記憶部２３０ｇに格納する。【００７０】
次に、第２コネクション処理部２３０ｄは、ユーザ装置宛先情報（UADR）と、ユーザ装置側第２ポート番号（UPN-2）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第２ポート番号 （ISPN-2）とを記憶部２３０ｇから読み込み、これらを含む第２コネクション確立要求情報を生成する。また、第２コネクション処理部２３０ｄは、確認応答情報も生成し、生成した第２コネクション確立要求情報と確認応答情報（例えば、ACK+SYNパケット）とを送信部２３０ａに送る。送信部２３０ａは、これらをネットワーク２５０経由でユーザ装置２２０に送信する。【００７１】
第２コネクション確立要求情報と確認応答情報とは、ユーザ装置２２０（図５）の受信部２２０ｂで受信され、第２ソケット部２２０ｅ経由で第２コネクション処理部２２０ｄに送られる。第２コネクション処理部２２０ｃは、ユーザ装置宛先情報（UADR）と、ユーザ装置側第２ポート番号（UPN-2）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第２ポート番号 （ISPN-2）とを相互に関連付け、これらを第２ソケット部２２０ｅに対応する第２ソケット番号（SN-2）に関連付けて記憶部２２０ｊに格納する。【００７２】
最後に、第２コネクション処理部２２０ｃは確認応答情報（例えば、ACKパケット）を生成し、これを送信部２２０ａから中継サーバ装置２３０に送信する。そして、この確認応答情報が中継サーバ装置２３０に受信されることで、中継サーバ装置２３０とユーザ装置２２０との第２コネクションが確立する（《ステップＳ１３の詳細》の説明終わり）。【００７３】
次に、ユーザ装置２２０（図５）の通信処理部２２０ｇが、記憶部２２０ｊからユーザ認証装置識別子（AUTID）（「第１端末装置の識別子」に相当）と認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（「送信情報」に相当）とを読み込み、これらを第２ソケット部２２０ｅに送る。第２ソケット部２２０ｅは、これらの情報を含む第２要求情報（RQ-2）を送信部２２０ａに送り、送信部２２０ａは、第２コネクションを通じて第２要求情報（RQ-2）を中継サーバ装置２３０に送信する（ステップＳ１４）。送信されたこれらの第２要求情報（RQ-2）は、第２コネクションを通じて、中継サーバ装置２３０（図６）の受信部２３０ｂに受信される（ステップＳ１５）。すなわち、ユーザ装置２２０（図５）の送信部２２０ａが、記憶部２２０ｊに格納された第２ソケット番号（SN-2）に対応する、ユーザ装置側第２ポート番号（UPN-2）（送信元ポート番号）及び中継サーバ装置側第２ポート番号 （ISPN-2）（送信先ポート番号）を具備するTCPヘッダと、ユーザ装置宛先情報（UADR）（送信元アドレス）及び中継サーバ装置宛先情報（ISADR）（送信先アドレス）を具備するＩＰヘッダと、ユーザ認証装置識別子（AUTID）と認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）を具備するペイロード情報とを有する第２要求情報（RQ-2）を、ネットワーク２５０を通じて送信し、当該第２要求情報（RQ-2）は、中継サーバ装置２３０（図６）の受信部２３０ｂで受信される。【００７４】
受信された第２要求情報（RQ-2）が具備するユーザ認証装置識別子（AUTID）と認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）とは、第２ソケット部２３０ｋ経由で通信処理部２３０ｈに送られ、通信処理部２３０ｈは、これらを記憶部２３０ｇに格納する。【００７５】
次に、通信路端点検索部２３０ｆが、記憶部２３０ｇから、第２要求情報（RQ-2）が具備するユーザ認証装置識別子（AUTID）を読み込み、このユーザ認証装置識別子（AUTID）と同じユーザ認証装置識別子（AUTID）に関連付けられている第１ソケット番号（SN-1）（「第１端点情報」に相当）を記憶部２３０ｇから検索し、抽出する（ステップＳ１６）。抽出された第１ソケット番号（SN-1）は通信処理部２３０ｈに送られる。なお、ステップＳ１６の処理によって第１ソケット番号（SN-1）を抽出しなければならないのは、ステップＳ１からＳ４までの中継サーバ装置２３０の処理とステップＳ１３以降の中継サーバ装置２３０の処理とが、別のスレッド又はプロセスで実行されているからである。【００７６】
次に、中継サーバ装置２３０の通信処理部２３０ｈが、記憶部２３０ｇから認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）とを読み込み、これらをステップＳ１６で抽出された第１ソケット番号（SN-1）に対応する第１ソケット部２３０ｊに送る。第１ソケット部２３０ｊは、認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（「送信情報」に相当）を送信部２３０ａに送る。送信部２３０ａは、ステップＳ２で送信された情報の応答情報として、第１コネクションを通じ、当該送信情報を送信する（ステップＳ１７）。当該送信情報は、第１コネクションを通じて、ユーザ認証装置２１０（図４）の受信部２１０ｂに受信される（ステップＳ１８）。すなわち、中継サーバ装置２３０（図６）の送信部２３０ａが、ステップＳ１６で抽出された第１ソケット番号（SN-1）に対応する、ユーザ認証装置側第１ポート番号（AUTPN-1）（送信先ポート番号）及び中継サーバ装置側第１ポート番号（ISPN-1）（送信元ポート番号）を具備するＴＣＰヘッダと、ユーザ認証装置宛先情報（AUTADR）（送信先アドレス）及び中継サーバ装置宛先情報（ISADR）（送信元アドレス）を具備するＩＰヘッダと、認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）を具備するペイロード情報とを有する情報を、ネットワーク２５０を通じて送信し、当該情報はユーザ認証装置２１０（図４）の受信部２１０ｂで受信される。【００７７】
受信された情報が具備する認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）は、第１ソケット部２１０ｄ経由で通信処理部２１０ｅに送られる。通信処理部２１０ｅは、認証要求情報（AUTRQ）を認証処理部２１０ｇに送り、目的サーバ装置宛先情報（TSADR）とセッション情報（SID）を記憶部２１０ｊに格納する。【００７８】
認証要求情報（AUTRQ）が送信された通信処理部２１０ｅは、ユーザインタフェースである出力部２１０ｉから入力指示情報（IND）を出力させる（ステップＳ１９）。なお、「入力指示情報（IND）」とは、ユーザ認証に必要な「認証情報」の入力をユーザに促す指示情報である。本形態の例では、ユーザの認証を行うか否かの選択情報の入力を指示する情報を「入力指示情報（IND）」として出力する。なお、入力指示情報（IND）は、画像、動画、音声、バイブレーション等どのようなものであってもよい。例えば、「認証結果を送ってもよろしいですか？」とのメッセージと「はい」及び「いいえ」のボタン表示とを有する画像、及び、アラーム音が、入力指示情報（IND）として出力される。【００７９】
出力された入力指示情報（IND）を知覚したユーザは、ユーザインタフェースであるユーザ認証装置２１０の入力部２１０ｈへ認証情報（AUT）を入力する（ステップＳ２０）。本形態の例の「認証情報（AUT）」は、ユーザの認証を行うか否かの選択情報である。例えば、入力指示情報（IND）が「認証結果を送ってもよろしいですか？」とのメッセージと「はい」及び「いいえ」のボタン表示とを有する画像、及び、アラーム音であった場合、ユーザは、入力部２１０ｈを用い、「はい」のボタン表示又は「いいえ」のボタン表示の何れかを選択し、その選択情報を認証情報（AUT）として入力する。【００８０】
入力部２１０ｈに入力された認証情報（AUT）は、認証処理部２１０ｇに送られる。本形態の例の認証処理部２１０ｇは、認証情報（AUT）が「ユーザの認証を行う旨の選択情報」であることを条件に、ユーザの認証が成功である旨の認証結果情報（AUTRS）（「返信情報」に相当）を生成し、当該認証結果情報（AUTRS）を記憶部２１０ｊに格納する（ステップＳ２１）。これは、ユーザがユーザ認証装置２１０の入力部２１０ｈに情報を入力できる環境にいる（例えば、当該ユーザがユーザ認証装置２１０を所持している）ということを根拠に、当該ユーザが正当なユーザであることを認証していることになる。次に、署名生成部２１０ｆが、記憶部２１０ｊから第１秘密鍵（SK-1）と認証結果情報（AUTRS）とを読み込み、認証結果情報（AUTRS）を含む情報を、公開鍵暗号方式により第１秘密鍵（SK-1）を用いて暗号化した署名情報（SIGN）（認証結果情報（AUTRS）の署名情報）を生成し、当該署名情報（SIGN）を記憶部２１０ｊに格納する（ステップＳ２２）。【００８１】
次に、通信処理部２１０ｅが、記憶部２１０ｊから認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（「返信情報」に相当）を読み込み、これを第１ソケット部２１０ｄに送る。第１ソケット部２１０ｄは、これらの情報を送信部２１０ａに送り、送信部２１０ａは、第１コネクションを通じて、当該返信情報を送信する（ステップＳ２３）。送信された当該返信情報は、第１コネクションを通じて、中継サーバ装置２３０（図６）の受信部２３０ｂに受信される（ステップＳ２４）。受信された認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）は、第１ソケット部２３０ｊ経由で通信処理部２３０ｈに送られ、通信処理部２３０ｈは、これらを記憶部２３０ｇに格納する。【００８２】
次に、中継サーバ装置２３０の通信処理部２３０ｈは、記憶部２３０ｇから、認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）を読み込み、それらを第２ソケット部２３０ｋに送る。なお、通信処理部２３０ｈが第２ソケット部２３０ｋを特定できるのは、ステップＳ１３からＳ２９までの中継サーバ装置２３０の処理が同一のスレッドで実行されおり、その間、ステップＳ１３で確立した第２コネクションの第２ソケット番号（SN-2）が一時記憶部２３０ｐに格納されているからである。第２ソケット部２３０ｋは、認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（「送信情報」に相当）を送信部２３０ａに送る。送信部２３０ａは、ステップＳ１４で送信された情報の応答情報として、第２コネクションを通じ、当該送信情報を送信する（ステップＳ２５）。当該送信情報は、第２コネクションを通じて、ユーザ装置２２０（図５）の受信部２２０ｂに受信される（ステップＳ２６）。すなわち、中継サーバ装置２３０（図６）の送信部２３０ａが、記憶部２３０ｇに格納された第２ソケット番号（SN-2）に対応する、ユーザ装置側第２ポート番号（UPN-2）（送信先ポート番号）及び中継サーバ装置側第２ポート番号 （ISPN-2）（送信元ポート番号）を具備するＴＣＰヘッダと、ユーザ装置宛先情報（UADR）（送信先アドレス）及び中継サーバ装置宛先情報（ISADR）（送信元アドレス）を具備するＩＰヘッダと、認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）を具備するペイロード情報とを有する情報を、ネットワーク２５０を通じて送信し、当該情報は、ユーザ装置２２０（図５）の受信部２２０ｂで受信される。受信された情報が具備する認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）とは、第２ソケット部２２０ｅ経由で通信処理部２２０ｇに送られ、通信処理部２２０ｇは、これらを記憶部２２０ｊに格納する。【００８３】
また、ユーザ認証装置２１０の第１コネクション処理部２１０ｃと中継サーバ装置２３０の第１コネクション処理部２３０ｃとが、例えばＴＣＰに基づく処理によって、第１コネクションを開放する（ステップＳ２７）。これにより、第１ソケット部２１０ｄ，２３０ｊが削除され、記憶部２１０ｊ，２３０ｇから第１ソケット番号（SN-1）及びそれに関連付けられた情報が削除される。また、中継サーバ装置２３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されているユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）との関連付けを解除する（ステップＳ２８）。さらに、ユーザ装置２２０の第２コネクション処理部２２０ｃと中継サーバ装置２３０の第２コネクション処理部２３０ｄとが、例えばＴＣＰに基づく処理によって、第２コネクションを開放する（ステップＳ２９）。これにより、第２ソケット部２２０ｅ，２３０ｋが削除され、記憶部２２０ｊ，２３０ｇから第２ソケット番号（SN-2）及びそれに関連付けられた情報が削除される。【００８４】
次に、ユーザ装置２２０（図５）の通信処理部２２０ｇが、記憶部２２０ｊから認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）とを読み込む。そして、通信処理部２２０ｇは、認証結果情報（AUTRS）と署名情報（SIGN）とセッション情報（SID）とを、目的サーバ装置宛先情報（TSADR）に対応する第３コネクションの第３ソケット部２２０ｆに送る。第３ソケット部２２０ｆは、これらの情報を送信部２２０ａに送り、送信部２２０ａは、第３コネクションを通じてこれらの情報を目的サーバ装置２４０に送信する（ステップＳ３０）。なお、通信処理部２２０ｇが第３ソケット部２２０ｆを特定できるのは、ステップＳ７からＳ３０までのユーザ装置２２０の処理が同一のスレッドで実行されおり、その間、ステップＳ７で確立した第３コネクションの情報が一時記憶部２２０ｍに格納されているからである。送信されたこれらの情報は、第３コネクションを通じて、目的サーバ装置２４０（図７）の受信部２４０ｂに受信される（ステップＳ３１）。受信されたこれらの情報は、第３ソケット部２４０ｅ経由で通信処理部２４０ｆに送られ、通信処理部２４０ｆは、これらの認証結果情報（AUTRS）と署名情報（SIGN）とセッション情報（SID）とを記憶部２４０ｉに格納する。【００８５】
次に、認証結果検証部２４０ｇが、記憶部２４０ｉから第１公開鍵（PK-1）と認証結果情報（AUTRS）と署名情報（SIGN）とを読み込み、第１公開鍵（PK-1）を用いて署名情報（SIGN）を復号し、復号結果と認証結果情報（AUTRS）とを比較する。認証結果検証部２４０ｇは、この比較によって署名情報（SIGN）を検証して認証結果情報（AUTRS）の正当性を判定し、その判定結果を出力する（ステップＳ３２）。この判定結果は許可部２４０ｈに入力される。ここで、この判定結果が、認証結果情報（AUTRS）が正当でない旨の判定結果（検証不合格）であった場合（ステップＳ３３）、許可部２４０ｈはユーザ装置２２０のログインを拒否する（ステップＳ３４）。【００８６】
一方、この判定結果が、認証結果情報（AUTRS）が正当である旨の判定結果（検証合格）であった場合（ステップＳ３３）、許可部２４０ｈはユーザ装置２２０のログインを許可し（ステップＳ３５）、目的サーバ装置２４０とユーザ装置２２０との間でのサービス情報（SERV）の通信を許可する。【００８７】
サービス情報（SERV）の通信が許可された場合、通信処理部２４０ｆは、記憶部２４０ｉから、ステップＳ３１で受信されたセッション情報（SID）と同一のセッション情報（SID）に関連付けられているサービス要求情報（SRQ）を読み込む。そして、通信処理部２４０ｆは、当該サービス要求情報（SRQ）によって特定されるサービス要求に対応するサービス情報（SERV）を特定する。このサービス情報（SERV）は、第３ソケット部２４０ｅ経由で送信部２４０ａに送られ、送信部２４０ａは、特定されたサービス情報（SERV）を、ステップＳ３０で送信された情報の応答情報として、第３コネクションを通じ、ユーザ装置２２０に送信する（ステップＳ３６）。【００８８】
その後、ユーザ装置２２０の第３コネクション処理部２２０ｄと目的サーバ装置２４０の第３コネクション処理部２４０ｃとが、例えばＴＣＰに基づく処理によって、第３コネクションを開放する（ステップＳ３７）。これにより、第３ソケット部２２０ｆ，２４０ｅが削除され、記憶部２２０ｊ，２４０ｉから第３ソケット番号（SN-3）及びそれに関連付けられた情報が削除される。【００８９】
＜本形態の特徴＞
本形態では、コネクション待ち受け機能を具備する中継サーバ装置２３０を設け、ユーザ認証装置２１０が中継サーバ装置２３０に対し、第１コネクション確立要求情報を送信したことを契機として、中継サーバ装置２３０とユーザ認証装置２１０との第１コネクションを確立し、中継サーバ装置２３０が、ユーザ認証装置識別子（AUTID）と第１コネクションに対応する第１ソケット番号（SN-1）とを関連付けて記憶部２３０ｇに格納する。その後、ユーザ装置２２０は、任意のタイミングで、中継サーバ装置２３０に対して第２コネクション確立要求情報を送信し、それを契機として、中継サーバ装置２３０及びユーザ装置２２０が、中継サーバ装置２３０とユーザ装置２２０との第２コネクションを確立する。これにより、ユーザ装置２２０は、任意のタイミングで、コネクション待ち受け機能を具備していないユーザ認証装置２１０までの通信路（ユーザ装置２２０→第２コネクション→中継サーバ装置２３０→第１コネクション→ユーザ認証装置２１０）を確保でき、情報を送信できる。【００９０】
また、同様にユーザ装置２２０からユーザ認証装置２１０までの通信路も確保できるため、ユーザ装置２２０は、任意のタイミングで、コネクション待ち受け機能を具備していないユーザ認証装置２１０に情報を送信し、その応答情報を受け取ることができる。なお、このような処理においてユーザ装置２２０にコネクション待ち受け機能は不要である。【００９１】
また、本形態の場合、ユーザ装置２２０側のインタフェースを標準仕様（例えば、OASIS SAML等）に合わせ、ユーザ認証装置２１０の仕様を携帯電話の仕様に合わせ、それらの仕様の違いを変換する機能（フォーマット変換機能）を中継サーバ装置２３０に持たせることもできる。
また、本形態の場合、ユーザは、ネットワーク２５０を利用することなく、ユーザ認識処理に必要な認証情報（AUT）をユーザ認証装置２１０に提示できる。そのため、認証情報（AUT）がネットワーク２５０上の第三者に盗聴されることはない。
また、ユーザ認証処理をユーザ認証装置２１０が行い、その認証結果を目的サーバ装置２４０が利用することでシングルサインオン機能を実現できる。【００９２】
さらに、ユーザ認証装置２１０は、ユーザ装置２２０と別の筺体に構成されている。そのため、ユーザ認証装置２１０を所持するユーザは、任意の装置をユーザ装置２２０として利用することができる。
また、本形態では、ユーザがユーザ認証装置２１０のユーザインタフェースを介して入力指示情報（IND）の知覚と認証情報（AUT）の入力ができることを根拠に、ユーザの正当性を確認できる。そのため、パスワード等の煩雑な個人認証処理を行うことなく、ユーザの正当性を確認できる。【００９３】
また、本形態のステップＳ７ｃでは、ユーザが入力部２２０ｈにユーザ認証装置２１０のユーザ認証装置識別子（AUTID）そのものを入力し、本形態のステップＳ８では、そのユーザ認証装置識別子（AUTID）を目的サーバ装置２４０に送信することとした。しかし、ユーザ認証装置２１０の記憶部２１０ｊに、ユーザ認証装置識別子（AUTID）とそれを特定する情報（URL等）とを対応付けて格納しておき、ステップＳ７ｃにおいて、ユーザが入力部２２０ｈにユーザ認証装置識別子（AUTID）を特定する情報を入力し、ステップＳ８において、当該入力情報に対応付けられているユーザ認証装置識別子（AUTID）を目的サーバ装置２４０に送信することとしてもよい。この場合、ユーザ認証装置識別子（AUTID）を特定する情報のビット長は、そのユーザ認証装置識別子（AUTID）のビット長よりも短いことが望ましい。この場合、利用者の利便性と安全性との両立が可能となる。つまり、ユーザ認証装置識別子（AUTID）を特定する情報のビット長が短いほど、利用者はそれを用意に取り扱うことができ、ユーザ認証装置識別子（AUTID）のビット長が長いほど安全性が向上する。この変形例では、ユーザ認証装置識別子（AUTID）とそれを特定する情報とを対応付けてユーザ認証装置２１０に格納しておくことにより、それらの長所を両立できる。【００９４】
〔第２実施形態〕
第２実施形態は、第１実施形態の変形例である。本形態の第１実施形態との相違点は、本形態の場合、コネクションを確立し、情報要求を送信し、その応答情報が返された時点でコネクションが解放される点（HTTPなど）と、この場合であっても第２コネクションの端点を検出できるように、中継サーバ装置がセッション情報（SID）と第２ソケット番号（SN-2）とを関連付けて記憶部に格納しておく点である。以下では、第１実施形態との相違点を中心に説明し、第１実施形態と共通する事項については説明を省略する。【００９５】
＜構成＞
図１２は、第２実施形態の通信システム３００の全体構成を例示した概念図である。また、図１３は、第２実施形態の中継サーバ装置３３０の詳細構成を例示したブロック図である。なお、図１２及び図１３において第１実施形態と共通する部分については、第１実施形態と同じ符号を用いた。【００９６】
図１２に例示するように、本形態の通信システム３００と第１実施形態の通信システム２００との相違点は、中継サーバ装置２３０が中継サーバ装置３３０に置換された点である。また、図１３に例示するように、本形態の中継サーバ装置３３０と第１実施形態の中継サーバ装置２３０との相違点は、通信路端点関連付け部２３０ｅが通信路端点関連付け部３３０ｅに置換され、通信路端点検索部２３０ｆが通信路端点検索部３３０ｆに置換された点である。【００９７】
＜処理＞
次に、本形態の処理について説明する。
［前処理］
第１実施形態と同じであるため説明を省略する。
［通信処理］
図１４及び図１５は、第２実施形態の通信処理を説明するためのシーケンス図である。以下、これらの図に従い、第２実施形態の通信処理を説明する。【００９８】
まず、第１実施形態のステップＳ１と同様な処理により、ユーザ認証装置２１０と中継サーバ装置３３０とが第１コネクションを確立し、ステップＳ２〜Ｓ４と同じ処理を実行する。次に、ステップＳ７と同じ処理により、ユーザ装置２２０と目的サーバ装置２４０とが第３コネクションを確立し、ステップＳ７ａと同じ処理を実行して第３コネクションが解放する（ステップＳ１００）。これを契機に、ステップＳ７ｂ〜Ｓ７ｃと同じ処理が実行され、さらに、ステップＳ７と同じ処理により、ユーザ装置２２０と目的サーバ装置２４０とが第３コネクションを確立し、ステップＳ８〜Ｓ１２と同じ処理を実行する。その後、ユーザ装置２２０と目的サーバ装置２４０とが第３コネクションを開放する（ステップＳ１０１）。次に、第１実施形態のステップＳ１３と同じ処理により、ユーザ装置２２０と中継サーバ装置３３０とが第２コネクションを確立し、ステップＳ１４及びＳ１５と同じ処理を実行する。【００９９】
次に、中継サーバ装置３３０の通信路端点関連付け部３３０ｅが、ステップＳ１５で受信された第２要求情報（RQ-2）が具備するセッション情報（SID）と、第２コネクションに対応する第２ソケット部２３０ｋの第２ソケット番号（SN-2）（「第２端点情報」に相当）とを相互に関連付けて記憶部２３０ｇに格納する（ステップＳ１０２）。【０１００】
次に、第１実施形態のステップＳ１６〜Ｓ１８の処理を実行し、その後、ユーザ認証装置２１０と中継サーバ装置３３０とが第１コネクションを開放する（ステップＳ１０３）。そして、中継サーバ装置３３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されているユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）との関連付けを解除する（ステップＳ１０４）。さらに、ユーザ認証装置２１０は、第１実施形態のステップＳ１９〜Ｓ２２と同じ処理を実行する。【０１０１】
その後、第１実施形態のステップＳ１と同様な処理により、ユーザ認証装置２１０と中継サーバ装置３３０とが第１コネクションを確立し、ステップＳ２３及びＳ２４と同じ処理を実行する。【０１０２】
次に、中継サーバ装置３３０の通信路端点検索部３３０ｆが、前述の返信情報（認証結果情報（AUTRS）と署名情報（SIGN）と目的サーバ装置宛先情報とセッション情報（SID））が具備するセッション情報（SID）を用いて記憶部２３０ｇを検索し、当該返信情報が具備するセッション情報（SID）と同じセッション情報（SID）に関連付けられている第２ソケット番号（SN-2）（「第２端点情報」に相当）を抽出する（ステップＳ１０８）。なお、ステップＳ１０８の処理によってセッション情報（SID）に関連付けられている第２ソケット番号（SN-2）を抽出しなければならないのは、第２コネクションを確立したステップＳ１３の中継サーバ装置２３０の処理と、この第２コネクションを用いる以下のステップＳ１０９の処理とが、別のスレッド又はプロセスで実行されているからである。【０１０３】
次に、中継サーバ装置３３０の通信処理部２３０ｈは、記憶部２３０ｇから、返信情報を読み込み、それらをステップＳ１０８で抽出された第２ソケット番号（SN-2）に対応する第２ソケット部２３０ｋに送る。第２ソケット部２３０ｋは、返信情報を送信部２３０ａに送り、送信部２３０ａは、ステップＳ１４で送信された情報の応答情報として、第２コネクションを通じ、当該送信情報を送信する（ステップＳ１０９）。当該送信情報は、第２コネクションを通じて、ユーザ装置２２０の受信部２２０ｂに受信される（ステップＳ１１０）。【０１０４】
その後、ユーザ装置２２０と中継サーバ装置３３０とが第２コネクションを開放し（ステップＳ１１１）、ユーザ認証装置２１０と中継サーバ装置３３０とが第１コネクションを開放し（ステップＳ１１２）、中継サーバ装置３３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されているセッション情報（SID）と第２ソケット番号（SN-2）との関連付けを解除する（ステップＳ１１３）。
次に、第１実施形態のステップＳ７と同じ処理により、ユーザ装置２２０と目的サーバ装置２４０とが第３コネクションを確立し、ステップＳ３０〜Ｓ３７の処理を実行する。【０１０５】
＜本形態の特徴＞
本形態では、コネクションを確立し、情報要求を送信し、その応答情報が返された時点でコネクションが解放されるＨＴＴＰやＨＴＴＰＳのようなプロトコルに従って通信処理が行われる。この場合、ステップＳ１３で中継サーバ装置３３０がユーザ装置２２０と第２コネクションを確立するスレッド（又はプロセス）と、中継サーバ装置３３０がユーザ認証装置２１０との２回目の第１コネクションを確立して実行するステップＳ１０９のスレッド（又はプロセス）とは、別のスレッド（又はプロセス）となる。この場合通常であれば、中継サーバ装置３３０は、ステップＳ１０９の処理に際し、別のスレッド（又はプロセス）で確立された第２コネクションに対応する第２ソケット番号（SN-2）を知ることはできない。【０１０６】
しかし、本形態では、中継サーバ装置３３０においてセッション情報（SID）と第２コネクションの第２ソケット番号（SN-2）とを相互に関連付けて記憶部２３０ｇに格納し（ステップＳ１０２）、ステップＳ１０９を実行する前に、返信情報が具備するセッション情報（SID）を用いて記憶部２３０ｇを検索し、当該返信情報が具備するセッション情報（SID）と同じセッション情報（SID）に関連付けられている第２ソケット番号（SN-2）を抽出する（ステップＳ１０８）こととした。これにより、中継サーバ装置３３０は、ステップＳ１０９の処理に際し、別のスレッド（又はプロセス）で確立された第２コネクションに対応する第２ソケット番号（SN-2）を知ることができ、第２コネクションを利用して応答情報をユーザ装置２２０に送信することができる。【０１０７】
その他の特徴は、第１実施形態と同様である。
〔第３実施形態〕
第３実施形態は、第２の態様をシングルサインオンシステムに適用した実施形態である。以下、第３実施形態について説明する。
＜構成＞
図１６は、第３実施形態の通信システム４００の全体構成を例示した概念図である。また、図１７は、第３実施形態のユーザ認証装置４１０（「第１端末装置」に相当）の詳細構成を例示したブロック図である。また、図１８は、第３実施形態のユーザ装置４２０（「第２端末装置」に相当）の詳細構成を例示したブロック図である。また、図１９は、第３実施形態の中継サーバ装置４３０の詳細構成を例示したブロック図である。さらに、図２０は、第３実施形態の目的サーバ装置４４０の詳細構成を例示したブロック図である。【０１０８】
図１６に例示するように、本形態の通信システム４００は、ネットワーク２５０を通じて通信可能に構成されたユーザ認証装置４１０とユーザ装置４２０と中継サーバ装置４３０と目的サーバ装置４４０とを有する。なお、図１６では、１つずつのユーザ認証装置４１０とユーザ装置４２０と中継サーバ装置４３０と目的サーバ装置４４０のみを図示するが、ユーザ認証装置４１０とユーザ装置４２０と中継サーバ装置４３０と目的サーバ装置４４０の少なくとも１つが、２個以上存在する構成であってもよい。【０１０９】
図１７に例示するように、本形態のユーザ認証装置４１０と第１実施形態のユーザ認証装置２１０との相違点は、出力部２１０ｉを出力部４１０ｉに置換した点である。また、図１８に例示するように、本形態のユーザ装置４２０と第１実施形態のユーザ装置２２０との相違点は、入力部２２０ｈが入力部４２０ｈに置換した点である。また、図１９に例示するように、本形態の中継サーバ装置４３０と第１実施形態の中継サーバ装置２３０との相違点は、一時識別子生成部４３０ｑをさらに具備する点である。また、本形態の目的サーバ装置４４０と第１実施形態の目的サーバ装置２４０との構成は同様であるが、一時識別子を取り扱う点のみが相違する。【０１１０】
［前処理］
第１実施形態と同じであるため説明を省略する。
［通信処理］
図２１から図２３は、第３実施形態の通信処理を説明するためのシーケンス図である。以下、これらの図に従い、第３実施形態の通信処理を説明する。【０１１１】
まず、第１実施形態のステップＳ１と同様な処理により、ユーザ認証装置４１０と中継サーバ装置４３０とが第１コネクションを確立する。第１コネクションが確立されると、ユーザ認証装置４１０（図１７）の通信処理部２１０ｅが記憶部２１０ｊからユーザ認証装置２１０の識別子であるユーザ認証装置識別子（AUTID）を読み込み、これを第１ソケット部２１０ｄに送る。第１ソケット部２１０ｄは、ユーザ認証装置識別子（AUTID）を送信部２１０ａに送り、送信部２１０ａは、第１コネクションを通じて、当該ユーザ認証装置識別子（AUTID）を具備する第１要求情報（RQ-1）を送信する（ステップＳ２０１）。送信された第１要求情報（RQ-1）は、第１コネクションを通じて、中継サーバ装置４３０（図１９）の受信部２３０ｂに受信される（ステップＳ２０２）。第１要求情報（RQ-1）が具備するユーザ認証装置識別子（AUTID）は第１ソケット部２３０ｊ経由で通信処理部２３０ｈに送られ、通信処理部２３０ｈは、当該ユーザ認証装置識別子（AUTID）を記憶部２３０ｇに格納する。また、これを契機として一時識別子生成部４３０ｑが、他のユーザ認証装置識別子（AUTID）に関連付けられていないランダムな文字列からなる一時識別子を生成し（ステップＳ２０３）、それを当該ユーザ認証装置識別子（AUTID）に関連付けて記憶部２３０ｇに格納する（ステップＳ２０４）。次に、通信処理部２３０ｈは、ステップＳ２０４で生成した一時識別子を第１ソケット部２３０ｊに送る。第１ソケット部２３０ｊは、ステップＳ２０１で送信された第１要求情報（RQ-1）の応答情報として、第１コネクションを通じ、一時識別子を送信する（ステップＳ２０５）。送信された一時識別子は、第１コネクションを通じてユーザ認証装置４１０（図１７）の受信部２１０ｂで受信される（ステップＳ２０６）。受信された一時識別子（TID）は、第１ソケット部２１０ｄ経由で通信処理部２１０ｅに送られ、通信処理部２１０ｅは、これを記憶部２１０ｊに格納する。一時識別子（TID）は、さらに出力部４１０ｉに送られ、出力部４１０ｉはこれを出力する（ステップＳ２０７）。その後、第１実施形態のステップＳ２〜Ｓ４と同じ処理が実行され、これにより、記憶部２３０ｇに、ユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）（第１接点情報）が関連付けられて格納される。【０１１２】
次に、第１実施形態のステップＳ７と同じ処理により、ユーザ装置４２０と目的サーバ装置４４０とが第３コネクションを確立し、ステップＳ７ａと同じ処理を実行する。その後、ユーザ装置４２０（図１８）の出力部２２０ｉから、一時識別子（TID）と中継サーバ装置宛先情報（ISADR）との入力を促す入力指示情報（IND）が出力される（ステップＳ２０８）。これに対してユーザは、ユーザ装置４２０から出力された（ステップＳ２０７）一時識別子（TID）と、中継サーバ装置４３０の中継サーバ装置宛先情報（ISADR）とを入力部４２０ｈに入力し、これらは通信処理部２２０ｇによって記憶部２２０ｊに格納される（ステップＳ２０９）。【０１１３】
次に、ユーザ装置４２０（図１８）の通信処理部２２０ｇが、記憶部２２０ｊから中継サーバ装置宛先情報（ISADR）と一時識別子（TID）とを読み込み、これらをサービス要求情報（SRQ）とともに第３ソケット部２２０ｆに送る。第３ソケット部２２０ｆは、これらの情報を送信部２２０ａに送り、送信部２２０ａは、第３コネクションを通じてこれらの情報を目的サーバ装置４４０に送信する（ステップＳ２１０）。送信されたこれらの情報は、第３コネクションを通じて、目的サーバ装置４４０（図２０）の受信部２４０ｂに受信される（ステップＳ２１１）。【０１１４】
受信された情報が具備する中継サーバ装置宛先情報（ISADR）と一時識別子（TID）とサービス要求情報（SRQ）は、第３ソケット部２４０ｅ経由で通信処理部２４０ｆに送られる。通信処理部２４０ｆは、中継サーバ装置宛先情報（ISADR）と一時識別子（TID）とを記憶部２４０ｉに格納するとともに、サービス要求情報（SRQ）に対応するセッション情報（SID）を生成し、当該サービス要求情報（SRQ）とセッション情報（SID）とを相互関連付けて記憶部２４０ｉに格納する（ステップＳ２１２）。【０１１５】
次に、通信処理部２４０ｆは、記憶部２４０ｉから、中継サーバ装置宛先情報（ISADR）と一時識別子（TID）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）とを読み込み、これを認証要求情報（AUTRQ）とともに第３ソケット部２４０ｅに送る。第３ソケット部２４０ｅは、これらの情報を送信部２４０ａに送る。送信部２４０ａは、それらの情報を、ステップＳ２１０で送信された情報の応答情報として、第３コネクションを通じ、ユーザ装置４２０（図１８）に送信する（ステップＳ２１３）。送信されたこれらの情報は、第３コネクションを通じて、ユーザ装置４２０の受信部２２０ｂで受信される（ステップＳ２１４）。受信された情報が具備する中継サーバ装置宛先情報（ISADR）と一時識別子（TID）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）と認証要求情報（AUTRQ）とは、第３ソケット部２２０ｆ経由で通信処理部２２０ｇに送られ、そこから記憶部２２０ｊに格納される。【０１１６】
次に、第１実施形態のステップＳ１３と同じ処理により、ユーザ装置４２０と中継サーバ装置４３０とが第２コネクションを確立する。
次に、ユーザ装置４２０（図１８）の通信処理部２２０ｇが、記憶部２２０ｊから一時識別子（TID）と認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（「送信情報」に相当）とを読み込み、これらを第２ソケット部２２０ｅに送る。第２ソケット部２２０ｅは、これらの情報を含む第２要求情報（RQ-2）を送信部２２０ａに送り、送信部２２０ａは、第２コネクションを通じて第２要求情報（RQ-2）を中継サーバ装置４３０に送信する（ステップＳ２１５）。送信されたこれらの第２要求情報（RQ-2）は、第２コネクションを通じて、中継サーバ装置４３０（図１９）の受信部２３０ｂに受信される（ステップＳ２１６）。次に、通信路端点検索部２３０ｆが、記憶部２３０ｇから、第２要求情報（RQ-2）が具備する一時識別子（TID）を読み込む。そして、通信路端点検索部２３０ｆは、この一時識別子（TID）と同じ一時識別子（TID）に関連付けられているユーザ認証装置識別子（AUTID）を記憶部２３０ｇから抽出し、さらにこのユーザ認証装置識別子（AUTID）に関連付けられている第１ソケット番号（SN-1）（「第１端点情報」に相当）を記憶部２３０ｇから抽出する（ステップＳ２１７）。抽出された第１ソケット番号（SN-1）は通信処理部２３０ｈに送られる。【０１１７】
その後、第１実施形態のステップＳ１７〜Ｓ２７と同じ処理が実行され、さらに、中継サーバ装置４３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されている一時識別子（TID）とユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）との関連付けを解除する（ステップＳ２１８）。その後、第１実施形態のステップＳ２９〜Ｓ３７と同じ処理が実行される。【０１１８】
＜本形態の特徴＞
本形態では、一時的に生成された一時識別子（TID）を第１ソケット番号（SN-1）に関連付けて中継サーバ装置４３０に格納し、第１コネクションの端点の検出を可能とした。また、目的サーバ装置４４０には、ユーザ認証装置識別子（AUTID）ではなく、一時識別子（TID）を送信することとした。これにより、ユーザ認証装置識別子（AUTID）を目的サーバ装置４４０に送信する方法に比べて安全性が向上する。その他の効果は、第１実施形態と同様である。【０１１９】
〔第４実施形態〕
第４実施形態は、第３実施形態の変形例である。本形態の第３実施形態との相違点は、本形態の場合、コネクションを確立し、情報要求を送信し、その応答情報が返された時点でコネクションが解放される点（HTTPなど）と、この場合であっても第２コネクションの端点を検出できるように、中継サーバ装置がセッション情報（SID）と第２ソケット番号（SN-2）とを関連付けて記憶部に格納しておく点である。【０１２０】
＜構成＞
図２４は、第４実施形態の通信システム５００の全体構成を例示した概念図である。また、図２５は、第４実施形態のユーザ認証装置５１０（第１端末装置）の詳細構成を例示したブロック図である。また、図２６は、中継サーバ装置５３０の詳細構成を例示したブロック図である。なお、図２４から図１６において上述の実施形態と共通する部分については、それと同じ符号を用いた。【０１２１】
図２４に例示するように、本形態の通信システム５００と第３実施形態の通信システム４００との相違点は、ユーザ認証装置４１０がユーザ認証装置５１０に置換され、中継サーバ装置４３０が中継サーバ装置５３０に置換された点である。また、図２５に例示するように、本形態のユーザ認証装置５１０と第３実施形態のユーザ認証装置４１０との相違点は、ユーザ認証装置５１０がさらに第４コネクション処理部５１０ｃと第４ソケット部５１０ｄとを有する点である。なお、第４ソケット部５１０ｄは、コネクション確立時に第４コネクション処理部５１０ｃによって生成される。また、図２６に例示するように、本形態の中継サーバ装置５３０と第３実施形態の中継サーバ装置４３０との相違点は、本形態の中継サーバ装置５３０がさらに第４コネクション処理部５３０ｄと第４ソケット部５３０ｋとを有する点である。なお、第４ソケット部５３０ｋは、コネクション確立時に第４コネクション処理部５３０ｄによって生成される。【０１２２】
＜処理＞
次に、本形態の処理について説明する。
［前処理］
第１実施形態と同じであるため説明を省略する。
［通信処理］
図２７及び図２８は、第４実施形態の通信処理を説明するためのシーケンス図である。以下、これらの図に従い、第４実施形態の通信処理を説明する。
まず、ユーザ認証装置５１０（図２５）が立ち上がったこと等を契機として、ユーザ認証装置５１０の送信部２１０ａが、待ち受け状態にある中継サーバ装置５３０に対し、第４コネクション確立要求情報を送信する。そして、これを契機として、中継サーバ装置５３０の第４コネクション処理部５３０ｄとユーザ認証装置５１０の第４コネクション処理部５１０ｃとが、中継サーバ装置５３０とユーザ認証装置５１０との第４コネクションを確立する（ステップＳ３０１）。【０１２３】
ステップＳ１の処理は、例えば、第１実施形態のステップＳ１と同様に行われる。これにより、ユーザ認証装置５１０（図２５）に第４ソケット部５１０ｄが生成され、中継サーバ装置５３０（図２６）に第４ソケット部５３０ｋが生成される。また、ユーザ認証装置５１０の記憶部２１０ｊには、第４ソケット部５１０ｄに対応する第４ソケット番号（SN-4）と、ユーザ認証装置宛先情報（AUTADR）と、ユーザ認証装置側第４ポート番号（AUTPN-4）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第４ポート番号（ISPN-4）とが相互に関連付けられて格納される。さらに、中継サーバ装置５３０の記憶部２３０ｇには、第４ソケット部５３０ｋに対応する第４ソケット番号（SN-4）と、ユーザ認証装置宛先情報（AUTADR）と、ユーザ認証装置側第４ポート番号（AUTPN-4）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置側第４ポート番号 （ISPN-4）とが相互に関連付けられて格納される。【０１２４】
次に、確立された第４コネクションを通じて、第３実施形態のステップＳ２０１〜Ｓ２０６と同様な処理が実行され、その後、中継サーバ装置５３０とユーザ認証装置５１０との第４コネクションが開放される。【０１２５】
これらの処理により、ユーザ認証装置５１０の受信部２１０ｂで受信された一時識別子（TID）は、第４ソケット部５１０ｄ経由で通信処理部２１０ｅに送られ、通信処理部２１０ｅは、これを記憶部２１０ｊに格納する。一時識別子（TID）は、さらに出力部４１０ｉに送られ、出力部４１０ｉはこれを出力する（ステップＳ３０３）。その後、第１実施形態のステップＳ１と同様な処理により、中継サーバ装置５３０とユーザ認証装置５１０とが第４コネクションを確立し、第１実施形態のステップＳ２〜Ｓ４と同じ処理が実行される。これにより、中継サーバ装置５３０の記憶部２３０ｇに、ユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）（第１接点情報）が関連付けられて格納される。【０１２６】
次に、第１実施形態のステップＳ７と同じ処理により、ユーザ装置４２０と目的サーバ装置４４０との第３コネクションが確立され、ステップＳ７ａと同じ処理が実行されたのち、第３コネクションが開放される（ステップＳ３０３ａ）。その後、第３実施形態のステップＳ２０８及びＳ２０９と同じ処理が実行され、さらに、第１実施形態のステップＳ７と同じ処理により、ユーザ装置４２０と目的サーバ装置４４０との第３コネクションが確立され、第３実施形態のステップＳ２１０〜Ｓ２１４の処理が実行された後、第３コネクションが開放される（ステップＳ３０４）。【０１２７】
次に、第１実施形態のステップＳ１３と同じ処理により、ユーザ装置４２０と中継サーバ装置４３０とが第２コネクションを確立する。【０１２８】
次に、ユーザ装置４２０（図１８）の通信処理部２２０ｇが、記憶部２２０ｊから一時識別子（TID）と認証要求情報（AUTRQ）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（「送信情報」に相当）とを読み込み、これらを第２ソケット部２２０ｅに送る。第２ソケット部２２０ｅは、これらの情報を含む第２要求情報（RQ-2）を送信部２２０ａに送り、送信部２２０ａは、第２コネクションを通じて第２要求情報（RQ-2）を中継サーバ装置４３０に送信する（ステップＳ３０５）。送信されたこれらの第２要求情報（RQ-2）は、第２コネクションを通じて、中継サーバ装置５３０（図２６）の受信部２３０ｂに受信される（ステップＳ３０６）。【０１２９】
次に、中継サーバ装置５３０の通信路端点関連付け部３３０ｅが、ステップＳ３０６で受信された第２要求情報（RQ-2）が具備するセッション情報（SID）と、第２コネクションに対応する第２ソケット部２３０ｋの第２ソケット番号（SN-2）（「第２端点情報」に相当）とを相互に関連付けて記憶部２３０ｇに格納する（ステップＳ３０７）。【０１３０】
次に、通信路端点検索部２３０ｆが、記憶部２３０ｇから、第２要求情報（RQ-2）が具備する一時識別子（TID）を読み込む。そして、通信路端点検索部２３０ｆは、この一時識別子（TID）と同じ一時識別子（TID）に関連付けられているユーザ認証装置識別子（AUTID）を記憶部２３０ｇから抽出し、さらにこのユーザ認証装置識別子（AUTID）に関連付けられている第１ソケット番号（SN-1）（「第１端点情報」に相当）を記憶部２３０ｇから抽出する（ステップＳ３０８）。抽出された第１ソケット番号（SN-1）は通信処理部２３０ｈに送られる。【０１３１】
次に、第１実施形態のステップＳ１７及びＳ１８の処理を実行した後、第１コネクションを開放する。その後、中継サーバ装置５３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されている一時識別子（TID）とユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）との関連付けを解除する（ステップＳ３１０）。【０１３２】
その後、第１実施形態のステップＳ１９〜Ｓ２２と同じ処理が実行される。そして（図１５）、第１実施形態のステップＳ１と同様な処理により、ユーザ認証装置５１０と中継サーバ装置５３０とが第１コネクションを確立し、ステップＳ２３及びＳ２４と同じ処理を実行する。【０１３３】
次に、中継サーバ装置５３０の通信路端点検索部３３０ｆが、前述の返信情報（認証結果情報と署名情報と目的サーバ装置宛先情報とセッション情報）が具備するセッション情報（SID）を用いて記憶部５３０ｇを検索し、当該返信情報が具備するセッション情報（SID）と同じセッション情報（SID）に関連付けられている第２ソケット番号（SN-2）（「第２端点情報」に相当）を抽出する（ステップＳ１０８）。【０１３４】
次に、中継サーバ装置５３０の通信処理部２３０ｈは、記憶部２３０ｇから、返信情報を読み込み、それらをステップＳ１０８で抽出された第２ソケット番号（SN-2）に対応する第２ソケット部２３０ｋに送る。第２ソケット部２３０ｋは、返信情報を送信部２３０ａに送り、送信部２３０ａは、ステップＳ１４で送信された情報の応答情報として、第２コネクションを通じ、当該送信情報を送信する（ステップＳ１０９）。当該送信情報は、第２コネクションを通じて、ユーザ装置４２０の受信部２２０ｂに受信される（ステップＳ１１０）。【０１３５】
その後、ユーザ装置４２０と中継サーバ装置５３０とが第２コネクションを開放し（ステップＳ１１１）、ユーザ認証装置５１０と中継サーバ装置５３０とが第１コネクションを開放し（ステップＳ１１２）、中継サーバ装置５３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されているセッション情報（SID）と第２ソケット番号（SN-2）との関連付けを解除する（ステップＳ１１３）。【０１３６】
次に、第１実施形態のステップＳ７と同じ処理により、ユーザ装置５２０と目的サーバ装置４４０とが第３コネクションを確立し、ステップＳ３０〜Ｓ３７の処理を実行する。【０１３７】
＜本形態の特徴＞
本形態でも、一時的に生成された一時識別子（TID）を第１ソケット番号（SN-1）に関連付けて中継サーバ装置５３０に格納し、第１コネクションの端点の検出を可能とした。また、目的サーバ装置４４０には、ユーザ認証装置識別子（AUTID）ではなく、一時識別子（TID）を送信することとした。これにより、ユーザ認証装置識別子（AUTID）を目的サーバ装置４４０に送信する方法に比べて安全性が向上する。【０１３８】
また、本形態では、コネクションを確立し、情報要求を送信し、その応答情報が返された時点でコネクションが解放されるＨＴＴＰやＨＴＴＰＳのようなプロトコルに従って通信処理が行われる。この場合、ステップＳ１３で中継サーバ装置５３０がユーザ装置４２０と第２コネクションを確立するスレッド（又はプロセス）と、中継サーバ装置５３０がユーザ認証装置５１０との２回目の第１コネクションを確立して実行するステップＳ１０９のスレッド（又はプロセス）とは、別のスレッド（又はプロセス）となる。この場合、通常であれば、中継サーバ装置５３０は、ステップＳ１０９の処理に際し、別のスレッド（又はプロセス）で確立された第２コネクションに対応する第２ソケット番号（SN-2）を知ることはできない。【０１３９】
しかし、本形態では、中継サーバ装置５３０においてセッション情報（SID）と第２コネクションの第２ソケット番号（SN-2）とを相互に関連付けて記憶部２３０ｇに格納し（ステップＳ３０７）、ステップＳ１０９を実行する前に、返信情報が具備するセッション情報（SID）を用いて記憶部２３０ｇを検索し、当該返信情報が具備するセッション情報（SID）と同じセッション情報（SID）に関連付けられている第２ソケット番号（SN-2）を抽出する（ステップＳ１０８）こととした。これにより、中継サーバ装置５３０は、ステップＳ１０９の処理に際し、別のスレッド（又はプロセス）で確立された第２コネクションに対応する第２ソケット番号（SN-2）を知ることができ、第２コネクションを利用して応答情報をユーザ装置２２０に送信することができる。その他の特徴は、第１実施形態と同様である。【０１４０】
〔第５実施形態〕
本形態は、上述の各実施形態の変形例である。本形態は、中継サーバ装置が、ユーザ認証装置（「第１端末装置」に相当）の第１秘密鍵（SK-1）を用い、認証結果情報（AUTRS）の署名情報（SIGN）を生成する点、目的サーバ装置が、第２公開鍵（PK-2）を用いて公開鍵証明書（CER）を検証する点、及び、目的サーバ装置が、当該公開鍵証明書（CER）が有する第１公開鍵（PK-1）を用いて署名情報（SIGN）を検証する点で、上述の各実施形態と相違する。このような変形は、上述の第１〜第４各実施形態の何れに対して行ってもかまわない。しかし、ここでは説明の簡略化のため、このような変形を第１実施形態に対して行った例を説明する。そして、以下では、第１実施形態との相違点を中心に説明し、第１実施形態と共通する事項については説明を省略する。【０１４１】
＜構成＞
図２９は、第５実施形態の通信システム６００の全体構成を例示した概念図である。また、図３０は、第５実施形態のユーザ認証装置６１０の詳細構成を例示したブロック図である。また、図３１は、第５実施形態の中継サーバ装置６３０の詳細構成を例示したブロック図である。図３２は、第５実施形態の目的サーバ装置６４０の詳細構成を例示したブロック図である。なお、図２９から図３２において第１実施形態と共通する部分については、第１実施形態と同じ符号を用いた。【０１４２】
図２９に例示するように、本形態の通信システム６００と第１実施形態の通信システム２００との相違点は、新たに証明書発行サーバ装置６５０を具備する点、ユーザ認証装置２１０がユーザ認証装置６１０に置換され、中継サーバ装置２３０が中継サーバ装置６３０に置換され、目的サーバ装置２４０が目的サーバ装置６４０に置換された点である。また、図３０に例示するように、本形態のユーザ認証装置６１０と第１実施形態のユーザ認証装置２１０との相違点は、本形態のユーザ認証装置６１０が署名生成部２１０ｆを具備しない点である。また、図３１に例示するように、本形態の中継サーバ装置６３０と第１実施形態の中継サーバ装置２３０との相違点は、中継サーバ装置６３０が新たに署名生成部６３０ｒを有する点である。また、図３２に例示するように、本形態の目的サーバ装置６４０と第１実施形態の目的サーバ装置２４０との相違点は、目的サーバ装置６４０が新たに公開鍵証明書検証部を有する点である。【０１４３】
＜処理＞
次に、本形態の処理について説明する。
［前処理］
まず、証明書発行サーバ装置６５０が、第１公開鍵（PK-1）を含む情報を証明書発行サーバ装置６５０の第２秘密鍵を用いて暗号化した暗号文と当該第１公開鍵（PK-1）とを有する公開鍵証明書（CER）を発行する。発行された公開鍵証明書（CER）は、ユーザ認証装置６１０の記憶部２１０ｊに格納される。また、第２秘密鍵に対応する第２公開鍵（PK-2）が、中継サーバ装置６３０の記憶部２３０ｇと目的サーバ装置６４０の記憶部２４０ｉとに格納される。【０１４４】
また、ユーザ認証装置６１０の記憶部２１０ｊに、ユーザ認証装置宛先情報（AUTADR）と、中継サーバ装置宛先情報（ISADR）と、中継サーバ装置待ち受けポート番号（ISPN-0）とが格納される。また、中継サーバ装置６３０の記憶部２３０ｇに、中継サーバ装置宛先情報（ISADR）と、第１公開鍵（PK-1）に対応するユーザ認証装置６１０の第１秘密鍵（SK-1）と、第２秘密鍵に対応する第２公開鍵（PK-2）とが格納される。さらに、目的サーバ装置６４０の記憶部２４０ｉに、目的サーバ装置宛先情報（TSADR）と、前述の第２秘密鍵に対応する第２公開鍵（PK-2）とが格納される。
なお、ユーザ装置２２０の前処理は第１実施形態と同じである。【０１４５】
［通信処理］
図３３及び図３４は、第５実施形態の通信処理を説明するためのシーケンス図である。以下、これらの図に従い、第５実施形態の通信処理を説明する。
まず、第１実施形態のステップＳ１と同様に、中継サーバ装置６３０とユーザ認証装置６１０とが第１コネクションを確立し、ステップＳ２〜Ｓ２１と同じ処理が実行される。【０１４６】
その後、ユーザ認証装置６１０の通信処理部２１０ｅが、記憶部２１０ｊから認証結果情報（AUTRS）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（これらは「返信情報」に相当）を読み込み、これを第１ソケット部２１０ｄに送る。第１ソケット部２１０ｄは、これらの情報を送信部２１０ａに送り、送信部２１０ａは、第１コネクションを通じて、当該返信情報を送信する（ステップＳ４０８）。送信された当該返信情報は、第１コネクションを通じて、中継サーバ装置６３０（図３１）の受信部２３０ｂに受信される（ステップＳ４０９）。受信された認証結果情報（AUTRS）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）は、第１ソケット部２３０ｊ経由で通信処理部２３０ｈに送られ、通信処理部２３０ｈは、これらを記憶部２３０ｇに格納する。【０１４７】
次に、署名生成部６３０ｒが、記憶部２３０ｇから第１秘密鍵（SK-1）と認証結果情報（AUTRS）とを読み込み、認証結果情報（AUTRS）を含む情報を、公開鍵暗号方式により第１秘密鍵（SK-1）を用いて暗号化した署名情報（SIGN）（認証結果情報（AUTRS）の署名情報）を生成し、当該署名情報（SIGN）を記憶部２３０ｇに格納する（ステップＳ４１０）。【０１４８】
次に、中継サーバ装置６３０の通信処理部２３０ｈは、記憶部２３０ｇから、認証結果情報（AUTRS）と署名情報（SIGN）と公開鍵証明書（CER）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）を読み込み、それらを第２ソケット部２３０ｋに送る。第２ソケット部２３０ｋは、認証結果情報（AUTRS）と署名情報（SIGN）と公開鍵証明書（CER）と目的サーバ装置宛先情報（TSADR）とセッション情報（SID）（これらは「送信情報」に相当）を送信部２３０ａに送る。送信部２３０ａは、ステップＳ１４で送信された情報の応答情報として、第２コネクションを通じ、当該送信情報を送信する（ステップＳ４１１）。当該送信情報は、第２コネクションを通じて、ユーザ装置６２０（図５）の受信部２２０ｂに受信される（ステップＳ４１２）。【０１４９】
また、ユーザ認証装置６１０と中継サーバ装置６３０とが第１コネクションを開放し（ステップＳ４１３）、中継サーバ装置６３０の通信処理部２３０ｈが、記憶部２３０ｇに格納されているユーザ認証装置識別子（AUTID）と第１ソケット番号（SN-1）との関連付けを解除する（ステップＳ４１４）。さらに、ユーザ装置６２０と中継サーバ装置２３０とが、第２コネクションを開放する（ステップＳ４１５）。【０１５０】
次に、ユーザ装置２２０（図５）の通信処理部２２０ｇが、認証結果情報（AUTRS）と署名情報（SIGN）と公開鍵証明書（CER）とセッション情報（SID）とを、目的サーバ装置宛先情報（TSADR）に対応する第３コネクションの第３ソケット部２２０ｆに送る。第３ソケット部２２０ｆは、これらの情報を送信部２２０ａに送り、送信部２２０ａは、第３コネクションを通じてこれらの情報を目的サーバ装置６４０に送信する（ステップＳ４１６）。送信されたこれらの情報は、第３コネクションを通じて、目的サーバ装置６４０（図７）の受信部２４０ｂに受信される（ステップＳ４１７）。受信されたこれらの情報は、第３ソケット部２４０ｅ経由で通信処理部２４０ｆに送られ、通信処理部２４０ｆは、これらの認証結果情報（AUTRS）と署名情報（SIGN）と公開鍵証明書（CER）とセッション情報（SID）とを記憶部２４０ｉに格納する。【０１５１】
次に、公開鍵証明書検証部６４０ｍが、記憶部２４０ｉから公開鍵証明書（CER）と第２公開鍵（PK-2）とを読み込み、当該第２公開鍵（PK-2）を用いて当該公開鍵証明書（CER）を検証し、当該公開鍵証明書（CER）が正当であるか否かを判定し、その判定結果を出力する（ステップＳ４１８）。この判定結果は、許可部２４０ｈに送られる。ここで、この判定結果が、公開鍵証明書（CER）が不当である旨のものであった場合、許可部２４０ｈは、ユーザ装置２２０のログインを拒否する（ステップＳ４２０）。
一方、この判定結果が、公開鍵証明書（CER）が正当である旨のものであった場合、第１実施形態のステップＳ３２〜Ｓ３７と同じ処理が実行される。【０１５２】
＜本形態の特徴＞
通常、署名情報（SIGN）には演算量の大きな公開鍵暗号方式が用いられる。そのため、ユーザ認証装置６１０が演算性能の低い装置（例えば、携帯電話端末装置などの移動体通信端末装置）であった場合、ユーザ認証装置６１０が署名情報（SIGN）を生成することは、処理効率上、好ましくない。これに対し、本形態では、ユーザ認証装置６１０が署名情報（SIGN）を生成するのではなく、中継サーバ装置６３０の署名生成部６３０ｒが、ユーザ認証装置６１０（「第１端末装置」に相当）の第１秘密鍵（SK-1）を用い、認証結果情報（AUTRS）の署名情報（SIGN）を生成することとした（ステップＳ４１０）。その結果、中継サーバ装置６３０がユーザ認証装置６１０よりも演算性能が高い装置なのであれば、システム全体として処理速度を向上させることができる。【０１５３】
〔第６実施形態〕
本形態は、第１〜４実施形態の変形例である。本形態は、ユーザ認証装置（「第１端末装置」に相当）が中継サーバ装置にアクセスする際に、ユーザ認証装置がその第１秘密鍵（SK-1）を用いて認証結果情報（AUTRS）の署名情報（SIGN）を生成して中継サーバ装置に送信し、中継サーバ装置がこの署名情報（SIGN）を検証することでユーザ認証装置の認証を行う点が第１〜４実施形態と相違する。すなわち、目的サーバ装置でのユーザ認証に用いる署名情報（SIGN）を、中継サーバ装置でのユーザ認証装置の認証に流用する変形例である。このような変形は、上述の第１〜第４各実施形態の何れに対して行ってもかまわない。しかし、ここでは説明の簡略化のため、このような変形を第１実施形態に対して行った例を説明する。そして、以下では、第１実施形態との相違点を中心に説明し、第１実施形態と共通する事項については説明を省略する。【０１５４】
図３５は、第６実施形態の通信システム７００の全体構成を例示した概念図である。また、図３６は、第６実施形態の中継サーバ装置７３０の詳細構成を例示したブロック図である。なお、図３５及び図３６において第１実施形態と共通する部分については、第１実施形態と同じ符号を用いた。【０１５５】
図３５に例示するように、本形態の通信システム７００と第１実施形態の通信システム２００との相違点は、中継サーバ装置２３０が中継サーバ装置７３０に置換された点である。また、図３６に例示するように、本形態の中継サーバ装置７３０と第１実施形態の中継サーバ装置２３０との相違点は、本形態の中継サーバ装置７３０が第１端末装置認証部７３０ｑをさらに具備する点である。【０１５６】
＜処理＞
次に、本形態の処理について説明する。
［前処理］
中継サーバ装置２３０の記憶部２３０ｇに、ユーザ認証装置２１０の第１秘密鍵（SK-1）に対応する第１公開鍵（PK-1）を格納しておく点以外は、第１実施形態と同じである。【０１５７】
［通信処理］
まず、ステップＳ１〜Ｓ２４と同じ処理を実行する。これにより、認証結果情報（AUTRS）を含む情報を公開鍵暗号方式により第１秘密鍵を用いて暗号化した署名情報（SIGN）等を含む返信情報が、第１コネクションを通じて、ユーザ認証装置２１０から中継サーバ装置７３０に送られる。当該署名情報（SIGN）は第１端末装置認証部７３０ｑに送られ、第１端末装置認証部７３０ｑは、記憶部２３０ｇから読み込んだ第１公開鍵（PK-1）を用いて当該署名情報（SIGN）を検証する（ステップＳ５０１）。ここで、署名情報（SIGN）の検証が不合格であった場合（ステップＳ５０２）、ユーザ認証装置２１０の端末認証が失敗であるとして処理を終了する（ステップＳ５０３）。一方、署名情報（SIGN）の検証が不合格であった場合（ステップＳ５０２）、ユーザ認証装置２１０の端末認証が成功であるとして（ステップＳ５０４）、ステップＳ２５〜Ｓ３７と同じ処理が実行される。【０１５８】
＜本形態の特徴＞
目的サーバ装置でのユーザ認証（ステップＳ３２〜Ｓ３５）に用いる署名情報（SIGN）を、中継サーバ装置でのユーザ認証装置の認証（ステップＳ５０１〜Ｓ５04）に流用する。これにより、ユーザ認証装置での演算量を増加させることなく、システムの安全性を向上させることができる。【０１５９】
〔変形例等〕
なお、本発明は上述の実施の形態に限定されるものではない。例えば、各実施形態における一連の処理を実行するたびにユーザ認証装置識別子（AUTID）をランダムに生成してもよい。これにより、安全性が向上する。また、上述した処理は、ＨＴＴＰやＨＴＴＰＳのみならず、ＳＯＡＰ(Simple Object Access Protocol)等のその他のプロトコルに基づいて行ってもよい。【０１６０】
また、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、処理機能がコンピュータ上で実現される。【０１６１】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよいが、具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。【０１６２】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。【０１６３】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。【０１６４】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【産業上の利用可能性】
【０１６５】
本発明の利用分野としては、例えば、携帯電話端末装置をユーザ認証装置として利用したシングルサインオンシステムを例示できる。
【図１】
2009019925.tif 000003
【図２】
2009019925.tif 000004
【図３】
2009019925.tif 000005
【図４】
2009019925.tif 000006
【図５】
2009019925.tif 000007
【図６】
2009019925.tif 000008
【図７】
2009019925.tif 000009
【図８】
2009019925.tif 000010
【図９】
2009019925.tif 000011
【図１０】
2009019925.tif 000012
【図１１】
2009019925.tif 000013
【図１２】
2009019925.tif 000014
【図１３】
2009019925.tif 000015
【図１４】
2009019925.tif 000016
【図１５】
2009019925.tif 000017
【図１６】
2009019925.tif 000018
【図１７】
2009019925.tif 000019
【図１８】
2009019925.tif 000020
【図１９】
2009019925.tif 000021
【図２０】
2009019925.tif 000022
【図２１】
2009019925.tif 000023
【図２２】
2009019925.tif 000024
【図２３】
2009019925.tif 000025
【図２４】
2009019925.tif 000026
【図２５】
2009019925.tif 000027
【図２６】
2009019925.tif 000028
【図２７】
2009019925.tif 000029
【図２８】
2009019925.tif 000030
【図２９】
2009019925.tif 000031
【図３０】
2009019925.tif 000032
【図３１】
2009019925.tif 000033
【図３２】
2009019925.tif 000034
【図３３】
2009019925.tif 000035
【図３４】
2009019925.tif 000036
【図３５】
2009019925.tif 000037
【図３６】
2009019925.tif 000038
【図３７】
2009019925.tif 000039
【国際調査報告】
2009019925.tif 000040
2009019925.tif 000041
2009019925.tif 000042
2009019925.tif 000043