(57)【特許請求の範囲】
【請求項１】
承認済のユーザに対してサービスを提供するサーバ装置と、前記サーバ装置において承認されていない未承認ユーザが利用する未承認ユーザ端末装置と通信するクライアント装置とを有する通信システムであって、
前記クライアント装置は、
秘密情報を暗号化して暗号化秘密情報とし、
前記未承認ユーザに前記秘密情報と同じ情報の入力を促す入力依頼メッセージと、前記暗号化秘密情報とが含まれ、前記入力依頼メッセージに応じて入力された入力情報と前記暗号化秘密情報とを前記サーバ装置に送信するよう指示する送信指示情報を前記未承認ユーザ端末装置に送信し、
前記サーバ装置は、
前記入力情報に相当する情報と、前記暗号化秘密情報に相当する情報を受信し、
受信した前記暗号化秘密情報に相当する情報の復号処理を行い、
復号処理後の情報と、受信した前記入力情報に相当する情報とを比較し、両者が一致する場合に、前記未承認ユーザを承認することを特徴とする通信システム。
【請求項２】
前記クライアント装置は、
前記未承認ユーザの識別情報を暗号鍵として用いて前記秘密情報を暗号化し、
前記入力依頼メッセージと前記暗号化秘密情報と前記未承認ユーザの識別情報とが含まれ、前記入力依頼メッセージに応じて入力された入力情報と前記暗号化秘密情報と前記未承認ユーザの識別情報を前記サーバ装置に送信するよう指示する送信指示情報を前記未承認ユーザ端末装置に送信し、
前記サーバ装置は、
前記入力情報に相当する情報と、前記暗号化秘密情報に相当する情報と、前記未承認ユーザの識別情報に相当する情報を受信し、
受信した前記未承認ユーザの識別情報に相当する情報を用いて復号鍵を生成し、生成した復号鍵を用いて前記暗号化秘密情報に相当する情報の復号処理を行うことを特徴とする請求項１に記載の通信システム。
【請求項３】
前記クライアント装置は、
前記秘密情報に電子署名を付加し、電子署名が付加された秘密情報を暗号化して暗号化秘密情報とすることを特徴とする請求項１又は２に記載の通信システム。
【請求項４】
前記サーバ装置は、
前記暗号化秘密情報に相当する情報の復号処理を行って、電子署名を抽出し、抽出した電子署名を用いて前記暗号化秘密情報に相当する情報の生成元を特定することを特徴とする請求項３に記載の通信システム。
【請求項５】
前記クライアント装置は、
前記入力依頼メッセージと、前記暗号化秘密情報と、前記未承認ユーザに前記秘密情報を想起させる質問が示される質問メッセージとが含まれる送信指示情報を前記未承認ユーザ端末装置に送信することを特徴とする請求項１〜４のいずれかに記載の通信システム。
【請求項６】
前記クライアント装置は、
前記秘密情報と時刻情報とを暗号化して暗号化秘密情報とし、
前記サーバ装置は、
受信した前記暗号化秘密情報に相当する情報の復号処理を行って時刻情報を抽出し、抽出した時刻情報に示される時刻と現在時刻との差が閾値以上である場合に、前記未承認ユーザを承認しないことを特徴とする請求項１〜５のいずれかに記載の通信システム。
【請求項７】
前記クライアント装置は、
前記秘密情報と前記サーバ装置の識別情報とを暗号化して暗号化秘密情報とし、
前記サーバ装置は、
前記未承認ユーザを承認した場合に、前記暗号化秘密情報を復号可能な復号鍵を前記未承認ユーザ端末装置に送信することを特徴とする請求項１〜６のいずれかに記載の通信システム。
【請求項８】
前記サーバ装置は、
前記暗号化秘密情報に相当する情報を復号処理した後の情報と、受信した前記入力情報に相当する情報とを比較した結果、両者が一致しない場合に、前記入力情報に相当する情報を前記クライアント装置に送信し、
前記クライアント装置は、
前記サーバ装置から前記入力情報に相当する情報を受信し、受信した前記入力情報に相当する情報の内容から前記未承認ユーザの承認が可能な場合に、前記サーバ装置に前記未承認ユーザの承認を依頼する承認依頼情報を送信することを特徴とする請求項１〜７のいずれかに記載の通信システム。
【請求項９】
承認済のユーザに対してサービスを提供するサーバ装置において承認されていない未承認ユーザが利用する未承認ユーザ端末装置と通信するクライアント装置であって、
秘密情報を暗号化して暗号化秘密情報とする暗号化部と、
前記未承認ユーザに前記秘密情報と同じ情報の入力を促す入力依頼メッセージを生成する入力依頼メッセージ生成部と、
前記暗号化秘密情報と前記入力依頼メッセージとが含まれ、前記入力依頼メッセージに応じて入力された入力情報と前記暗号化秘密情報とを前記サーバ装置に送信するよう指示する送信指示情報を生成する送信指示情報生成部と、
前記送信指示情報を前記未承認ユーザ端末装置に送信する情報送信部とを有することを特徴とするクライアント装置。
【請求項１０】
前記暗号化部は、
前記未承認ユーザの識別情報を暗号鍵として用いて前記秘密情報を暗号化し、
前記送信指示情報生成部は、
前記入力依頼メッセージと前記暗号化秘密情報と前記未承認ユーザの識別情報とが含まれ、前記入力依頼メッセージに応じて入力された入力情報と前記暗号化秘密情報と前記未承認ユーザの識別情報を前記サーバ装置に送信するよう指示する送信指示情報を生成することを特徴とする請求項９に記載のクライアント装置。
【請求項１１】
前記クライアント装置は、更に、
前記秘密情報に電子署名を付加する署名部を有し、
前記暗号化部は、
前記署名部により電子署名が付加された秘密情報を暗号化して暗号化秘密情報とすることを特徴とする請求項９又は１０に記載のクライアント装置。
【請求項１２】
前記クライアント装置は、更に、
前記未承認ユーザに前記秘密情報を想起させる質問が示される質問メッセージを生成する質問メッセージ生成部を有し、
前記送信指示情報生成部は、
前記入力依頼メッセージと、前記暗号化秘密情報と、前記質問メッセージとが含まれる送信指示情報を生成することを特徴とする請求項９〜１１のいずれかに記載のクライアント装置。
【請求項１３】
前記クライアント装置は、更に
前記暗号化秘密情報に相当する情報と前記入力情報に相当する情報を受信したサーバ装置から送信された前記入力情報に相当する情報を受信する情報受信部と、
前記情報受信部により受信された前記入力情報に相当する情報の内容から前記未承認ユーザの承認が可能な場合に、前記サーバ装置に前記未承認ユーザの承認を依頼する承認依頼情報を生成する承認依頼情報生成部とを有し、
前記情報送信部は、
前記承認依頼情報を前記サーバ装置に送信することを特徴とする請求項９〜１２のいずれかに記載のクライアント装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、社外などの外部ユーザを内部のコミュニティに安全に参加させる手法に関するものである。
【背景技術】
【０００２】
従来、外部ユーザの参加手法について、特開２００４−２８７７８４号公報に記載の技術が知られている。
この従来技術では、あらかじめ配布されているＣＡ（Ｃｅｒｔｉｆｉｃａｔｅ  Ａｕｔｈｏｒｉｔｙ）で登録された公開鍵および秘密鍵を用いてコミュニティに参加を実現している。
また、特開２００４−８６５１０号公報に記載の技術が知られている。
この従来技術では、クライアントとの認証が成功している情報を認証が成功していない他のサーバに渡す方法でコミュニティの参加を実現している。
また、会員制のＳＮＳ（Ｓｏｃｉａｌ  Ｎｅｔｗｏｒｋ  Ｓｅｒｖｉｃｅ）などの会員登録方法では、認証が成功しているユーザがサーバに外部ユーザのメールアドレスを登録し、外部ユーザにＵＲＩ（Ｕｎｉｆｏｒｍ  Ｒｅｓｏｕｒｃｅ  Ｉｄｅｎｔｉｆｉｅｒ）を記載したメールを送信し、外部ユーザがサーバにアクセスすることで実現している。
【特許文献１】特開２００４−２８７７８４号公報
【特許文献２】特開２００４−８６５１０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかし、上述した特開２００４−２８７７８４号公報に記載の技術は、ＣＡの登録および鍵の生成など前提条件のコストが大幅にかかる手法である。
また、特開２００４−８６５１０号公報に記載の技術は、信頼できるサーバ同士で認証情報を交換しなければ成立しない手法でかつ、サーバは外部ユーザの認証情報を保存しなければならないため、登録するコストがかかる。
さらに、会員制のＳＮＳなどのユーザ登録方法では、サーバから送信される登録許可メールが暗号化されていないため、盗聴およびなりすましが容易に可能である。
【０００４】
本発明では上記の課題を解決することを主な目的とし、外部ユーザに特別なソフトのインストールを不要とし、さらに鍵やパスワードといった情報の共有も不要とすることで前提条件のコストを大幅に下げる手法を実現することを主な目的とする。
また、サーバのリソースを使用せず、サーバに外部ユーザの情報を登録することなく、盗聴やなりすましといった悪意ある第三者からの攻撃を防ぐことができる仕組みを実現することを主な目的とする。
【課題を解決するための手段】
【０００５】
本発明に係る通信システムは、
承認済のユーザに対してサービスを提供するサーバ装置と、前記サーバ装置において承認されていない未承認ユーザが利用する未承認ユーザ端末装置と通信するクライアント装置とを有する通信システムであって、
前記クライアント装置は、
秘密情報を暗号化して暗号化秘密情報とし、
前記未承認ユーザに前記秘密情報と同じ情報の入力を促す入力依頼メッセージと、前記暗号化秘密情報とが含まれ、前記入力依頼メッセージに応じて入力された入力情報と前記暗号化秘密情報とを前記サーバ装置に送信するよう指示する送信指示情報を前記未承認ユーザ端末装置に送信し、
前記サーバ装置は、
前記入力情報に相当する情報と、前記暗号化秘密情報に相当する情報を受信し、
受信した前記暗号化秘密情報に相当する情報の復号処理を行い、
復号処理後の情報と、受信した前記入力情報に相当する情報とを比較し、両者が一致する場合に、前記未承認ユーザを承認することを特徴とする。
【発明の効果】
【０００６】
本発明によれば、未承認ユーザ端末装置に特別なソフトウェアをインストールする必要がなく、さらに鍵やパスワードといった情報の共有も必要がない、また、サーバ装置に対して、承認ユーザ又は未承認ユーザの個人情報を登録する必要もない。このため、ユーザの利便性を高めることができ、また、クライアント装置、サーバ装置、未承認ユーザ端末装置のリソースを消費しない。また、情報を暗号化しているので、盗聴やなりすましといった悪意ある第三者からの攻撃を防ぐことができる。
【発明を実施するための最良の形態】
【０００７】
実施の形態１．
本実施の形態では、コミュニティにサービスを展開しているサーバ装置（以下、単にサーバともいう）、コミュニティに参加している内部ユーザ、コミュニティに参加してない外部ユーザで構成されているネットワークで、外部ユーザは特別なソフトウェアを端末装置にインストールする必要がなく、内部ユーザを介してコミュニティに参加できる方法を説明する。
ここで、内部ユーザとは、サーバ装置に承認されている承認ユーザであり、サーバ装置からサービスを受けることができる。
また、外部ユーザとは、サーバ装置に承認されていない未承認ユーザである。
【０００８】
本実施の形態で説明する方法は、例えば、以下のようなシステムで適用可能である。
（１）外部ユーザはｗｅｂと接続でき、標準的なＯＳ（Ｏｐｅｒａｔｉｎｇ  Ｓｙｓｔｅｍ）が搭載されているＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）を所有し、ＰＣにはｗｅｂブラウザおよび電子メールを送受信できる標準的なソフトウェアをインストールしている。
（２）内部ユーザは、サービスを提供しているサーバに自身の個人情報やパスワードなどを登録している。内部ユーザは外部ユーザの名刺以上の情報（名前、メールアドレスなど）を知っている。
（３）コミュニティはホームページやブログとは異なり、音楽や動画などコンテンツ配信サービスや会員制ＳＮＳなどのあらかじめ登録しているユーザだけが参加できる閉じられた環境を示す。
（４）サーバは動画や画像などのコンテンツやショッピングなどのサービスを提供している。
【０００９】
図１は、実施の形態に係る通信システムの全体構成例を示すブロック図である。
図１に示すように、本実施の形態に係る通信システムでは、外部ユーザ端末装置１００、内部ユーザ端末装置２００及びサービス発行サーバ装置３００がネットワーク接続されている。
【００１０】
外部ユーザ端末装置１００は、外部ユーザが利用する端末装置であり、未承認ユーザ端末装置の例である。
外部ユーザ端末装置１００は、内部ユーザ端末装置２００から送信された情報に対して自身の情報（外部ユーザ情報）を添付し、サービス発行サーバ装置３００に送付する。
以降、外部ユーザ端末装置１００は、外部ユーザ端末１００ともいう。
【００１１】
内部ユーザ端末装置２００は、内部ユーザが利用する端末装置であり、クライアント装置の例である。
内部ユーザ端末装置２００は、外部ユーザを表象する外部ユーザ情報（秘密情報）を暗号化して暗号化外部ユーザ情報（暗号化秘密情報）とする。
暗号化には、ＩＢＥ（ＩＤ−Ｂａｓｅ  Ｅｎｃｒｙｐｔｉｏｎ）を用いる。つまり、外部ユーザのＩＤ（Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  Ｄａｔａ）（識別情報）を暗号鍵として用いて暗号化を行う。ＩＤは外部ユーザを一意に識別可能な文字列（メールアドレスなど）を用いる。
そして、内部ユーザ端末装置２００は、暗号化外部ユーザ情報に入力フォーム（入力依頼メッセージ）と外部ユーザのＩＤとを添付して送信指示情報を生成し、送信指示情報を外部ユーザ端末１００に送信する。
入力フォームは、外部ユーザに外部ユーザ情報と同じ情報の入力を促す情報である。
また、送信指示情報は、入力フォームに応じて外部ユーザ端末１００で入力された入力情報と暗号化外部ユーザ情報と外部ユーザのＩＤとをサービス発行サーバ装置３００に送信するよう指示する情報である。
なお、外部ユーザ情報は秘密の情報であるが、内部ユーザと外部ユーザの両者は、外部ユーザ情報の内容を知っていることを前提としている。このため、外部ユーザは、入力フォームに外部ユーザ情報と同じ情報を入力情報として入力することができる。
以降、内部ユーザ端末装置２００は、内部ユーザ端末２００ともいう。
【００１２】
サービス発行サーバ装置３００は、サーバ装置の例である。
サービス発行サーバ装置３００は、サービス対象のコンテンツ等を保有する。
また、サービス発行サーバ装置３００は、外部ユーザの登録に関する情報をネットワークから受信する。
サービス発行サーバ装置３００が受信する内容は、入力情報に相当する情報と暗号化外部ユーザ情報に相当する情報、外部ユーザのＩＤに相当する情報である。
入力情報「に相当する」情報、暗号化外部ユーザ情報「に相当する」情報、外部ユーザのＩＤ「に相当する」情報とするのは、サービス発行サーバ装置３００において照合処理を終えた後でないと、外部ユーザ端末１００から送信された適正な情報であると判別できないためである。
つまり、外部ユーザ端末１００から送信されている場合は、サービス発行サーバ装置３００は、外部ユーザ端末１００において入力された入力情報（外部ユーザ情報に一致する情報）、暗号化外部ユーザ情報、外部ユーザのＩＤを受信することになるが、サービス発行サーバ装置３００が情報を受信した段階では、照合処理の前なので、受信した情報が外部ユーザ端末１００からの入力情報、暗号化外部ユーザ情報、外部ユーザのＩＤなのか、第三者からの情報なのかは不明である。このため、受信段階では、「に相当する」情報と表現するのが正しい。
しかしながら、以下では、説明の便宜のため、サービス発行サーバ装置３００は、入力情報、暗号化外部ユーザ情報、外部ユーザのＩＤを受信すると表記する。
以降では、サービス発行サーバ装置３００は、サービス発行サーバ、サーバ装置、サーバともいう。
【００１３】
次に、外部ユーザ端末１００、内部ユーザ端末２００、サービス発行サーバ３００の内部構成について説明する。
１０１は情報受信部であり、送信された情報を取得する。外部ユーザ端末１００では１０１Ａ、サービス発行サーバ３００では１０１Ｃとしている。
１０２は外部ユーザ情報入力部であり、外部ユーザ情報を入力する。外部ユーザ端末１００では１０２Ａ、内部ユーザ端末２００では１０２Ｂとしている。
１０３は情報送信部であり、情報を送信する。外部ユーザ端末１００では１０３Ａ、内部ユーザ端末２００では１０３Ｂ、サービス発行サーバ３００では１０３Ｃとしている。
【００１４】
また、内部ユーザ端末２００において、２０１は署名部であり、秘密情報に対して電子署名をつける。
２０２は暗号化部であり、電子署名のついた秘密情報に暗号化を行う。
２０３は入力フォーム生成部であり、暗号化した情報に入力フォーム（入力依頼メッセージ）をつける。入力フォーム生成部２０３は、入力依頼メッセージ生成部の例である。
２０８は送信指示情報生成部であり、前述した送信指示情報を生成する。
【００１５】
また、サービス発行サーバ３００において、３０１は復号部であり、暗号化された情報を復号する。
３０２はデータ検証部であり、外部ユーザが入力した情報と内部ユーザが入力した情報を検証する。
３０３は鍵生成部であり、外部ユーザの秘密鍵を生成する。
３０４は追跡部であり、要求データから内部ユーザと外部ユーザの特定を行う。
【００１６】
次に、全体の動作の流れについて図１、図２、図３、図４を用いて述べる。
まず、内部ユーザ端末装置２００はサービスに参加させたい外部ユーザの情報を外部ユーザ情報として外部ユーザ情報入力部１０２Ｂで入力する（ステップＳ１１）。
具体的には図６のようなウィンドウを用いて内部ユーザに入力させる。入力する外部ユーザ情報は運用上あらかじめ決定している外部ユーザのメールアドレスや住所などのデータである。
次に、入力した外部ユーザ情報に署名部２０１を用いて電子署名をつける（ステップＳ１２）。
署名にはあらかじめ認証が完了している内部ユーザの秘密鍵を用いる。
この情報は（１）のように示される。
【００１７】
Ｓｉｇ＿内部ユーザ秘密鍵（外部ユーザ情報）                            （１）
【００１８】
次に、暗号化部２０２を用いて情報（１）を暗号化する（ステップＳ１３）。
暗号化する鍵は外部ユーザのＩＤ（公開鍵）である。
また、復号するために必要な外部ユーザＩＤ情報を添付する。この情報は上記（１）を用いて（２）のように示される。
【００１９】
（Ｅｎｃ＿外部ユーザＩＤ（（１）），外部ユーザＩＤ情報）              （２）
【００２０】
暗号化されたデータは入力フォーム生成部２０３を用いて入力フォームを付けられる（ステップＳ１４）。この情報は上記（１）を用いて（３）のように示される。
なお、入力フォームはマークアップ言語などを用いて生成する。
【００２１】
（Ｅｎｃ＿外部ユーザＩＤ（（１）），外部ユーザＩＤ情報，入力フォーム）（３）
【００２２】
また、送信指示情報生成部２０８が、情報（３）に制御情報等を追加して送信指示情報とする（ステップＳ１５）。
送信指示情報生成部２０８が追加する情報としては、例えば、サービス発行サーバ３００のＵＲＩ、上記の情報（３）と外部ユーザ端末１００で入力される入力情報とをサービス発行サーバ３００に送信するよう外部ユーザ端末１００に指示するコマンドやメッセージ等である。
【００２３】
次に、情報送信部１０３によって送信指示情報が外部ユーザ端末１００に送付される（ステップＳ１６）。
送付には電子メールなどを用いることができる。
【００２４】
外部ユーザ端末１００は送られた送信指示情報を情報受信部１０１Ａで受信する（ステップＳ２１）。
受信した送信指示情報に含まれる情報（３）には入力フォームが添付されているので、外部ユーザ情報入力部１０２Ａを用いて、その入力フォームに運用上あらかじめ決定している外部ユーザ情報を入力する（ステップＳ２２）。つまり、内部ユーザがＳ１１で入力した外部ユーザ情報と同じ情報を入力する。
具体例として図６のような入力フォームが送信されてくる。
この情報は上記（１）を用いて（４）のように示される。
【００２５】
（Ｅｎｃ＿外部ユーザＩＤ（（１）），外部ユーザＩＤ情報，入力フォーム（入力情報））                                                                  （４）
【００２６】
外部ユーザは情報送信部１０３Ａを用いてサービス発行サーバ３００に情報（４）を送付する（ステップＳ２３）。
送付にはｈｔｔｐｓなどセキュアなチャンネルを用いる。
【００２７】
サービス発行サーバ３００は、情報（４）を情報受信部１０１Ｃで受信する（ステップＳ３１）。
受信したデータから外部ユーザＩＤ情報を取得し、鍵生成部３０３を用いて、外部ユーザの秘密鍵を生成する（ステップＳ３２）。
復号部３０１では生成した外部ユーザの秘密鍵を用いて外部ユーザＩＤで暗号化された情報（１）を復号する。これは上記（１）を用いて（５）のように示される。
【００２８】
Ｄｅｃ＿外部ユーザ秘密鍵（Ｅｎｃ＿外部ユーザＩＤ（（１）））          （５）
【００２９】
次に、内部ユーザの電子署名つき情報（１）を取り出す（ステップＳ３３）。
その署名つき情報（１）と、上記（４）に添付された入力フォームの入力情報とをデータ検証部３０２で比較し、一致すれば外部ユーザのコミュニティへの参加を承認し、外部ユーザの登録成功とする（ステップＳ３４）。
登録成功の場合は、情報送信部１０３Ｃを用いて、外部ユーザの秘密鍵を送付する（ステップＳ３５）。
【００３０】
また、本実施の形態ではサーバ３００は、追跡部３０４を用いて、上記（４）のデータの署名値と外部ユーザＩＤ情報から登録許可フローを追跡することができる（図５のステップＳ３６）。
つまり、サーバ３００は、追跡部３０４を用いて、電子署名つき情報（１）の電子署名を抽出し、抽出した電子署名を用いて情報（１）の生成元を特定することが可能である。
そして、外部ユーザの秘密鍵が漏洩した場合などなんらかの問題が発生した場合、内部ユーザに責任を負わせてもよい。
【００３１】
このように、本実施の形態によれば、外部ユーザは特別なソフトをインストールする必要がなく、さらに鍵やパスワードといった情報の共有も必要がない、また、外部ユーザおよび内部ユーザがサーバに対して、住所やメールアドレスのような個人情報を登録する必要もない。このため、外部ユーザの登録における内部ユーザ及び外部ユーザの利便性を高めることができ、また、外部ユーザの登録において内部ユーザ端末及び外部ユーザ端末のリソースを消費しない。
また、内部ユーザ又は外部ユーザの住所やメールアドレスのような個人情報を登録する必要がないので、外部ユーザの登録においてサーバのリソースを消費しない。
また、暗号化及び電子署名を用いているので、盗聴やなりすましといった悪意ある第三者からの攻撃を防ぐことができ、また、悪意ある第三者は運用で用いる秘密情報を推測できない。
また、内部ユーザがどの外部ユーザに参加許可を出したのかをサーバが追跡できるので、内部ユーザが不正なユーザにデータを送付することを抑制することができる。
【００３２】
なお、上記の説明では、暗号化にＩＢＥを用いることとしたが、前提条件にＣＡを用いることで暗号化にはＩＢＥ以外の公開鍵暗号系を用いることが可能である。その場合、ＣＡには外部ユーザの公開鍵証明書が登録されていることとする。
【００３３】
また、上記の説明では、サーバは外部ユーザの秘密鍵生成機能、復号機能、署名の検証機能を有することしたが、サーバがこれら機能を有しない場合は、鍵生成サーバとして別途用意してもよい。
【００３４】
サーバは外部ユーザを登録する代わりに秘密鍵やパスワードなど今後、安全にセッションするための認証情報を外部ユーザに渡してもよい。
【００３５】
実施の形態２．
図７は、実施の形態２に係る全体構成例を示すブロック図であり、運用で入力する秘密情報を内部ユーザ及び外部ユーザ間で予め決定していなくても対応可能な構成となっている。
【００３６】
図７において、２０４は質問生成／選択部であり、質問を生成もしくは選択し、送信データにつける。
つまり、質問生成／選択部２０４は、外部ユーザに外部ユーザ情報を想起させる質問が示される質問メッセージを生成、選択する。
質問内容は内部ユーザに入力させてもよいし、あらかじめ定式化（あなたのペットは？、好きな映画は？など）して選択させてもよい。
なお、他の構成要素は、図１に示したものと同じであるため、説明は省略する。
【００３７】
全体の動作の流れについて、図７、図８を用いて述べる。
まず、内部ユーザ端末装置２００は、実施の形態１と同様のフローでステップＳ１１からステップＳ１４を行う。
図７に示される実施の形態２における内部ユーザ端末装置２００では、質問生成／選択部２０４が使用されている。この質問生成／選択部２０４は、外部ユーザが外部ユーザ情報を知らないもしくは安全上使用に問題が場合に用いる手段で、内部ユーザが外部ユーザに対して、外部ユーザ情報を回答させるような質問をフリースタイルもしくは、あらかじめ決められた問いから選択する機能である。
質問生成／選択部２０４は、ユーザから入力された内容又はユーザから選択された内容から質問メッセージを生成し、暗号化されたデータに質問メッセージを添付する（図８におけるステップＳ１７）。
これは上記（１）を用いて（６）のように示される。
【００３８】
（Ｅｎｃ＿外部ユーザＩＤ（（１）），外部ユーザＩＤ情報，入力フォーム，質問文）
（６）
【００３９】
この機能によって外部ユーザがあらかじめ運用で用いる外部ユーザ情報を知らない場合にも対処可能となる。
また、内部ユーザと外部ユーザしか知りえない情報をこの方式をもって用いることで安全性は確保される。その後ステップＳ１５を行う。
外部ユーザ端末装置１００およびサービス発行サーバ３００の流れについては実施の形態１とほぼ同様である。
実施の形態１と異なる点は、外部ユーザ端末１００において質問メッセージが表示され、外部ユーザは質問メッセージに答える形で入力フォームに情報を入力する。
【００４０】
このように、本実施の形態によれば、外部ユーザが把握している質問に対する回答を入力するだけで特定のコミュニティに参加できることが可能である。
また、質問に回答することで、外部ユーザと内部ユーザだけの既知情報を任意に変更でき、悪意ある第三者の攻撃を困難とすることができる。
【００４１】
実施の形態３．
図９は、実施の形態３に係る全体構成例を示すブロック図であり、内部ユーザ端末装置２００が時間付与部２０５により時間に署名をつけることで、内部ユーザ端末装置２００が生成した登録要求受付のタイムアウト処理をつけたものである。
【００４２】
図９において、２０５は時間付与部であり、内部ユーザが生成した登録要求の時間をつける。
つまり、時間付与部２０５は、内部ユーザの要求に基づいて時刻情報を外部ユーザ情報に付加する。
また、３０５は時間検証部であり、登録要求の時間とサーバの時間を比較し、その結果を用いてタイムアウト処理を行う。
つまり、時間検証部３０５は、時間付与部２０５により付加された時刻情報に示される時刻と現在時刻（外部ユーザ端末１００から情報を受信した時刻）との差が閾値以上である場合に、外部ユーザを承認しない。
なお、他の構成要素は、図１に示したものと同じであるため、説明は省略する。
【００４３】
全体の動作の流れについて、図９、図１０、図１１を用いて述べる。
内部ユーザ端末装置２００は、実施の形態１と同様のフローでステップＳ１１を行う。
次に、時間付与部２０５を用いて、内部ユーザが情報入力後に、入力時刻を示す時刻情報をつける（図１０におけるステップＳ１８）。
なお、時刻の取得は内部ユーザ端末２００のローカル時間もしくはタイムスタンプサーバなどどのような手段でもよい。
この情報は（７）のように示される。
【００４４】
Ｓｉｇ＿内部ユーザ秘密鍵（外部ユーザ情報，時刻）                      （７）
【００４５】
その後、実施の形態１と同様のフローでステップＳ１２からステップＳ１６を行う。つまり、本実施の形態では、暗号化の対象となるのは外部ユーザ情報及び時刻情報である。
また、外部ユーザ端末は実施の形態１と同様にステップＳ２１からステップＳ２３を行う。
【００４６】
サービス発行サーバ３００は実施の形態１と同様のフローでステップＳ３１からステップＳ３３を行う。
その後、時間検証部３０５を用いて、時間の閾値を設け、サーバの現在時刻（外部ユーザ端末１００からの受信時刻）と要求についている時刻（内部ユーザ端末２００で付加された時刻）の差分を検証する（図１１におけるステップＳ３６）。
不適当な時間の場合（閾値以上の場合）、検証失敗となり、外部ユーザを承認せず、登録しない。
なお、時刻の取得はサーバ３００のローカル時間もしくはタイムスタンプサーバなどどのような手段でもよい。
最後に、サーバ３００は、ステップＳ３４からステップＳ３５を行う。
【００４７】
実施の形態４．
図１２は、実施の形態４に係る全体構成例を示すブロック図であり、内部ユーザ端末装置２００がサーバ情報入力部２０６により参加要求にサーバ情報をつけることで、外部ユーザ端末装置１００が秘密鍵を取得後、サーバの情報を検証できるものである。
【００４８】
図１２において、１０４はサーバ情報検証部であり、要求についているサーバの識別情報を検証する。
また、２０６はサーバ情報入力部であり、内部ユーザが登録しているサーバの識別情報を入力する。
なお、他の構成要素は、図１に示したものと同じであるため、説明は省略する。
【００４９】
全体の動作の流れについて、図１２、図１３、図１４を用いて述べる。
内部ユーザ端末装置２００は実施の形態１と同様にステップＳ１１を行う。
次に、サーバ情報入力部２０６を用いて、内部ユーザがサーバの識別情報（サーバ名やＵＲＩなど）を入力する（図１３におけるステップＳ１９）。
その後、実施の形態１と同様にステップＳ１２からステップＳ１６を行う。
【００５０】
外部ユーザ端末装置１００は、実施の形態１と同様にステップＳ２１からステップＳ２３を行う。
サービス発行サーバ３００も実施の形態１と同様にステップＳ３１からステップＳ３５を行う。
【００５１】
秘密鍵受信後、外部ユーザ端末装置１００はサーバ情報検証部１０４を用いてサーバ名やＵＲＩを抽出し、それら情報からサービス発行サーバ３００が信頼できるものかどうか判断してもよい（図１４におけるステップＳ２４）。
この情報は（８）のように示される。
【００５２】
Ｓｉｇ＿内部ユーザ秘密鍵（外部ユーザ情報，サーバ情報）                （８）
【００５３】
内部ユーザとサービス発行サーバが結託することで、外部ユーザを悪意あるサーバの登録者にすることが可能となるため、本実施の形態では、これら機能を用いることで外部ユーザは秘密鍵を取得後、そのサービスを使用するかどうかの判断にこれらサーバの情報を検証することが可能となる。
【００５４】
このように、本実施の形態では、内部ユーザから送信されたコミュニティ参加要求にサーバ情報（サーバ名、ＵＲＩなど）をつけることをポリシーとし、さらにその情報を外部ユーザのＩＤ（公開鍵）で暗号化することしているので、外部ユーザは悪意ある内部ユーザと悪意あるサーバに結託された場合、外部ユーザ自身で結託された事実を判別である。より具体的には、外部ユーザはコミュニティに参加し、秘密鍵受信後、自身の登録要求を解析して自身がどのサーバに接続しているか確認できる。
【００５５】
実施の形態５．
図１５は、実施の形態５に係る全体構成例を示すブロック図であり、サービス発行サーバ３００が情報を検証した結果情報が不一致であった場合に、内部ユーザ端末装置２００に検証した情報を確認させることで、外部ユーザを登録するものである。
【００５６】
図１５において、２０７は登録許可部であり、内部ユーザが登録許可を出すための手段である。
つまり、登録許可部２０７は、サービス発行サーバ３００から受信した情報の内容から外部ユーザの承認が可能な場合に、サービス発行サーバ３００に外部ユーザの承認を依頼する情報（承認依頼情報）を生成する。登録許可部２０７は承認依頼情報生成部の例である。
また、本実施の形態では、内部ユーザ端末２００に情報受信部１０１Ｂが追加されている。情報受信部１０１はサービス発行サーバ３００からの情報を受信する。
なお、他の構成要素は、図１に示したものと同じであるため、説明は省略する。
【００５７】
全体の動作の流れについて、図１５、図１６、図１７を用いて述べる。
内部ユーザ端末装置２００は実施の形態２と同様のフローにてステップＳ１１からステップＳ１６まで行う。
また、外部ユーザ端末装置１００も実施の形態２と同様のフローを行う。
【００５８】
サービス発行サーバ３００はステップＳ３１からステップＳ３３を行う。
次にデータ検証部３０２用いて、検証を行う（図１６におけるステップＳ３７）。
質問などの回答は一致する可能性が必ずしも高くないため、情報が一致しない場合（ステップＳ３７で検証失敗）、サービス発行サーバ３００は、内部ユーザ端末装置２００に入力情報（外部ユーザの入力情報）を電子メールで送信する（ステップＳ３８）。
この情報は（９）のように示される。
【００５９】
（Ｅｎｃ＿内部ユーザ公開鍵（外部ユーザ情報，入力情報），内部ユーザ公開鍵情報）
（９）
【００６０】
内部ユーザ端末装置２００は、情報受信部１０１Ｂにより上記（９）の情報を受信し、内部ユーザが、受信した情報（９）を検証して、外部ユーザの登録の可否を判断する。
例えば、外部ユーザ情報と入力情報が同一ではないが近似している場合は、内部ユーザは外部ユーザの登録が可能と判断することができる。
そして、登録許可部２０７は、検証結果を示す情報を生成する。
この情報は（１０）のように示される。
また、情報送信部１０３Ｂは、この情報（１０）をサービス発行サーバ３００に送信する（図１７のステップＳ２０）。
登録可能な場合は、情報（１０）は、サーバ３００に外部ユーザの承認及び登録を依頼する情報（承認依頼情報）となる。
【００６１】
Ｓｉｇ＿内部ユーザ秘密鍵（検証結果）                                  （１０）
【００６２】
検証結果を受信したサービス発行サーバ３００は、検証結果が登録許可の場合、外部ユーザの承認及び登録を行い、情報送信部１０３Ｃにより、外部ユーザに秘密鍵を送信する。
【００６３】
このように、本実施の形態では、質問とその回答で外部ユーザの検証を行う場合、サービス発行サーバは完全に回答が一致しない場合、内部ユーザに回答を送付し、検証を成功させてよいか確認をとることができる。
【００６４】
なお、以上では、実施の形態２の方法に対応し、質問に対する外部ユーザの回答が内部ユーザが入力した外部ユーザ情報に一致しない場合に、サーバが内部ユーザ端末に登録許否の確認をとるものであったが、実施の形態１のように、外部ユーザが入力した入力情報が内部ユーザが入力した外部ユーザ情報に一致しない場合に、サーバが内部ユーザ端末に登録許否の確認をとるようにしてもよい。
【００６５】
最後に、実施の形態１〜５に示した外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００のハードウェア構成例について説明する。
図１８は、実施の形態１〜５に示す外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００のハードウェア資源の一例を示す図である。
なお、図１８の構成は、あくまでも外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００のハードウェア構成の一例を示すものであり、外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００のハードウェア構成は図１８に記載の構成に限らず、他の構成であってもよい。
【００６６】
図１８において、外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００は、プログラムを実行するＣＰＵ９１１（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ、中央処理装置、処理装置、演算装置、マイクロプロセッサ、マイクロコンピュータ、プロセッサともいう）を備えている。
ＣＰＵ９１１は、バス９１２を介して、例えば、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）９１３、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）９１４、通信ボード９１５、表示装置９０１、キーボード９０２、マウス９０３、磁気ディスク装置９２０と接続され、これらのハードウェアデバイスを制御する。
更に、ＣＰＵ９１１は、ＦＤＤ９０４（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、コンパクトディスク装置９０５（ＣＤＤ）、プリンタ装置９０６、スキャナ装置９０７と接続していてもよい。また、磁気ディスク装置９２０の代わりに、光ディスク装置、メモリカード（登録商標）読み書き装置などの記憶装置でもよい。
ＲＡＭ９１４は、揮発性メモリの一例である。ＲＯＭ９１３、ＦＤＤ９０４、ＣＤＤ９０５、磁気ディスク装置９２０の記憶媒体は、不揮発性メモリの一例である。これらは、記憶装置の一例である。
通信ボード９１５、キーボード９０２、マウス９０３、スキャナ装置９０７、ＦＤＤ９０４などは、入力装置の一例である。
また、通信ボード９１５、表示装置９０１、プリンタ装置９０６などは、出力装置の一例である。
【００６７】
通信ボード９１５は、図１に示すように、ネットワークに接続されている。例えば、通信ボード９１５は、ＬＡＮ（ローカルエリアネットワーク）、インターネット、ＷＡＮ（ワイドエリアネットワーク）などに接続されている。
【００６８】
磁気ディスク装置９２０には、オペレーティングシステム９２１（ＯＳ）、ウィンドウシステム９２２、プログラム群９２３、ファイル群９２４が記憶されている。
プログラム群９２３のプログラムは、ＣＰＵ９１１がオペレーティングシステム９２１、ウィンドウシステム９２２を利用しながら実行する。
【００６９】
また、ＲＡＭ９１４には、ＣＰＵ９１１に実行させるオペレーティングシステム９２１のプログラムやアプリケーションプログラムの少なくとも一部が一時的に格納される。
また、ＲＡＭ９１４には、ＣＰＵ９１１による処理に必要な各種データが格納される。
【００７０】
また、ＲＯＭ９１３には、ＢＩＯＳ（Ｂａｓｉｃ  Ｉｎｐｕｔ  Ｏｕｔｐｕｔ  Ｓｙｓｔｅｍ）プログラムが格納され、磁気ディスク装置９２０にはブートプログラムが格納されている。
外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００の起動時には、ＲＯＭ９１３のＢＩＯＳプログラム及び磁気ディスク装置９２０のブートプログラムが実行され、ＢＩＯＳプログラム及びブートプログラムによりオペレーティングシステム９２１が起動される。
【００７１】
上記プログラム群９２３には、実施の形態１〜５の説明において「〜部」として説明している機能を実行するプログラムが記憶されている。プログラムは、ＣＰＵ９１１により読み出され実行される。
【００７２】
ファイル群９２４には、実施の形態１〜５の説明において、「〜の判断」、「〜の計算」、「〜の比較」、「〜の生成」、「〜の更新」、「〜の設定」、「〜の登録」、「〜の選択」等として説明している処理の結果を示す情報やデータや信号値や変数値やパラメータが、「〜ファイル」や「〜データベース」の各項目として記憶されている。
「〜ファイル」や「〜データベース」は、ディスクやメモリなどの記録媒体に記憶される。ディスクやメモリなどの記憶媒体に記憶された情報やデータや信号値や変数値やパラメータは、読み書き回路を介してＣＰＵ９１１によりメインメモリやキャッシュメモリに読み出され、抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示などのＣＰＵの動作に用いられる。
抽出・検索・参照・比較・演算・計算・処理・編集・出力・印刷・表示のＣＰＵの動作の間、情報やデータや信号値や変数値やパラメータは、メインメモリ、レジスタ、キャッシュメモリ、バッファメモリ等に一時的に記憶される。
また、実施の形態１〜５で説明しているフローチャートの矢印の部分は主としてデータや信号の入出力を示し、データや信号値は、ＲＡＭ９１４のメモリ、ＦＤＤ９０４のフレキシブルディスク、ＣＤＤ９０５のコンパクトディスク、磁気ディスク装置９２０の磁気ディスク、その他光ディスク、ミニディスク、ＤＶＤ等の記録媒体に記録される。また、データや信号は、バス９１２や信号線やケーブルその他の伝送媒体によりオンライン伝送される。
【００７３】
また、実施の形態１〜５の説明において「〜部」として説明しているものは、「〜回路」、「〜装置」、「〜機器」であってもよく、また、「〜ステップ」、「〜手順」、「〜処理」であってもよい。すなわち、「〜部」として説明しているものは、ＲＯＭ９１３に記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェアのみ、或いは、素子・デバイス・基板・配線などのハードウェアのみ、或いは、ソフトウェアとハードウェアとの組み合わせ、さらには、ファームウェアとの組み合わせで実施されても構わない。ファームウェアとソフトウェアは、プログラムとして、磁気ディスク、フレキシブルディスク、光ディスク、コンパクトディスク、ミニディスク、ＤＶＤ等の記録媒体に記憶される。プログラムはＣＰＵ９１１により読み出され、ＣＰＵ９１１により実行される。すなわち、プログラムは、実施の形態１〜５の「〜部」としてコンピュータを機能させるものである。あるいは、実施の形態１〜５の「〜部」の手順や方法をコンピュータに実行させるものである。
【００７４】
このように、実施の形態１〜５に示す外部ユーザ端末１００、内部ユーザ端末２００、サーバ３００は、処理装置たるＣＰＵ、記憶装置たるメモリ、磁気ディスク等、入力装置たるキーボード、マウス、通信ボード等、出力装置たる表示装置、通信ボード等を備えるコンピュータであり、上記したように「〜部」として示された機能をこれら処理装置、記憶装置、入力装置、出力装置を用いて実現するものである。
【図面の簡単な説明】
【００７５】
【図１】実施の形態１に係るシステム構成例を示す図。
【図２】実施の形態１に係る内部ユーザ端末装置の動作例を示すフローチャート図。
【図３】実施の形態１に係る外部ユーザ端末装置の動作例を示すフローチャート図。
【図４】実施の形態１に係るサービス発行サーバ装置の動作例を示すフローチャート図。
【図５】実施の形態１に係る追跡部の動作例を示すフローチャート図。
【図６】実施の形態１に係る入力フォームの例を示す図。
【図７】実施の形態２に係るシステム構成例を示す図。
【図８】実施の形態２に係る内部ユーザ端末装置の動作例を示すフローチャート図。
【図９】実施の形態３に係るシステム構成例を示す図。
【図１０】実施の形態３に係る内部ユーザ端末装置の動作例を示すフローチャート図。
【図１１】実施の形態３に係るサービス発行サーバ装置の動作例を示すフローチャート図。
【図１２】実施の形態４に係るシステム構成例を示す図。
【図１３】実施の形態４に係る内部ユーザ端末装置の動作例を示すフローチャート図。
【図１４】実施の形態４に係る外部ユーザ端末装置の動作例を示すフローチャート図。
【図１５】実施の形態５に係るシステム構成例を示す図。
【図１６】実施の形態５に係るサービス発行サーバ装置の動作例を示すフローチャート図。
【図１７】実施の形態５に係る内部ユーザ端末装置の動作例を示すフローチャート図。
【図１８】実施の形態１〜５に係る外部ユーザ端末装置、内部ユーザ端末装置及びサービス発行サーバ装置のハードウェア構成例を示す図。
【符号の説明】
【００７６】
１００  外部ユーザ端末装置、１０１  情報受信部、１０２  外部ユーザ情報入力部、１０３  情報送信部、１０４  サーバ情報検証部、２００  内部ユーザ端末装置、２０１  署名部、２０２  暗号化部、２０３  入力フォーム生成部、２０４  質問生成／選択部、２０５  時間付与部、２０６  サーバ情報入力部、２０７  登録許可部、２０８  送信指示情報生成部、３００  サービス発行サーバ装置、３０１  復号部、３０２  データ検証部、３０３  鍵生成部、３０４  追跡部、３０５  時間検証部。
【図１】
0005106211.tif 000002
【図２】
0005106211.tif 000003
【図３】
0005106211.tif 000004
【図４】
0005106211.tif 000005
【図５】
0005106211.tif 000006
【図６】
0005106211.tif 000007
【図７】
0005106211.tif 000008
【図８】
0005106211.tif 000009
【図９】
0005106211.tif 000010
【図１０】
0005106211.tif 000011
【図１１】
0005106211.tif 000012
【図１２】
0005106211.tif 000013
【図１３】
0005106211.tif 000014
【図１４】
0005106211.tif 000015
【図１５】
0005106211.tif 000016
【図１６】
0005106211.tif 000017
【図１７】
0005106211.tif 000018
【図１８】
0005106211.tif 000019