(57)【特許請求の範囲】
【請求項１】
メッセージに対する署名データを生成し、前記署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名システムであって、
要求に応じて、前記署名データを生成した装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置と、
グループへの新たなメンバ登録を行うメンバ登録処理、及びグループのメンバとしての資格を失効させるメンバ失効処理を行うことによって、グループを管理するグループ管理装置と、
メッセージに対して、当該メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成する署名装置と、
前記署名装置からメッセージとグループ署名データとを受信し、前記受信したグループ署名データを認証する認証装置とを備え、
前記認証装置は、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求を前記メンバ状態判定装置に送信し、
前記メンバ状態判定装置は、前記認証装置からメンバ状態の判定要求を受信すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信し、
前記グループ管理装置は、
新たにグループのメンバとなるユーザの署名装置に、グループのメンバであることを示すメンバ登録証明書を発行し、
前記メンバ登録証明書と前記署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、
グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応するＩＤ情報を、前記メンバ状態判定装置に送信し、
前記署名装置は、
ユーザがグループに加入する際に、グループ署名データを生成するための暗号鍵であるグループ署名鍵を生成し、
メッセージと、乱数と、前記グループ管理装置によって発行されたメンバ登録証明書と、前記グループ署名鍵とにもとづいて、グループ署名データを生成し、
前記認証装置は、
署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置に前記メッセージ及び前記グループ署名データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
失効メンバの署名装置に対応するＩＤ情報のリストを、失効メンバのリストであるメンバ失効リストとして記憶し、
前記認証装置からメッセージ及びグループ署名データを受信し、
前記グループ署名データを認証すると、
グループ署名データを開封するための暗号鍵である開封情報を用いて、グループ署名データを生成した署名装置のＩＤ情報を特定し、
メンバ失効リストと前記特定したＩＤ情報とにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信するグループ署名システム。
【請求項２】
前記グループ管理装置は、失効メンバの署名装置に対応するメンバ登録証明書を、前記メンバ状態判定装置に送信し、
前記メンバ状態判定装置は、
失効メンバの署名装置に対応するメンバ登録証明書のリストを、メンバ失効リストとして記憶し、
前記認証装置からメッセージ及びグループ署名データを受信し、
前記グループ署名データを認証すると、
開封情報を用いて、グループ署名データがいずれのユーザの署名装置によって生成されたかを特定可能な情報である署名者特定用情報を生成し、
メンバ失効リストと前記生成した署名者特定用情報とにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項１記載のグループ署名システム。
【請求項３】
署名装置は、メッセージのハッシュ値を用いてグループ署名データを生成し、
前記認証装置は、
メッセージのハッシュ値を用いてグループ署名データの認証を行い、
グループ署名データがグループのうちのいずれかのメンバの装置によって作成されたものであると判断すると、前記メンバ状態判定装置にメッセージのハッシュ値とグループ署名データとを送信する
請求項１又は請求項２記載のグループ署名システム。
【請求項４】
署名装置は、
ユーザがグループに加入する際にグループ署名鍵を生成し、
メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、前記グループ署名鍵とにもとづいて、前記グループ管理装置又は前記メンバ状態判定装置が前記メンバ登録証明書を所定の変換によって復元可能なデータである変換データを含むグループ署名データを生成し、
前記認証装置は、
前記署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置にグループ署名データに含まれる前記変換データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
失効メンバの署名装置に対応するＩＤ情報のリストを、メンバ失効リストとして記憶し、
前記認証装置から変換データを受信すると、前記変換データにもとづいてメンバ登録証明書を復元したのち署名装置のＩＤ情報を特定し、
メンバ失効リストに前記ＩＤ情報が含まれるか否かを判断し、
前記メンバ失効リストに前記ＩＤ情報が含まれると判断すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態が現時点において失効していると判定し、
メンバ失効リストに前記ＩＤ情報が含まれないと判断すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態が現時点において有効であると判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項１記載のグループ署名システム。
【請求項５】
メッセージに対する署名データを生成し、前記署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名システムであって、
要求に応じて、前記署名データを生成した装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置と、
グループへの新たなメンバ登録を行うメンバ登録処理、及びグループのメンバとしての資格を失効させるメンバ失効処理を行うことによって、グループを管理するグループ管理装置と、
メッセージに対して、当該メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成する署名装置と、
前記署名装置からメッセージとグループ署名データとを受信し、前記受信したグループ署名データを認証する認証装置とを備え、
前記認証装置は、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求を前記メンバ状態判定装置に送信し、
前記メンバ状態判定装置は、前記認証装置からメンバ状態の判定要求を受信すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信し、
前記グループ管理装置は、
新たにグループのメンバとなるユーザの署名装置に、グループのメンバであることを示すメンバ登録証明書を発行し、
前記メンバ登録証明書と前記署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、
グループの有効なメンバの署名装置に対応するメンバ登録証明書と、メンバ状態が有効な状態であることを示す情報とを前記メンバ状態判定装置に送信し、
グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応するメンバ登録証明書と、メンバ状態が失効された状態であることを示す情報とを前記メンバ状態判定装置に送信し、
前記署名装置は、
ユーザがグループに加入する際に、グループ署名データを生成するための暗号鍵であるグループ署名鍵を生成し、
メッセージと、乱数と、前記グループ管理装置によって発行されたメンバ登録証明書と、前記グループ署名鍵とにもとづいて、前記グループ管理装置又は前記メンバ状態判定装置が前記メンバ登録証明書を所定の変換によって復元可能なデータである変換データを含むグループ署名データを生成し、
前記認証装置は、
前記署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置にグループ署名データに含まれる変換データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
メンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけた組のリストを、失効メンバのリストであるメンバ失効リストとして記憶し、
前記認証装置から変換データを受信すると、前記変換データにもとづいてメンバ登録証明書を復元し、
前記復元したメンバ登録証明書に対応する前記メンバ失効リストに含まれる状態情報にもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信するグループ署名システム。
【請求項６】
署名装置は、
ユーザがグループに加入する際にグループ署名鍵を生成し、
メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、前記グループ署名鍵とにもとづいて、前記グループ管理装置又は前記メンバ状態判定装置が前記メンバ登録証明書を所定の変換によって復元可能なデータである変換データと、前記変換データが当該署名装置によって生成されたことを示す証明データとを含むグループ署名データを生成し、
前記認証装置は、
前記署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置にグループ署名データに含まれる変換データ及び証明データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
前記認証装置から変換データ及び証明データを受信し、
前記証明データを認証すると、前記変換データにもとづいてメンバ登録証明書を復元し、
前記復元したメンバ登録証明書に対応するＩＤ情報を特定し、
メンバ失効リストと前記特定したＩＤ情報とにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項１記載のグループ署名システム。
【請求項７】
前記メンバ状態判定装置は、
前記認証装置から変換データ及び証明データを受信し、
前記証明データを認証すると、前記変換データにもとづいてメンバ登録証明書を復元し、
メンバ失効リストと前記復元したメンバ登録証明書とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項６記載のグループ署名システム。
【請求項８】
署名装置は、
ユーザがグループに加入する際にグループ署名鍵を生成し、
メッセージと、乱数と、前記グループ管理装置によって発行されたメンバ登録証明書と、前記グループ署名鍵とにもとづいて、前記グループ管理装置が前記メンバ登録証明書を所定の変換によって復元可能なデータであるの第１の変換データと、前記メンバ状態判定装置が前記メンバ登録証明書を所定の変換によって復元可能なデータであるの第２の変換データと、前記第２の変換データが当該署名装置によって生成されたことを示す第１の証明データと、前記第１の変換データと前記第２の変換データとが同じメンバ登録証明書を変換したデータであることを示す第２の証明データとを含むグループ署名データを生成し、
前記認証装置は、
前記署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置にグループ署名データに含まれる第２の変換データ及び第１の証明データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
前記認証装置から第２の変換データ及び第１の証明データを受信し、
前記第１の証明データを認証すると、前記第２の変換データにもとづいてメンバ登録証明書を復元し、
前記復元したメンバ登録証明書に対応するＩＤ情報を特定し、
メンバ失効リストと前記特定したＩＤ情報とにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項１記載のグループ署名システム。
【請求項９】
前記メンバ状態判定装置は、
前記認証装置から第２の変換データ及び第１の証明データを受信し、
前記第１の証明データを認証すると、前記第２の変換データにもとづいてメンバ登録証明書を復元し、
メンバ失効リストと前記復元したメンバ登録証明書とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項８記載のグループ署名システム。
【請求項１０】
メッセージに対する署名データを生成し、前記署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名システムであって、
要求に応じて、前記署名データを生成した装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置と、
グループへの新たなメンバ登録を行うメンバ登録処理、及びグループのメンバとしての資格を失効させるメンバ失効処理を行うことによって、グループを管理するグループ管理装置と、
メッセージに対して、当該メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成する署名装置と、
前記署名装置からメッセージとグループ署名データとを受信し、前記受信したグループ署名データを認証する認証装置とを備え、
前記認証装置は、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求を前記メンバ状態判定装置に送信し、
前記メンバ状態判定装置は、前記認証装置からメンバ状態の判定要求を受信すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信し、
前記グループ管理装置は、
新たにグループのメンバとなるユーザの署名装置に、グループのメンバであることを示すメンバ登録証明書、及びグループ署名データが当該ユーザの署名装置によって作成されたことを確認可能な情報である署名者確認用情報を発行し、
前記メンバ登録証明書と、前記署名者確認用情報と、前記署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、
グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応する署名者確認用情報を、前記メンバ状態判定装置に送信し、
前記署名装置は、
ユーザがグループに加入する際に、グループ署名データを生成するための暗号鍵であるグループ署名鍵を生成し、
メッセージと、乱数と、前記グループ管理装置によって発行されたメンバ登録証明書及び署名者確認用情報と、前記グループ署名鍵とにもとづいて、前記署名者確認用情報を所定の変換によって復元可能なデータである変換データを含むグループ署名データを生成し、
前記認証装置は、
前記署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置に前記メッセージ及びグループ署名データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
失効メンバの署名装置に対応する署名者確認用情報のリストを、失効メンバのリストであるメンバ失効リストとして記憶し、
前記認証装置からメッセージ及びグループ署名データを受信し、
前記グループ署名データを認証すると、
前記メンバ失効リストにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信するグループ署名システム。
【請求項１１】
前記グループ管理装置は、
新たにグループのメンバとなるユーザの署名装置に、メンバ登録証明書及び署名者確認用情報を発行し、
前記メンバ登録証明書と、前記署名者確認用情報と、前記署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、
グループの有効なメンバの署名装置に対応する署名者確認用情報と、メンバ状態が有効な状態であることを示す情報とを前記メンバ状態判定装置に送信し、
グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応する署名者確認用情報と、メンバ状態が失効された状態であることを示す情報とを前記メンバ状態判定装置に送信し、
前記認証装置は、
署名装置からメッセージとグループ署名データとを受信し、
前記メンバ状態判定装置にグループ署名データに含まれる変換データを送信することによって、前記グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、
前記メンバ状態判定装置は、
失効メンバに対応する署名者確認用情報のリストを、メンバ失効リストとして記憶し、
前記認証装置から前記変換データを受信し、
前記メンバ失効リストにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、
前記メンバ状態の判定結果を前記認証装置に送信する
請求項１０記載のグループ署名システム。
【請求項１２】
グループ管理装置は、グループ署名データを生成した署名装置を特定する署名装置特定手段を有する請求項１から請求項１１のうちのいずれか１項に記載のグループ署名システム。
【請求項１３】
メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置であって、
グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストを記憶する失効リスト記憶手段と、
グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する判定要求受信手段と、
前記判定要求受信手段が判定要求を受信すると、前記失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する状態判定手段と、
前記状態判定手段が判定したメンバ状態の判定結果を、通信ネットワークを介して前記認証装置に送信する判定結果送信手段とを備え、
前記失効リスト記憶手段は、失効メンバの装置に対応するＩＤ情報のリストを、メンバ失効リストとして記憶し、
前記判定要求受信手段は、メンバ状態の判定要求として、メッセージ及びグループ署名データを前記認証装置から受信し、
前記状態判定手段は、
前記判定要求受信手段が受信したメッセージ及びグループ署名データと、グループ署名データを開封するための暗号鍵である開封情報とを用いて、グループ署名データを生成した装置のＩＤ情報を特定し、
前記失効リスト記憶手段が記憶するメンバ失効リストと前記特定したＩＤ情報とにもとづいて、前記グループ署名データを生成した装置のユーザのメンバ状態を判定するメンバ状態判定装置。
【請求項１４】
メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置であって、
グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストを記憶する失効リスト記憶手段と、
グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する判定要求受信手段と、
前記判定要求受信手段が判定要求を受信すると、前記失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する状態判定手段と、
前記状態判定手段が判定したメンバ状態の判定結果を、通信ネットワークを介して前記認証装置に送信する判定結果送信手段とを備え、
前記失効リスト記憶手段は、失効メンバの装置に対応する、グループのメンバであることを示すメンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけたリストを、メンバ失効リストとして記憶し、
前記判定要求受信手段は、メンバ状態の判定要求として、メンバ登録証明書を所定の変換によって復元可能なデータである変換データを前記認証装置から受信し、
前記状態判定手段は、
前記判定要求受信手段が受信した変換データにもとづいてメンバ登録証明書を生成し、
前記失効リスト記憶手段が記憶するメンバ失効リストに含まれる状態情報のうち、前記生成したメンバ登録証明書に対応する状態情報にもとづいて、前記グループ署名データを生成した装置のユーザのメンバ状態を判定するメンバ状態判定装置。
【請求項１５】
メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置であって、
グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストを記憶する失効リスト記憶手段と、
グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する判定要求受信手段と、
前記判定要求受信手段が判定要求を受信すると、前記失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する状態判定手段と、
前記状態判定手段が判定したメンバ状態の判定結果を、通信ネットワークを介して前記認証装置に送信する判定結果送信手段とを備え、
前記失効リスト記憶手段は、失効メンバの装置に対応する、グループ署名データが特定のユーザの装置によって作成されたことを確認可能な情報である署名者確認用情報のリストを、メンバ失効リストとして記憶し、
前記判定要求受信手段は、メンバ状態の判定要求として、メッセージ及びグループ署名データを前記認証装置から受信し、
前記状態判定手段は、前記判定要求受信手段が受信したメッセージ及びグループ署名データと、前記失効リスト記憶手段が記憶する失効メンバリストに含まれる署名者確認用情報とにもとづいて、前記グループ署名データを生成した装置のユーザのメンバ状態を判定するメンバ状態判定装置。
【請求項１６】
メッセージに対する署名データを生成し、前記署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名方法であって、
署名データを生成する署名装置が、メッセージに対して、当該メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成するステップと、
前記署名装置が、生成したグループ署名データを、通信ネットワークを介して、署名データを認証する認証装置に送信するステップと、
前記認証装置が、前記署名装置から受信したグループ署名データを認証するステップと、
前記認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置に、通信ネットワークを介してメンバ状態の判定要求を送信するステップと、
前記メンバ状態判定装置が、前記認証装置からメンバ状態の判定要求を受信すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含み、
前記メンバ状態判定装置が、失効メンバの装置に対応するＩＤ情報のリストを、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストとして記憶するステップと、
署名装置が、メッセージ及びグループ署名データを、通信ネットワークを介して認証装置に送信するステップと、
前記認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求としてメッセージ及びグループ署名データを、通信ネットワークを介して前記メンバ状態判定装置に送信するステップと、
前記メンバ状態判定装置が、前記認証装置から受信したメッセージ及びグループ署名データと、グループ署名データを開封するための暗号鍵である開封情報とを用いて、グループ署名データを生成した署名装置のＩＤ情報を特定するステップと、
前記メンバ状態判定装置が、前記記憶したメンバ失効リストと前記特定したＩＤ情報とにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むグループ署名方法。
【請求項１７】
メッセージに対する署名データを生成し、前記署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名方法であって、
署名データを生成する署名装置が、メッセージに対して、当該メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成するステップと、
前記署名装置が、生成したグループ署名データを、通信ネットワークを介して、署名データを認証する認証装置に送信するステップと、
前記認証装置が、前記署名装置から受信したグループ署名データを認証するステップと、
前記認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置に、通信ネットワークを介してメンバ状態の判定要求を送信するステップと、
前記メンバ状態判定装置が、前記認証装置からメンバ状態の判定要求を受信すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含み、
前記メンバ状態判定装置が、失効メンバの装置に対応する、グループのメンバであることを示すメンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけたリストを、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストとして記憶するステップと、
前記認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求として、メンバ登録証明書を所定の変換によって復元可能なデータである変換データを、通信ネットワークを介して前記メンバ状態判定装置に送信するステップと、
前記メンバ状態判定装置が、前記認証装置から受信した変換データにもとづいてメンバ登録証明書を生成するステップと、
前記メンバ状態判定装置が、前記記憶したメンバ失効リストに含まれる状態情報のうち、前記生成したメンバ登録証明書に対応する状態情報にもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むグループ署名方法。
【請求項１８】
メッセージに対する署名データを生成し、前記署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名方法であって、
署名データを生成する署名装置が、メッセージに対して、当該メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成するステップと、
前記署名装置が、生成したグループ署名データを、通信ネットワークを介して、署名データを認証する認証装置に送信するステップと、
前記認証装置が、前記署名装置から受信したグループ署名データを認証するステップと、
前記認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置に、通信ネットワークを介してメンバ状態の判定要求を送信するステップと、
前記メンバ状態判定装置が、前記認証装置からメンバ状態の判定要求を受信すると、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含み、
前記メンバ状態判定装置が、失効メンバの装置に対応する、グループ署名データが特定のユーザの装置によって作成されたことを確認可能な情報である署名者確認用情報のリストを、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストとして記憶するステップと、
前記署名装置が、メッセージ及びグループ署名データを、通信ネットワークを介して認証装置に送信するステップと、
前記認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求としてメッセージ及びグループ署名データを、通信ネットワークを介して前記メンバ状態判定装置に送信するステップと、
前記メンバ状態判定装置が、前記認証装置から受信したメッセージ及びグループ署名データと、前記記憶した失効メンバリストに含まれる署名者確認用情報とにもとづいて、前記グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むグループ署名方法。
【請求項１９】
メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するためのメンバ状態判定プログラムであって、
グループのメンバとしての資格を失効されたユーザである失効メンバの装置に対応するＩＤ情報のリストを、メンバ失効リストとして記憶する失効リスト記憶手段を備えたコンピュータに、
グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する処理と、
前記認証装置から判定要求を受信すると、前記失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理と、
前記判定したメンバ状態の判定結果を、通信ネットワークを介して前記認証装置に送信する処理と、
メンバ状態の判定要求として、メッセージ及びグループ署名データを前記認証装置から受信する処理と、
前記認証装置から受信したメッセージ及びグループ署名データと、グループ署名データを開封するための暗号鍵である開封情報とを用いて、グループ署名データを生成した装置のＩＤ情報を特定する処理と、
前記失効リスト記憶手段が記憶するメンバ失効リストと前記特定したＩＤ情報とにもとづいて、前記グループ署名データを生成した装置のユーザのメンバ状態を判定する処理とを実行させるメンバ状態判定プログラム。
【請求項２０】
メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するためのメンバ状態判定プログラムであって、
グループのメンバとしての資格を失効されたユーザである失効メンバの装置に対応するグループのメンバであることを示すメンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけたリストを、メンバ失効リストとして記憶する失効リスト記憶手段を備えたコンピュータに、
グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する処理と、
前記認証装置から判定要求を受信すると、前記失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理と、
前記判定したメンバ状態の判定結果を、通信ネットワークを介して前記認証装置に送信する処理と、
メンバ状態の判定要求として、メンバ登録証明書を所定の変換によって復元可能なデータである変換データを前記認証装置から受信する処理と、
前記認証装置から受信した変換データにもとづいてメンバ登録証明書を生成する処理と、
前記失効リスト記憶手段が記憶するメンバ失効リストに含まれる状態情報のうち、前記生成したメンバ登録証明書に対応する状態情報にもとづいて、前記グループ署名データを生成した装置のユーザのメンバ状態を判定する処理とを実行させるメンバ状態判定プログラム。
【請求項２１】
メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するためのメンバ状態判定プログラムであって、
グループのメンバとしての資格を失効されたユーザである失効メンバの装置に対応するグループ署名データが特定のユーザの装置によって作成されたことを確認可能な情報である署名者確認用情報のリストを、メンバ失効リストとして記憶する失効リスト記憶手段を備えたコンピュータに、
グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する処理と、
前記認証装置から判定要求を受信すると、前記失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理と、
前記判定したメンバ状態の判定結果を、通信ネットワークを介して前記認証装置に送信する処理と、
メンバ状態の判定要求として、メッセージ及びグループ署名データを前記認証装置から受信する処理と、
前記認証装置から受信したメッセージ及びグループ署名データと、前記失効リスト記憶手段が記憶する失効メンバリストに含まれる署名者確認用情報とにもとづいて、前記グループ署名データを生成した装置のユーザのメンバ状態を判定する処理とを実行させるメンバ状態判定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、メンバ有効性確認可能なグループ署名システム、メンバ状態判定装置、グループ署名方法及びメンバ状態判定プログラムに関する。特に、本発明は、グループ署名データを検証する時点でグループ署名データを生成したユーザがグループの有効なメンバであるか失効しているかを、メンバ状態を問い合わせることによって判定することができるグループ署名システム、メンバ状態判定装置、グループ署名方法及びメンバ状態判定プログラムに関する。
【背景技術】
【０００２】
非特許文献１や非特許文献２には、あるグループに所属するユーザが、グループに所属していることを匿名性を保ったまま示す署名（グループ署名データ）を生成することができる署名システムであるグループ署名システムが記載されている。また、グループ署名システムは、必要に応じて、匿名のグループ署名データから実際の署名者を特定できる機能を備える。【０００３】
非特許文献１や非特許文献２に示されるように、一般に、グループ署名システムは、各種公開情報を記憶して開示する公開情報開示手段と、ユーザをグループに登録するメンバ登録手段と、グループ署名データを生成するグループ署名生成手段と、グループ署名データの正当性を検証するグループ署名検証手段と、グループ署名データから実際の署名者を特定する署名者追跡手段とを備える。【０００４】
非特許文献１や非特許文献２に記載されたグループ署名システムでは、グループメンバであるユーザの端末（グループ署名生成手段）は、メッセージ等を送信する際に署名データをメッセージ等に添付する。この場合、グループ署名生成手段は、メッセージ等が特定のユーザによって作成されたことを示す署名データではなく、グループ内のいずれかのメンバによって作成されたことを示すグループ署名データを生成する。また、メッセージ等を受信した認証端末（グループ署名認証手段）は、添付されたグループ署名データにもとづいて認証する。この場合、グループ署名認証手段は、メッセージ等が特定のユーザによって作成されたものであることを認証するのでなく、グループ内のいずれかのメンバによって作成されたものであることを認証する。【０００５】
グループ署名システムにおいて、グループを脱退したユーザが脱退前に取得した情報を用いて脱退後にも引き続き署名を作成することを防げるようにすることが望まれる。しかし、グループ署名システムで生成されたグループ署名データを用いる場合、グループ署名データを生成したユーザに関する情報をグループ署名データから知ることはできない。そのため、グループ署名システムにおいて、デジタル署名システムで用いられるような証明書失効リスト（ＣＲＬ；Certificate Revocation List ）によるメンバ失効方法を用いることはできない。そこで、グループ署名システムにおいて、脱退したユーザが署名を作成することを防止するために、署名者を表す値がメンバリストに含まれていることを証明するデータをグループ署名データとして用いることが考えられる。【０００６】
例えば、非特許文献３には、グループ署名システムのメンバ失効方法が記載されている。非特許文献３に記載されたメンバ失効方法では、グループ署名生成手段は、有効なメンバに対応する値で構成されるメンバリストに対して、署名者を表す値がメンバリストに含まれていることを証明するデータをグループ署名データとして出力する。
【非特許文献１】J. Camenisch and M. Stadler, Efficient Group Signature Schem es for Large Groups, "In Advances in Cryptology - CRYPTO '97", LNCS 1294, p. 410-424, Springer-Verlag, 1997.
【非特許文献２】G. Ateniese, J. Camenisch, M. Joye and G. Tsudik, A Practica l and Provable Secure Coalition-Resistant Group Signature Scheme, "In Advanc es in Cryptology - CRYPTO 2000", LNCS 1880, p.255-270, Springer-Verlag, 2000.
【非特許文献３】J. Camenisch and A. Lysyanskaya, Dynamic Accumulators and Ap plication to Efficient Revocation of Anonymous Credentials, "In Advances in  Cryptology - CRYPTO 2002", LNCS 2442, p.61-76, Springer-Verlag, 2002.
【発明の開示】
【発明が解決しようとする課題】
【０００７】
非特許文献１や非特許文献２に記載された従来のグループ署名システムでは、グループ内のいずれかのメンバが脱退するごとに、公開鍵や秘密鍵を含む全てのパラメータを更新なければならない。また、非特許文献３に記載された従来のグループ署名システムでは、グループの各メンバは、グループ内のいずれかのメンバが脱退しグループメンバの資格を失効されるごとに秘密鍵を更新しなければならない。例えば、グループの各メンバは、ＩＣカード等に記憶させている秘密鍵を、失効メンバが発生するごとに書き直さなければならない。そのため、従来のグループ署名システムでは、メンバ失効に関する処理が煩雑である。【０００８】
また、非特許文献３に記載された従来のグループ署名システムでは、グループ署名データを生成する時点でのメンバリストを用いてグループのメンバであることを示すデータを生成することができる。しかし、非特許文献３に記載された従来のグループ署名システムでは、署名を検証する時点でのグループメンバの有効性を確認することはできない。従って、署名を検証する際に、現時点においてメンバ資格を失効されているユーザによって作成されたメッセージであっても受理してしまう可能性がある。【０００９】
そこで、本発明は、メンバ失効に関する処理を効率よく行うことができるグループ署名システム、メンバ状態判定装置、グループ署名方法及びメンバ状態判定プログラムを提供することを目的とする。また、本発明は、グループ署名データを検証する時点でグループメンバの有効性を確認できるグループ署名システム、メンバ状態判定装置、グループ署名方法及びメンバ状態判定プログラムを提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明によるグループ署名システムは、メッセージに対する署名データを生成し、署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名システムであって、要求に応じて、署名データを生成した装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置（例えば、メンバ状態応答装置４によって実現される）を備えたことを特徴とする。【００１１】
また、グループ署名システムは、グループへの新たなメンバ登録を行うメンバ登録処理、及びグループのメンバとしての資格を失効させるメンバ失効処理を行うことによって、グループを管理するグループ管理装置と、メッセージに対して、メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成する署名装置と、署名装置からメッセージとグループ署名データとを受信し、受信したグループ署名データを認証する認証装置（例えば、検証装置３によって実現される）とを備えたものであってもよい。【００１２】
また、認証装置は、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求をメンバ状態判定装置に送信し、メンバ状態判定装置は、認証装置からメンバ状態の判定要求を受信すると、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。【００１３】
また、グループ管理装置は、新たにグループのメンバとなるユーザの署名装置に、グループのメンバであることを示すメンバ登録証明書を発行し、メンバ登録証明書と署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応するＩＤ情報を、メンバ状態判定装置に送信し、署名装置は、ユーザがグループに加入する際に、グループ署名データを生成するための暗号鍵であるグループ署名鍵を生成し、メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、グループ署名鍵とにもとづいて、グループ署名データを生成し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にメッセージ及びグループ署名データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、失効メンバの署名装置に対応するＩＤ情報のリストを、失効メンバのリストであるメンバ失効リストとして記憶し、認証装置からメッセージ及びグループ署名データを受信し、グループ署名データを認証すると、グループ署名データを開封するための暗号鍵である開封情報を用いて、グループ署名データを生成した署名装置のＩＤ情報を特定し、メンバ失効リストと特定したＩＤ情報とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。【００１４】
また、グループ管理装置は、失効メンバの署名装置に対応するメンバ登録証明書を、メンバ状態判定装置に送信し、メンバ状態判定装置は、失効メンバの署名装置に対応するメンバ登録証明書のリストを、メンバ失効リストとして記憶し、認証装置からメッセージ及びグループ署名データを受信し、グループ署名データを認証すると、開封情報を用いて、グループ署名データがいずれのユーザの署名装置によって生成されたかを特定可能な情報である署名者特定用情報を生成し、メンバ失効リストと生成した署名者特定用情報とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、グループ管理装置は、メンバ状態判定装置に、失効メンバの署名装置のＩＤ情報を送信しない。そのため、メンバ状態判定装置は、メッセージ及びグループ署名データを受け取っても、グループ署名データを生成した署名装置のＩＤ情報を特定することができない。従って、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００１５】
また、署名装置は、メッセージのハッシュ値を用いてグループ署名データを生成し、認証装置は、メッセージのハッシュ値を用いてグループ署名データの認証を行い、グループ署名データがグループのうちのいずれかのメンバの装置によって作成されたものであると判断すると、メンバ状態判定装置にメッセージのハッシュ値とグループ署名データとを送信するものであってもよい。そのような構成によれば、メンバ状態判定装置に送信するデータを、メッセージそのものではなくメッセージのハッシュ値に代えることができる。従って、認証装置は、メンバ状態判定装置にメッセージを秘匿することができる。【００１６】
また、署名装置は、ユーザがグループに加入する際にグループ署名鍵を生成し、メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、グループ署名鍵とにもとづいて、グループ管理装置又はメンバ状態判定装置がメンバ登録証明書を所定の変換によって復元可能なデータである変換データを含むグループ署名データを生成し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にグループ署名データに含まれる変換データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、失効メンバの署名装置に対応するＩＤ情報のリストを、メンバ失効リストとして記憶し、認証装置から変換データを受信すると、変換データにもとづいてメンバ登録証明書を復元したのち署名装置のＩＤ情報を特定し、メンバ失効リストにＩＤ情報が含まれるか否かを判断し、メンバ失効リストにＩＤ情報が含まれると判断すると、グループ署名データを生成した署名装置のユーザのメンバ状態が現時点において失効していると判定し、メンバ失効リストにＩＤ情報が含まれないと判断すると、グループ署名データを生成した署名装置のユーザのメンバ状態が現時点において有効であると判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、署名装置は、メンバ登録証明書の変換データを含むグループ署名データを出力する。また、メッセージ及びグループ署名データを受け取った認証装置は、メンバ状態判定装置に変換データのみを送信する。そのため、認証装置は、メンバ状態判定装置に対して、受け取ったメッセージを秘匿することができる。【００１７】
また、グループ管理装置は、新たにグループのメンバとなるユーザの署名装置に、グループのメンバであることを示すメンバ登録証明書を発行し、メンバ登録証明書と署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、グループの有効なメンバの署名装置に対応するメンバ登録証明書と、メンバ状態が有効な状態であることを示す情報とをメンバ状態判定装置に送信し、グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応するメンバ登録証明書と、メンバ状態が失効された状態であることを示す情報とをメンバ状態判定装置に送信し、署名装置は、ユーザがグループに加入する際に、グループ署名データを生成するための暗号鍵であるグループ署名鍵を生成し、メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、グループ署名鍵とにもとづいて、グループ管理装置又はメンバ状態判定装置がメンバ登録証明書を所定の変換によって復元可能なデータである変換データを含むグループ署名データを生成し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にグループ署名データに含まれる変換データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、メンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報（例えば、図１０に示すメンバ失効リスト記憶部４０２Ａが記憶するメンバ状態）とを対応づけた組のリストを、失効メンバのリストであるメンバ失効リストとして記憶し、認証装置から変換データを受信すると、変換データにもとづいてメンバ登録証明書を復元し、復元したメンバ登録証明書に対応するメンバ失効リストに含まれる状態情報にもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、認証装置は、メンバ状態判定装置に変換データのみを送信する。従って、認証装置は、メンバ状態判定装置に対して、受け取ったメッセージを秘匿することができる。また、グループ管理装置は、メンバ状態判定装置に、失効メンバの署名装置のＩＤ情報を送信しない。従って、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００１８】
また、署名装置は、ユーザがグループに加入する際にグループ署名鍵を生成し、メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、グループ署名鍵とにもとづいて、グループ管理装置又はメンバ状態判定装置がメンバ登録証明書を所定の変換によって復元可能なデータである変換データと、変換データが署名装置によって生成されたことを示す証明データとを含むグループ署名データを生成し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にグループ署名データに含まれる変換データ及び証明データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、認証装置から変換データ及び証明データを受信し、証明データを認証すると、変換データにもとづいてメンバ登録証明書を復元し、復元したメンバ登録証明書に対応するＩＤ情報を特定し、メンバ失効リストと特定したＩＤ情報とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、認証装置は、メンバ状態判定装置に変換データ及び証明データのみを送信する。そのため、認証装置は、メンバ状態判定装置に対して、受け取ったメッセージを秘匿することができる。また、メンバ状態判定装置は、証明データを確認することによって、認証装置から送られたデータがグループ署名データの一部であるか否かを確認することができる。【００１９】
また、メンバ状態判定装置は、認証装置から変換データ及び証明データを受信し、証明データを認証すると、変換データにもとづいてメンバ登録証明書を復元し、メンバ失効リストと復元したメンバ登録証明書とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、失効メンバの署名装置のＩＤ情報を用いずにメンバ状態を判定できるので、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００２０】
また、署名装置は、ユーザがグループに加入する際にグループ署名鍵を生成し、メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書と、グループ署名鍵とにもとづいて、グループ管理装置がメンバ登録証明書を所定の変換によって復元可能なデータであるの第１の変換データと、メンバ状態判定装置がメンバ登録証明書を所定の変換によって復元可能なデータであるの第２の変換データと、第２の変換データが署名装置によって生成されたことを示す第１の証明データと、第１の変換データと第２の変換データとが同じメンバ登録証明書を変換したデータであることを示す第２の証明データとを含むグループ署名データを生成し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にグループ署名データに含まれる第２の変換データ及び第１の証明データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、認証装置から第２の変換データ及び第１の証明データを受信し、第１の証明データを認証すると、第２の変換データにもとづいてメンバ登録証明書を復元し、復元したメンバ登録証明書に対応するＩＤ情報を特定し、メンバ失効リストと特定したＩＤ情報とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、署名装置は、グループ管理装置の開封情報を用いてメンバ登録証明書を復元できる第１の変換データと、メンバ状態判定装置の開封情報を用いてメンバ登録証明書を復元できる第２の変換データとを含むグループ署名データを出力する。そのため、グループ管理装置とメンバ状態判定装置とは、異なる開封情報を所有することができる。【００２１】
また、メンバ状態判定装置は、認証装置から第２の変換データ及び第１の証明データを受信し、第１の証明データを認証すると、第２の変換データにもとづいてメンバ登録証明書を復元し、メンバ失効リストと復元したメンバ登録証明書とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、失効メンバの署名装置のＩＤ情報を用いずにメンバ状態を判定できるので、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００２２】
また、グループ管理装置は、新たにグループのメンバとなるユーザの署名装置に、グループのメンバであることを示すメンバ登録証明書、及びグループ署名データがユーザの署名装置によって作成されたことを確認可能な情報である署名者確認用情報（例えば、メンバ追跡情報）を発行し、メンバ登録証明書と、署名者確認用情報と、署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応する署名者確認用情報を、メンバ状態判定装置に送信し、署名装置は、ユーザがグループに加入する際に、グループ署名データを生成するための暗号鍵であるグループ署名鍵を生成し、メッセージと、乱数と、グループ管理装置によって発行されたメンバ登録証明書及び署名者確認用情報と、グループ署名鍵とにもとづいて、署名者確認用情報を所定の変換によって復元可能なデータである変換データを含むグループ署名データを生成し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にメッセージ及びグループ署名データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、失効メンバの署名装置に対応する署名者確認用情報のリストを、失効メンバのリストであるメンバ失効リストとして記憶し、認証装置からメッセージ及びグループ署名データを受信し、グループ署名データを認証すると、メンバ失効リストにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。そのような構成によれば、署名装置は、署名者確認用情報の変換データをグループ署名データの一部として出力する。そして、メンバ状態判定装置は、変換データを用いてメンバ状態を判定する。従って、メンバ状態判定装置は、開封情報を用いずにメンバ状態を判定することができる。【００２３】
また、グループ管理装置は、新たにグループのメンバとなるユーザの署名装置に、メンバ登録証明書及び署名者確認用情報を発行し、メンバ登録証明書と、署名者確認用情報と、署名装置に対応するＩＤ情報とを、メンバ情報として記憶し、グループの有効なメンバの署名装置に対応する署名者確認用情報と、メンバ状態が有効な状態であることを示す情報とをメンバ状態判定装置に送信し、グループのメンバとしての資格を失効させたユーザである失効メンバの署名装置に対応する署名者確認用情報と、メンバ状態が失効された状態であることを示す情報とをメンバ状態判定装置に送信し、認証装置は、署名装置からメッセージとグループ署名データとを受信し、メンバ状態判定装置にグループ署名データに含まれる変換データを送信することによって、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを問い合わせ、メンバ状態判定装置は、失効メンバに対応する署名者確認用情報のリストを、メンバ失効リストとして記憶し、認証装置から変換データを受信し、メンバ失効リストにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定し、メンバ状態の判定結果を認証装置に送信するものであってもよい。【００２４】
また、グループ管理装置は、グループ署名データを生成した署名装置を特定する署名装置特定手段（例えば、署名者特定手段１０８によって実現される）を有するものであってもよい。【００２５】
また、グループ署名システムは、メッセージに対する署名データを生成し、署名データがグループのうちのいずれかのメンバの端末によって作成されたものであるか否かを認証するグループ署名システムであって、メッセージに対して、メッセージがグループのうちのいずれかのメンバの端末によって作成されたものであることを示す署名データであるグループ署名データを生成する署名端末（例えば、図１８に示すユーザ端末２Ａ）と、署名端末から、通信ネットワークを介してグループ署名データを受信し、受信したグループ署名データを認証する認証端末と、グループ署名データを生成した署名端末のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定サーバ（例えば、図１８に示すメンバ状態応答サーバ４Ａ）とを備え、認証端末は、グループ署名データがグループのうちのいずれかのメンバの署名端末によって作成されたものであると判断すると、メンバ状態の判定要求を通信ネットワークを介してメンバ状態判定サーバに送信し、メンバ状態判定サーバは、認証端末からメンバ状態の判定要求を受信すると、グループ署名データを生成した署名端末のユーザのメンバ状態を判定するものであってもよい。【００２６】
本発明によるメンバ状態判定装置は、メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定装置であって、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストを記憶する失効リスト記憶手段（例えば、メンバ失効リスト記憶部４０２によって実現される）と、グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する判定要求受信手段（例えば、署名開封手段４０４によって実現される）と、判定要求受信手段が判定要求を受信すると、失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する状態判定手段（例えば、メンバ状態判定手段４０７によって実現される）と、状態判定手段が判定したメンバ状態の判定結果を、通信ネットワークを介して認証装置に送信する判定結果送信手段（例えば、メンバ状態判定手段４０７によって実現される）とを備えたことを特徴とする。【００２７】
また、失効リスト記憶手段は、失効メンバの装置に対応するＩＤ情報のリストを、メンバ失効リストとして記憶し、判定要求受信手段は、メンバ状態の判定要求として、メッセージ及びグループ署名データを認証装置から受信し、状態判定手段は、判定要求受信手段が受信したメッセージ及びグループ署名データと、グループ署名データを開封するための暗号鍵である開封情報とを用いて、グループ署名データを生成した装置のＩＤ情報を特定し、失効リスト記憶手段が記憶するメンバ失効リストと特定したＩＤ情報とにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定するものであってもよい。【００２８】
また、失効リスト記憶手段は、失効メンバの装置に対応する、グループのメンバであることを示すメンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけたリストを、メンバ失効リストとして記憶し、判定要求受信手段は、メンバ状態の判定要求として、メンバ登録証明書を所定の変換によって復元可能なデータである変換データを認証装置から受信し、状態判定手段は、判定要求受信手段が受信した変換データにもとづいてメンバ登録証明書を生成し、失効リスト記憶手段が記憶するメンバ失効リストに含まれる状態情報のうち、生成したメンバ登録証明書に対応する状態情報にもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定するものであってもよい。そのような構成によれば、認証装置は、メンバ状態判定装置に変換データのみを送信する。従って、認証装置は、メンバ状態判定装置に対して、受け取ったメッセージを秘匿することができる。また、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００２９】
また、失効リスト記憶手段は、失効メンバの装置に対応する、グループ署名データが特定のユーザの装置によって作成されたことを確認可能な情報である署名者確認用情報のリストを、メンバ失効リストとして記憶し、判定要求受信手段は、メンバ状態の判定要求として、メッセージ及びグループ署名データを認証装置から受信し、状態判定手段は、判定要求受信手段が受信したメッセージ及びグループ署名データと、失効リスト記憶手段が記憶する失効メンバリストに含まれる署名者確認用情報とにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定するものであってもよい。そのような構成によれば、署名者確認用情報の変換データをグループ署名データの一部として出力する。また、メンバ状態判定装置は、変換データを用いてメンバ状態を判定する。従って、メンバ状態判定装置は、開封情報を用いずにメンバ状態を判定することができる。【００３０】
本発明によるグループ署名方法は、メッセージに対する署名データを生成し、署名データがグループのうちのいずれかのメンバの装置によって作成されたものであるか否かを認証するグループ署名方法であって、署名データを生成する署名装置が、メッセージに対して、メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成するステップと、署名装置が、生成したグループ署名データを、通信ネットワークを介して、署名データを認証する認証装置に送信するステップと、認証装置が、署名装置から受信したグループ署名データを認証するステップと、認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、グループ署名データを生成した署名装置のユーザが現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するメンバ状態判定サーバに、通信ネットワークを介してメンバ状態の判定要求を送信するステップと、メンバ状態判定サーバが、認証装置からメンバ状態の判定要求を受信すると、グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むことを特徴とする。【００３１】
また、グループ署名方法は、メンバ状態判定装置が、失効メンバの装置に対応するＩＤ情報のリストを、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストとして記憶するステップと、署名装置が、メッセージ及びグループ署名データを、通信ネットワークを介して認証装置に送信するステップと、認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求としてメッセージ及びグループ署名データを、通信ネットワークを介してメンバ状態判定装置に送信するステップと、メンバ状態判定装置が、認証装置から受信したメッセージ及びグループ署名データと、グループ署名データを開封するための暗号鍵である開封情報とを用いて、グループ署名データを生成した署名装置のＩＤ情報を特定するステップと、メンバ状態判定装置が、記憶したメンバ失効リストと特定したＩＤ情報とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むものであってもよい。【００３２】
また、グループ署名方法は、メンバ状態判定装置が、失効メンバの装置に対応する、グループのメンバであることを示すメンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけたリストを、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストとして記憶するステップと、認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求として、メンバ登録証明書を所定の変換によって復元可能なデータである変換データを、通信ネットワークを介してメンバ状態判定装置に送信するステップと、メンバ状態判定装置が、認証装置から受信した変換データにもとづいてメンバ登録証明書を生成するステップと、メンバ状態判定装置が、記憶したメンバ失効リストに含まれる状態情報のうち、生成したメンバ登録証明書に対応する状態情報にもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むものであってもよい。そのような構成によれば、認証装置は、メンバ状態判定装置に変換データのみを送信する。従って、認証装置は、メンバ状態判定装置に対して、受け取ったメッセージを秘匿することができる。また、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００３３】
また、グループ署名方法は、メンバ状態判定装置が、失効メンバの装置に対応する、グループ署名データが特定のユーザの装置によって作成されたことを確認可能な情報である署名者確認用情報のリストを、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストとして記憶するステップと、署名装置が、メッセージ及びグループ署名データを、通信ネットワークを介して認証装置に送信するステップと、認証装置が、グループ署名データがグループのうちのいずれかのメンバの署名装置によって作成されたものであると判断すると、メンバ状態の判定要求としてメッセージ及びグループ署名データを、通信ネットワークを介してメンバ状態判定装置に送信するステップと、メンバ状態判定装置が、認証装置から受信したメッセージ及びグループ署名データと、記憶した失効メンバリストに含まれる署名者確認用情報とにもとづいて、グループ署名データを生成した署名装置のユーザのメンバ状態を判定するステップとを含むものであってもよい。そのような構成によれば、署名者確認用情報の変換データをグループ署名データの一部として出力する。また、メンバ状態判定装置は、変換データを用いてメンバ状態を判定する。従って、メンバ状態判定装置は、開封情報を用いずにメンバ状態を判定することができる。【００３４】
本発明によるメンバ状態判定プログラムは、メッセージがグループのうちのいずれかのメンバの装置によって作成されたものであることを示す署名データであるグループ署名データを生成した装置のユーザが、現時点においてグループの有効なメンバとしての資格をもつか否かを示すメンバ状態を判定するためのメンバ状態判定プログラムであって、グループのメンバとしての資格を失効されたユーザである失効メンバのリストであるメンバ失効リストを記憶する失効リスト記憶手段を備えたコンピュータに、グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する処理と、認証装置から判定要求を受信すると、失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理と、判定したメンバ状態の判定結果を、通信ネットワークを介して認証装置に送信する処理とを実行させることを特徴とする。【００３５】
また、メンバ状態判定プログラムは、失効メンバの装置に対応するＩＤ情報のリストを、メンバ失効リストとして記憶する失効リスト記憶手段を備えたコンピュータに、メンバ状態の判定要求として、メッセージ及びグループ署名データを認証装置から受信する処理と、認証装置から受信したメッセージ及びグループ署名データと、グループ署名データを開封するための暗号鍵である開封情報とを用いて、グループ署名データを生成した装置のＩＤ情報を特定する処理と、失効リスト記憶手段が記憶するメンバ失効リストと特定したＩＤ情報とにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理とを実行させるものであってもよい。【００３６】
また、メンバ状態判定プログラムは、失効メンバの装置に対応する、グループのメンバであることを示すメンバ登録証明書と、メンバ状態が有効な状態又は失効された状態であることを示す状態情報とを対応づけたリストを、メンバ失効リストとして記憶する失効リスト記憶手段を備えたコンピュータに、メンバ状態の判定要求として、メンバ登録証明書を所定の変換によって復元可能なデータである変換データを認証装置から受信する処理と、認証装置から受信した変換データにもとづいてメンバ登録証明書を生成する処理と、失効リスト記憶手段が記憶するメンバ失効リストに含まれる状態情報のうち、生成したメンバ登録証明書に対応する状態情報にもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理とを実行させるものであってもよい。そのような構成によれば、認証装置は、メンバ状態判定装置に変換データのみを送信する。従って、認証装置は、メンバ状態判定装置に対して、受け取ったメッセージを秘匿することができる。また、メンバ状態判定装置に対して、各署名装置のＩＤ情報を秘匿することができる。【００３７】
また、メンバ状態判定プログラムは、失効メンバの装置に対応する、グループ署名データが特定のユーザの装置によって作成されたことを確認可能な情報である署名者確認用情報のリストを、メンバ失効リストとして記憶する失効リスト記憶手段を備えたコンピュータに、メンバ状態の判定要求として、メッセージ及びグループ署名データを認証装置から受信する処理と、認証装置から受信したメッセージ及びグループ署名データと、失効リスト記憶手段が記憶する失効メンバリストに含まれる署名者確認用情報とにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理とを実行させるものであってもよい。そのような構成によれば、署名者確認用情報の変換データをグループ署名データの一部として出力する。また、メンバ状態判定装置は、変換データを用いてメンバ状態を判定する。従って、メンバ状態判定装置は、開封情報を用いずにメンバ状態を判定することができる。
【発明の効果】
【００３８】
本実施の形態によれば、メンバ状態を判定するメンバ状態判定装置を新たに導入する。また、グループ署名データを認証する際に、グループ署名データを生成した装置のユーザがメンバ資格を失効されているか否かを、メンバ状態判定装置に問い合わせる。メンバ状態の有効性の判断をメンバ状態判定装置に任せることができるので、失効メンバが発生する際に秘密鍵等のパラメータを更新する必要をなくすことができる。従って、メンバ失効に関する処理を効率よく行えるようにすることができる。
【発明を実施するための最良の形態】
【００３９】
実施の形態１．
以下、本発明の第１の実施の形態を図面を参照して説明する。図１は、本発明によるグループ署名システムの構成の一例を示すブロック図である。図１に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。また、図２は、図１に示すグループ署名システムの詳細構成の一例を示すブロック図である。【００４０】
グループ管理装置１は、例えば、グループを管理するサーバによって実現される。本実施の形態では、グループ管理装置１は、グループへの新たなメンバ登録を行うメンバ登録処理や、グループのメンバとしての資格を失効させるメンバ失効処理を行うことによって、グループを管理する。図２に示すように、グループ管理装置１は、公開情報開示手段１０１と、メンバ登録用情報記憶部１０２と、メンバ登録手段１０３と、メンバ情報記憶部１０４と、失効メンバ通知手段１０５と、開封情報記憶部１０６と、署名開封手段１０７と、署名者特定手段１０８とを含む。【００４１】
公開情報開示手段１０１は、例えば、サーバのＣＰＵ、記憶装置及びネットワークインタフェース部によって実現される。公開情報開示手段１０１は、システムで使用する各種の公開情報を記憶し、インターネット等のネットワークを介してアクセス可能な全ての装置が自由に参照できるように開示する機能を備える。本実施の形態では、グループの各メンバが使用する端末においてメッセージを作成する場合に、メッセージがグループのうちのいずれかのメンバの署名装置２によって作成されたものであることを示す署名データ（グループ署名データという）が作成される。例えば、公開情報開示手段１０１は、グループ署名データを認証するためのグループ公開鍵を公開情報として記憶し、インターネットを介してアクセス可能な全ての端末にグループ公開鍵を公開する。【００４２】
メンバ登録情報記憶部１０２は、例えば、サーバの記憶装置によって実現される。メンバ登録用情報記憶部１０２は、メンバ登録手段１０３がメンバ登録の処理を行う際に用いるメンバ登録用情報を記憶する。なお、「メンバ登録用情報」とは、メンバ登録手段１０３がメンバ登録用のメンバ登録証明書を生成するために用いる暗号鍵（本実施の形態では、秘密鍵）である。【００４３】
メンバ登録手段１０３は、例えば、サーバのＣＰＵ及びネットワークインタフェース部によって実現される。メンバ登録手段１０３は、署名装置２のグループ加入手段２０１と通信し、メンバ登録用情報を用いてメンバ登録証明書を発行する機能を備える。本実施の形態では、メンバ登録手段１０３は、単独でメンバ登録証明書を生成するのではなく、グループ加入手段２０１と共同してメンバ登録証明書を生成することによって、署名装置２に対してメンバ登録証明書を発行する。本実施の形態では、メンバ登録手段１０３は、所定のアルゴリズムに従って生成したデータをグループ加入手段２０１に送信し、又はグループ加入手段２０１から受信したデータを所定のアルゴリズムに従って処理することによって、メンバ登録証明書を生成する。【００４４】
また、メンバ登録手段１０３は、生成したメンバ登録証明書と、署名装置２を特定できるＩＤ情報とを合わせてメンバ情報記憶部１０４に記憶させる機能を備える。この場合、例えば、メンバ登録手段１０３は、メンバ登録証明書を生成するやりとりの際にグループ加入手段２０１から受信したデータに添付された署名データを、ＩＤ情報としてメンバ情報記憶部１０４に記憶させる。【００４５】
メンバ情報記憶部１０４は、例えば、サーバの記憶装置によって実現される。メンバ情報記憶部１０４は、メンバ登録手段１０３が出力したメンバ登録証明書とＩＤ情報とを対応づけて記憶する。図３は、メンバ情報記憶部１０４が記憶する情報の一例を示す説明図である。図３に示すように、例えば、メンバ情報記憶部１０４は、メンバ登録証明書とＩＤ情報との対を、署名装置２を示すメンバ情報として署名装置２ごとに記憶する。【００４６】
失効メンバ通知手段１０５は、例えば、サーバのＣＰＵ及びネットワークインタフェース部によって実現される。失効メンバ通知手段１０５は、グループメンバとしての資格を失ったユーザの署名装置２に対応するＩＤ情報をメンバ情報記憶部１０４から読み出し、メンバ状態応答装置４に通知する機能を備える。例えば、グループ署名システムの管理者によっていずれかのメンバの資格失効操作が行われ失効メンバの情報が入力されると、失効メンバ通知手段１０５は、メンバ情報記憶部１０４から、資格失効されたメンバの署名装置２に対応するＩＤ情報を抽出する。そして、失効メンバ通知手段１０５は、抽出したＩＤ情報を、メンバ状態応答装置４に送信する。【００４７】
開封情報記憶部１０６は、例えば、サーバの記憶装置によって実現される。開封情報記憶部１０６は、署名開封手段１０７が署名データを開封する際に用いる開封情報を記憶する。なお、「開封情報」とは、グループ署名データを開封するための暗号鍵（本実施の形態では、秘密鍵）である。【００４８】
署名開封手段１０７は、例えば、サーバのＣＰＵ及びネットワークインタフェース部によって実現される。署名開封手段１０７は、検証で受理されるグループ署名データとメッセージとを受け取る（受信する）機能を備える。また、署名開封手段１０７は、グループ署名データ及びメッセージと開封情報記憶部１０６が記憶する開封情報とを用いて、グループ署名データを生成した署名装置２を特定するための署名者特定用情報を生成する機能を備える。なお、本実施の形態では、署名者特定用情報は、所定のアルゴリズムに従って求められる数値情報であり、グループ署名データがいずれのユーザの署名装置２によって生成されたかを特定可能な情報である。また、署名開封手段１０７は、生成した署名者特定用情報を署名者特定手段１０８に出力する機能を備える。【００４９】
署名者特定手段１０８は、例えば、サーバのＣＰＵによって実現される。署名者特定手段１０８は、署名開封手段１０７から入力した署名者特定用情報及びメンバ情報記憶部１０４が記憶するメンバ情報を用いて、グループ署名データを生成した署名装置２を特定する機能を備える。また、署名者特定手段１０８は、特定した署名装置２のＩＤ情報を出力する機能を備える。【００５０】
署名装置２は、グループのメンバであるユーザが使用する装置であり、例えば、パーソナルコンピュータ等の情報処理端末によって実現される。図２に示すように、署名装置２は、グループ加入手段２０１と、メンバ登録証明書記憶部２０２と、グループ署名鍵記憶部２０３と、メッセージ入力手段２０４と、乱数生成器２０５と、グループ署名生成手段２０６とを含む。【００５１】
グループ加入手段２０１は、例えば、情報処理端末のＣＰＵ及びネットワークインタフェース部によって実現される。グループ加入手段２０１は、グループ管理装置１のメンバ登録手段１０３と通信し、メンバ登録証明書と、グループ署名データを生成するための暗号鍵（本実施の形態では、秘密鍵）であるグループ署名鍵とを生成する機能を備える。また、グループ加入手段２０１は、生成したメンバ登録証明書とグループ署名鍵とを、メンバ登録証明書記憶部２０２とグループ署名鍵記憶部２０３とにそれぞれ出力する機能を備える。【００５２】
本実施の形態では、グループ加入手段２０１は、単独でメンバ登録証明書を生成するのではなく、メンバ登録手段１０３と共同してメンバ登録証明書を生成することによって、グループ管理装置１によってメンバ登録証明書を発行される。そして、グループ加入手段２０１は、生成したメンバ登録証明書をメンバ登録証明書記憶部２０２に出力する。なお、グループ加入手段２０１は、メンバ登録手段１０３とのやりとりを通じて、メンバ登録手段１０３が生成するメンバ登録証明書と同一のメンバ登録証明書を生成する。メンバ登録証明書は、グループ公開鍵とメンバ登録用情報を入力として計算される。【００５３】
また、例えば、グループ加入手段２０１は、単独でグループ署名鍵を生成するのではなく、メンバ登録手段１０３と共同してグループ署名鍵を生成する。この場合、例えば、グループ加入手段２０１は、所定のアルゴリズムに従って生成したデータをメンバ登録手段１０３に送信し、又はメンバ登録手段１０３から受信したデータを所定のアルゴリズムに従って処理することによって、グループ署名鍵を生成する。そして、グループ加入手段２０１は、生成したグループ署名鍵をグループ署名鍵記憶部２０３に出力する。なお、例えば、グループ加入手段２０１は、メンバ登録手段１０３とやりとりすることなく、単独でグループ署名鍵を生成しグループ署名鍵記憶部２０３に出力してもよい。ただし、いずれの場合においても、グループ署名鍵はメンバ管理装置１に知られないように秘密に記憶する。これにより、グループ管理装置１であっても、署名者特定手段１０８で署名装置２が生成したと特定されるようなグループ署名データを生成することができない。【００５４】
メンバ登録証明書記憶部２０２及びグループ署名鍵記憶部２０３は、例えば、情報処理端末の記憶装置によって実現される。メンバ登録証明書記憶部２０２は、グループ加入手段２０１から出力されたメンバ登録証明書を記憶する。また、グループ署名鍵記憶部２０３は、グループ加入手段２０１から出力されたグループ署名鍵を記憶する。【００５５】
メッセージ入力手段２０４は、例えば、情報処理端末のＣＰＵ、及びキーボードやマウス等の入力装置によって実現される。メッセージ入力手段２０４は、グループのメンバであるユーザの操作に従ってグループ署名データを付与すべきメッセージを入力し、グループ署名生成手段２０６に出力する機能を備える。乱数生成器２０５は、グループ署名生成手段２０６が署名データを生成する際に用いる乱数を生成する機能を備える。【００５６】
グループ署名生成手段２０６は、例えば、情報処理端末のＣＰＵによって実現される。グループ署名生成手段２０６は、メッセージ、乱数、メンバ登録証明書及びグループ署名鍵にもとづいて、署名装置２がグループ管理装置１に正しく登録したグループメンバの装置であることを示すグループ署名データを生成し出力する機能を備える。【００５７】
なお、グループ署名生成手段２０６は、署名装置２を特定できる情報を明かさずに示すグループ署名データ（ユーザがグループに所属していることを匿名性を保ったまま示す署名）を出力する。例えば、メッセージを受信した検証装置３は、グループ署名データにもとづいて認証を行うことによって、メッセージがグループ内のいずれかのメンバによって生成されたものであることを知ることができる。しかし、検証装置３は、グループ署名データにもとづいて、メンバ登録証明書やグループ署名鍵を暗号学的に復元することはできない。従って、検証装置３は、メッセージがグループ内のいずれのメンバによって作成されたかまでは特定できず、ユーザの匿名性が保たれる。【００５８】
検証装置３は、署名装置２から受信したグループ署名データを検証（認証）する装置であり、例えば、パーソナルコンピュータ等の情報処理端末によって実現される。検証装置３は、グループ署名データを認証し、メッセージを受理するか不受理とするかの検証結果を出力する機能を備える。図２に示すように、検証装置３は、グループ署名検証手段３０１と、検証結果出力手段３０２とを含む。【００５９】
グループ署名検証手段３０１は、例えば、情報処理端末のＣＰＵ及びネットワークインタフェース部によって実現される。グループ署名検証手段３０１は、署名装置２からメッセージとグループ署名データとを受け取り（受信し）、グループ署名データの正当性を調べる機能を備える。本実施の形態では、グループ署名検証手段３０１は、グループ管理装置１が公開する公開情報を用いて、グループ署名データを認証する。また、グループ署名検証手段３０１は、グループ署名データが正当でないと判断した場合、「不受理」と判定し検証結果を出力する機能を備える。【００６０】
また、グループ署名検証手段３０１は、グループ署名データが正当であると判断した場合、グループ署名データを生成した署名装置２が有効なグループメンバの装置であるか否かを確認するために、メッセージとグループ署名データとをメンバ状態応答装置４の署名開封手段４０４に送信する機能を備える。すなわち、グループ署名検証手段３０１は、メッセージとグループ署名データとを送信することによって、メッセージを作成したユーザが現在も有効なグループメンバであるか、又は既に資格を失効されたメンバであるかを示すメンバ状態を問い合わせる。【００６１】
検証結果出力手段３０２は、例えば、情報処理端末のＣＰＵ及びネットワークインタフェース部によって実現される。検証結果出力手段３０２は、メンバ状態応答装置４のメンバ状態判定手段４０７からメンバ状態の判定結果を受信する機能を備える。また、検証結果出力手段３０２は、受信した判定結果が「有効」である場合には「受理」と判定し、受信した判定結果が「失効」である場合には「不受理」と判定し、「受理」又は「不受理」の検証結果を出力する機能を備える。【００６２】
メンバ状態応答装置４は、例えば、各グループメンバのメンバ状態を判定するサーバによって実現される。図２に示すように、メンバ状態応答装置４は、失効メンバ受信手段４０１と、メンバ失効リスト記憶部４０２と、開封情報記憶部４０３と、署名開封手段４０４と、メンバ情報記憶部４０５と、署名者特定手段４０６と、メンバ状態判定手段４０７とを含む。【００６３】
失効メンバ受信手段４０１は、例えば、サーバのＣＰＵ及びネットワークインタフェース部によって実現される。失効メンバ受信手段４０１は、失効メンバ通知手段１０５から送信された失効メンバのＩＤ情報を受信し、メンバ失効リスト記憶部４０２に記憶させる機能を備える。【００６４】
メンバ失効リスト記憶部４０２及び開封情報記憶部４０３は、例えば、サーバの記憶装置によって実現される。メンバ失効リスト記憶部４０２は、グループメンバの資格を失効されたメンバ（失効メンバ）のリストであるメンバ失効リストを記憶する。図４は、メンバ失効リスト記憶部４０２が記憶する情報の一例を示す説明図である。図４に示すように、例えば、メンバ失効リスト記憶部４０２は、メンバ失効リストとして、資格失効されたメンバの署名装置２を示すＩＤ情報の集合を記憶する。開封情報記憶部４０３は、グループ管理装置１の開封情報記憶部１０６が記憶する開封情報と同じ情報内容の開封情報を記憶する。【００６５】
署名開封手段４０４は、例えば、サーバのＣＰＵ及びネットワークインタフェース部によって実現される。署名開封手段４０４は、検証装置３のグループ署名検証手段３０１からメッセージ及びグループ署名データを受信する機能を備える。また、署名開封手段４０４は、受信したメッセージ及びグループ署名データと、開封情報記憶部４０３が記憶する開封情報と、公開情報開示手段１０１が開示する各種公開情報とを用いて、グループ署名データを生成した署名装置２を特定するための署名者特定用情報を生成する機能を備える。また、署名開封手段４０４は、生成した署名者特定用情報を署名者特定手段４０６に出力する機能を備える。【００６６】
メンバ情報記憶部４０５は、例えば、サーバの記憶装置によって実現される。メンバ情報記憶部４０５は、グループ管理装置１のメンバ情報記憶部１０４が記憶するメンバ情報と同じ情報内容のメンバ情報を記憶する。なお、メンバ情報記憶部４０５が記憶するメンバ情報は、何らかの方法でグループ管理装置１からメンバ状態応答装置４に通知される。例えば、メンバ状態応答装置４は、予めメンバ情報をグループ管理装置１から受信し、受信したメンバ情報をメンバ情報記憶部４０５に記憶させる。【００６７】
署名者特定手段４０６は、例えば、サーバのＣＰＵによって実現される。署名者特定手段４０６は、署名開封手段４０４から署名者特定用情報を受け取り、署名者特定用情報とメンバ情報記憶部４０５が記憶するメンバ情報とを用いて、グループ署名データを生成した署名装置２のＩＤ情報を特定する機能を備える。また、署名者特定手段４０６は、特定したＩＤ情報をメンバ状態判定手段４０７に出力する機能を備える。【００６８】
メンバ状態判定手段４０７は、例えば、サーバのＣＰＵ及びネットワークインタフェース部によって実現される。メンバ状態判定手段４０７は、署名開封手段４０６からＩＤ情報を受け取り、メンバ失効リストを用いてＩＤ情報に対応する署名装置２が有効なグループメンバの装置であるか否かを調べる機能を備える。【００６９】
本実施の形態では、メンバ状態判定手段４０７は、署名者特定手段４０６が特定したＩＤ情報とメンバ失効リスト記憶部４０２が記憶するメンバ失効リストとを照合し、特定したＩＤ情報に一致する情報がメンバ失効リストに含まれるか否かを判断する。一致するＩＤ情報が含まれると判断すると、メンバ状態判定手段４０７は、メンバ状態を「失効」と判定する。また、一致するＩＤ情報が含まれないと判断すると、メンバ状態判定手段４０７は、メンバ状態を「有効」と判定する。【００７０】
また、メンバ状態判定手段４０７は、有効又は失効を示すメンバ状態を含む応答データを、検証装置３の検証結果出力手段３０２に送信する機能を備える。【００７１】
なお、本実施の形態において、メンバ状態応答装置４の記憶装置は、メンバ状態を判定するための各種プログラムを記憶している。例えば、メンバ状態応答装置４の記憶装置は、コンピュータに、グループ署名データを認証する認証装置から、通信ネットワークを介してメンバ状態の判定要求を受信する処理と、認証装置から判定要求を受信すると、失効リスト記憶手段が記憶するメンバ失効リストにもとづいて、グループ署名データを生成した装置のユーザのメンバ状態を判定する処理と、判定したメンバ状態の判定結果を、通信ネットワークを介して認証装置に送信する処理とを実行させるためのメンバ状態判定プログラムを記憶している。【００７２】
次に、動作について説明する。図５は、グループ署名システムがメッセージに添付されたグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の一例を示す流れ図である。以下、図２及び図５を参照して、グループ署名システムの動作を説明する。【００７３】
まず、ユーザが新規にグループに加入する際に、ユーザをメンバとして登録するグループ加入処理の動作を説明する。署名装置２は、グループに加入するために、グループ管理装置１と通信して登録処理を行う。署名装置２のグループ加入手段２０１は、グループ管理装置１のメンバ登録手段１０３と通信し、メンバ登録証明書及びグループ署名鍵を生成して出力する。また、グループ加入手段２０１は、メンバ登録証明書をメンバ登録証明書２０２に記憶させ、グループ署名鍵をグループ署名鍵記憶部２０３に記憶させる。【００７４】
メンバ登録手段１０３は、署名装置２に発行したメンバ登録証明書と、署名装置２を特定できるＩＤ情報とを一組にして、メンバ情報記憶部１０４に記憶させる。なお、ＩＤ情報として、例えば、署名装置２から送られるメッセージに付加されたデジタル署名等を用いてもよい。また、メンバ情報記憶部１０４に記憶されたメンバ登録証明書及びＩＤ情報は、グループ加入処理後に、グループ管理装置１やメンバ状態応答装置４が、グループ署名データにもとづいてグループ署名データを生成した署名装置２を特定するために用いる。【００７５】
次に、失効メンバが発生した場合に、グループ管理装置１がメンバ状態応答装置４に失効メンバを通知する失効メンバ通知処理の動作を説明する。グループのメンバであるユーザの署名装置２をグループから削除する場合、グループ管理装置１の失効メンバ通知手段１０５は、削除したい署名装置２に対応するＩＤ情報をメンバ情報記憶部１０４から読み出す。また、失効メンバ通知手段１０５は、読み出したＩＤ情報をメンバ状態応答装置４に送信する。メンバ状態応答装置４の失効メンバ受信手段４０１は、失効メンバ通知手段１０５からＩＤ情報を受信し、受信したＩＤ情報をメンバ失効リスト記憶部４０２に記憶させる。【００７６】
次に、署名装置２がグループ署名データを生成するグループ署名生成処理の動作を説明する。グループに加入したユーザの署名装置２は、ユーザ操作に従ってメッセージを入力すると、メッセージに対するグループ署名データを生成する。グループ署名生成手段２０６は、メッセージ入力手段２０４から入力したメッセージ、乱数生成器２０５が生成した乱数、メンバ登録証明書記憶部２０２が記憶するメンバ登録証明書、及びグループ署名鍵記憶部２０３が記憶するグループ署名鍵にもとづいて、グループ署名データを生成する。この場合、グループ署名生成手段２０６は、署名装置２を特定できる情報を明かさずに、署名装置２がグループのメンバの装置であることを示すグループ署名データを生成する。そして、グループ署名生成手段２０６は、メッセージとグループ署名データとを出力する。【００７７】
次に、検証装置３及びメンバ状態応答装置４がグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の動作を説明する。検証装置３は、署名装置２からメッセージとグループ署名データとを受け取り、グループ署名データがメッセージに対する正しい署名であるか否か（グループ内のいずれかのメンバの署名装置２によって生成された署名データであるか否か）を検証する。図５に示すように、グループ署名検証手段３０１は、メッセージ、グループ署名データ、及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６で正しく生成された署名データであるか否かを確認する（ステップＳ１０１）。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１は、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の検証結果を出力する。【００７８】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１は、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１は、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１は、メンバ状態応答装置４にメッセージ及びグループ署名データを送信し（ステップＳ１０２）、署名装置２のメンバ状態の判定を要求する。【００７９】
メンバ状態応答装置４の署名開封手段４０４は、検証装置３から、メッセージ及びグループ署名データを受け取る（受信する）。また、署名開封手段４０４は、メッセージ、グループ署名データ、及び公開情報開示手段１０１が開示する公開情報を用いて、グループ署名データの正当性を確認する（ステップＳ１０３）。グループ署名データが正当でないと判断すると、署名開封手段４０４は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ１０４）。【００８０】
グループ署名データが正当であると判断すると、署名開封手段４０４は、開封情報記憶部４０３が記憶する開封情報を用いて、グループ署名データを生成した署名装置２を特定するための署名者特定用情報を生成し、署名者特定手段４０６に出力する（ステップＳ１０５）。【００８１】
署名者特定手段４０６は、署名者特定用情報を受け取ると、メンバ情報記憶部４０５が記憶するメンバ情報を用いて、署名者特定用情報で示される署名装置２を特定する。そして、署名者特定手段４０６は、特定した署名装置２に対応するＩＤ情報をメンバ状態判定手段４０７に出力する（ステップＳ１０６）。【００８２】
メンバ状態判定手段４０７は、ＩＤ情報を受け取ると、メンバ失効リスト記憶部４０２が記憶するメンバ失効リストにもとづいて、署名者特定手段４０６が特定したＩＤ情報がメンバ失効リストに存在するか否かを調べる（ステップＳ１０７）。メンバ失効リストに存在すると判断すると、メンバ状態判定手段４０７は、メンバ状態を「失効」と判定する（ステップＳ１０８）。また、メンバ失効リストに存在しないと判断すると、メンバ状態判定手段４０７は、メンバ状態を「有効」であると判定する（ステップＳ１０９）。そして、メンバ状態判定手段４０７は、それぞれ「失効」又は「有効」を示す応答データを検証装置３に送信する。【００８３】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受信し受け取る（ステップＳ１１０）。検証結果出力手段３０２は、応答データにもとづいてメンバ状態が「有効」であるか否かを判断する（ステップＳ１１１）。応答データにもとづいてメンバ状態「有効」であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「受理」すると判定する。また、メンバ状態が「有効」以外（すなわち、「失効」又は「不明」）であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する。【００８４】
以上のように、ステップＳ１０１からステップＳ１１１までの処理が実行されることによって、検証装置３は、メッセージがグループ内のいずれかのメンバ（少なくとも現在又は過去においてメンバであったユーザ）によって作成されたものであることを確認する。また、検証装置３は、メンバ状態応答装置４にメンバ状態の判定を依頼することによって、メッセージを作成したユーザが現在においても有効な資格をもつグループメンバであることを確認し、メッセージを受理するか否かを判断することができる。【００８５】
次に、グループ署名を生成した署名装置２を特定する署名装置特定処理の動作を説明する。グループ管理装置１は、必要に応じて、メッセージとグループ署名データとにもとづいてグループ署名データを生成した署名装置２を特定する。署名開封手段１０７は、メッセージとグループ署名データとを受け取る（受信する）。署名開封手段１０７は、開封情報記憶部１０６が記憶する開封情報にもとづいて、グループ署名データを生成した署名装置２を特定するための署名者特定用情報を生成し、署名者特定手段１０８に出力する。【００８６】
署名者特定手段１０８は、署名者特定用情報とメンバ情報記憶部１０４が記憶するメンバ情報とにもとづいて、グループ署名データを生成した署名装置２に対応するメンバ登録証明書及びＩＤ情報を特定し、署名装置２を特定した結果を出力する。【００８７】
なお、本実施の形態において、グループ署名生成手段２０６は、グループ署名データを、メッセージを予め定めたハッシュ関数を用いて変換したハッシュ値を入力として生成してもよい。この場合、グループ署名検証手段３０１が行う検証処理において、グループ署名検証手段３０１は、まずメッセージからメッセージのハッシュ値を計算する。そして、グループ署名検証手段３０１は、メッセージのハッシュ値を用いてグループ署名データを認証する。そのようにすれば、メンバ状態応答装置４に送信するデータをメッセージのハッシュ値及びグループ署名データに代えることができる。従って、検証装置３は、メンバ状態応答装置４にメッセージを秘匿することができる。【００８８】
また、本実施の形態では、グループ管理装置１とメンバ状態応答装置４とが異なるサーバを用いて実現される場合を説明したが、グループ管理装置１とメンバ状態応答装置４とは、同じサーバを用いて実現されるものであってもよい。この場合、グループ管理装置１とメンバ状態応答装置４との各構成要素のうち、機能が共通する構成要素については、同じものであってもよい。例えば、メンバ情報記憶部１０４とメンバ情報記憶部４０５とが同じであり、開封情報記憶部１０６と開封情報記憶部４０３とが同じであり、署名開封手段１０７と署名開封手段４０４とが同じであり、署名者特定手段１０８と署名者特定手段４０６とが同じものであってもよい。【００８９】
以上のように、本実施の形態によれば、グループ署名の署名者のメンバ状態判定をメンバ状態応答装置４が行う。そのため、メンバ無効化機能を持たないグループ署名システムと同じ構成を用いてメンバ無効化機能を実現することができ、メンバ無効化に必要な計算量を削減できる。すなわち、本実施の形態によれば、新たにメンバ状態応答装置４を導入し、検証装置３は、グループ署名データを生成した署名装置２のユーザがメンバ資格を失効されているか否かを、メンバ状態応答装置４に問い合わせる。メンバ状態の有効性の判断をメンバ状態応答装置４に任せることができるので、失効メンバが発生する際に秘密鍵等のパラメータを更新する必要をなくすことができる。従って、メンバ失効に関する処理を効率よく行えるようにすることができる。【００９０】
また、本実施の形態によれば、グループ署名データを検証する際にメンバ状態の判定を行う。すなわち、本実施の形態によれば、検証装置３は、グループ署名データを検証する度にメンバ状態応答装置４にメンバの有効性を問い合わせる。そして、メンバ状態応答装置４は、問い合わせの時点でのメンバ状態にもとづいて、検証装置３に対して判定結果を応答する。そのため、検証時点でのメンバ状態にもとづいて判定し、検証結果を出力することができる。従って、グループ署名データを検証する時点でグループメンバの有効性を確認することができる。【００９１】
実施の形態２．
次に、本発明の第２の実施の形態を図面を参照して説明する。図６は、グループ署名システムの他の構成例を示すブロック図である。図６に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。本実施の形態において、署名装置２及び検証装置３の構成は、第１の実施の形態で示したそれらの構成と同様である。本実施の形態では、グループ管理装置１の失効メンバ通知手段１０５Ａの機能が第１の実施の形態で示した失効メンバ通知手段１０５の機能と異なる。また、本実施の形態では、メンバ状態応答装置４がメンバ情報記憶部４０５及び署名者特定手段４０６を含まない点で、第１の実施の形態と異なる。【００９２】
失効メンバ通知手段１０５Ａは、グループメンバとしての資格を失った署名装置２に対応するメンバ登録証明書をメンバ情報記憶部１０４から読み出し、メンバ状態応答装置４に通知する機能を備える。【００９３】
図６に示すように、メンバ状態応答装置４は、失効メンバ受信手段４０１Ａと、メンバ失効リスト記憶部４０２Ａと、開封情報記憶部４０３と、署名開封手段４０４Ａと、メンバ状態判定手段４０７Ａとを含む。【００９４】
失効メンバ受信手段４０１Ａは、失効メンバ通知手段１０５Ａから送信された失効メンバのメンバ登録証明書を受信し、メンバ失効リスト記憶部４０２Ａに記憶させる機能を備える。【００９５】
メンバ失効リスト記憶部４０２Ａは、メンバ失効リストを記憶する。図７は、メンバ失効リスト記憶部４０２Ａが記憶する情報の一例を示す説明図である。図７に示すように、メンバ失効リスト記憶部４０２Ａは、メンバ失効リストとして、資格失効されたメンバの署名装置２に対応するメンバ登録証明書の集合を記憶する。なお、ここで、メンバ登録証明書だけを用いて署名装置２を特定することはできない。開封情報記憶部４０３は、グループ管理装置１の開封情報記憶部１０６が記憶する開封情報と同じ情報内容の開封情報を記憶する。【００９６】
署名開封手段４０４Ａは、検証装置３のグループ署名検証手段３０１からメッセージ及びグループ署名データを受信する機能を備える。また、署名開封手段４０４Ａは、開封情報記憶部４０３が記憶する開封情報と、公開情報開示手段１０１が開示する各種公開情報とを用いて、グループ署名データを生成した署名装置２を特定するための署名者特定用情報を生成する機能を備える。また、署名開封手段４０４Ａは、生成した署名者特定用情報をメンバ状態判定手段４０７Ａに出力する機能を備える。【００９７】
メンバ状態判定手段４０７Ａは、署名開封手段４０４Ａから署名者特定用情報を受け取り、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストを用いて、署名者特定用情報で示される署名装置２が有効なグループメンバであるか否かを調べる機能を備える。また、メンバ状態判定手段４０７Ａは、有効又は失効を示す応答データを、検証装置３の検証結果出力手段３０２に送信する機能を備える。【００９８】
次に、動作について説明する。図８は、グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の他の例を示す流れ図である。以下、図６及び図８を参照して、グループ署名システムの動作を説明する。なお、本実施の形態において、グループ加入処理、グループ署名生成処理及び署名装置特定処理については、第１の実施の形態におけるそれらの処理と同様である。【００９９】
検証装置３のグループ署名検証手段３０１は、第１の実施の形態と同様に、グループ署名データの正当性を判断し（ステップＳ１０１）、メッセージ及びグループ署名データをグループ管理装置１に送信する（ステップＳ１０２）。【０１００】
グループ署名データを検証する際、署名開封手段４０４Ａは、検証装置３のグループ署名検証手段３０１からメッセージ及びグループ署名データを受け取る（受信する）。また、署名開封手段４０４Ａは、メッセージ、グループ署名データ、及び公開情報開示手段１０１が開示する公開情報を用いて、グループ署名データの正当性を確認する（ステップＳ１０３）。グループ署名データが正当でないと判断すると、署名開封手段４０４Ａは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ１０４）。【０１０１】
グループ署名データが正当であると判断すると、署名開封手段４０４Ａは、開封情報記憶部４０３が記憶する開封情報を用いて、グループ署名データを生成した署名装置２を特定するための署名者特定用情報を生成し、メンバ状態判定手段手段４０７Ａに出力する（ステップ１０５）。【０１０２】
メンバ状態判定手段４０７Ａは、署名者特定用情報を受け取ると、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストにもとづいて、署名者特定用情報に対応するメンバ登録証明書がメンバ失効リストに存在するか否かを調べる（ステップＳ２０６）。メンバ失効リストに存在すると判断すると、メンバ状態判定手段４０７Ａは、メンバ状態を「失効」と判定する（ステップＳ１０８）。また、メンバ失効リストに存在しないと判断すると、メンバ状態判定手段４０７Ａは、メンバ状態を「有効」であると判定する（ステップＳ１０９）。そして、メンバ状態判定手段４０７Ａは、それぞれ「失効」又は「有効」を示す応答データを検証装置３に送信する。そして、検証装置３の検証結果出力手段３０２は、第１の実施の形態と同様に、メンバ状態を示す応答データを受信し（ステップＳ１１０）、メンバ状態が「有効」であるか否かを判断して（ステップＳ１１１）、「受理」又は「不受理」の検証結果を出力する。【０１０３】
なお、本実施の形態において、第１の実施の形態と同様に、グループ署名生成手段２０６は、グループ署名データを、メッセージを予め定めたハッシュ関数を用いて変換したハッシュ値を入力として生成してもよい。この場合、グループ署名検証手段３０１が行う検証処理において、グループ署名検証手段３０１は、メッセージのハッシュ値を計算し、メッセージのハッシュ値を用いてグループ署名データを認証する。そのようにすれば、メンバ状態応答装置４に送信するデータをメッセージのハッシュ値及びグループ署名データに代えることができる。従って、検証装置３は、メンバ状態応答装置４にメッセージを秘匿することができる。【０１０４】
以上のように、本実施の形態によれば、グループ管理装置１の失効メンバ通知手段１０５は、メンバ状態応答装置４に、失効メンバの署名装置２のＩＤ情報を送信しない。そのため、メンバ状態応答装置４は、メッセージ及びグループ署名データを受け取っても、グループ署名データを生成した署名装置２のＩＤ情報を特定することができない。従って、メンバ状態応答装置４に対して、各署名装置２のＩＤ情報を秘匿することができる。【０１０５】
実施の形態３．
次に、本発明の第３の実施の形態を図面を参照して説明する。本実施の形態において、グループ署名システムの構成は、第１の実施の形態で示した図２の構成と同様である。図２に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。本実施の形態において、グループ管理装置１及び検証装置３の構成は、第１の形態で示したそれらの構成と同様である。【０１０６】
署名装置２は、第１の形態と同様に、グループ加入手段２０１と、メンバ登録証明書記憶部２０２と、グループ署名鍵記憶部２０３と、メッセージ入力手段２０４と、乱数生成器２０５と、グループ署名生成手段２０６とを含む。【０１０７】
本実施の形態において、グループ加入手段２０１、メンバ登録証明書記憶部２０２、グループ署名鍵記憶部２０３、メッセージ入力手段２０４及び乱数生成器２０５の構成は、第１の実施の形態及び第２の実施の形態におけるそれらの構成と同様である。【０１０８】
グループ署名生成手段２０６は、メッセージ、乱数、メンバ登録証明書及びグループ署名鍵にもとづいて、署名装置２がグループ管理装置１に正しく登録したグループメンバの装置であることを示すグループ署名データを生成し出力する。この場合、グループ署名生成手段２０６は、署名装置２を特定できる情報を明かさずに示すグループ署名データを出力する。【０１０９】
また、本実施の形態では、グループ署名生成手段２０６は、公開情報開示手段１０１に開示された公開情報を用いて、グループ管理装置１及びメンバ状態応答装置４が所有する開封情報を用いてメンバ登録証明書を復元するための変換データを含むグループ署名データを生成する。【０１１０】
また、本実施の形態において、メンバ状態応答装置４の構成は、第１の実施の形態におけるメンバ状態応答装置４の構成と同様である。【０１１１】
次に、動作について説明する。図９は、グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。以下、図２及び図９を参照して、グループ署名システムの動作を説明する。なお、本実施の形態において、グループ加入処理、失効メンバ通知処理及び署名装置特定処理については、第１の実施の形態におけるそれらの処理と同様である。【０１１２】
まず、グループ署名生成処理の動作を説明する。グループに加入したユーザの署名装置２は、ユーザ操作に従ってメッセージを入力すると、メッセージに対するグループ署名データを生成する。グループ署名生成手段２０６は、署名装置２がグループのメンバの装置であることを署名装置２を特定できる情報を明かさずに示すグループ署名データを生成する。この場合、グループ署名生成手段２０６は、メンバ登録証明書を復元するための変換データを作成する。この変換データにもとづいて、グループ管理装置１及びメンバ状態応答装置４は、所有する開封情報を用いて、所定の変換を行うことによってメンバ登録証明書を生成し復元することができる。【０１１３】
例えば、グループ署名生成手段２０６は、公開鍵暗号系を用いた変換によって変換データを生成する。この場合、グループ署名生成手段２０６は、公開鍵暗号系の秘密鍵を開封情報とし、開封情報に対応する公開鍵と乱数とにもとづいて、メンバ登録証明書を含むデータを暗号化する。そして、グループ署名生成手段２０６は、メッセージ及び変換データを含むグループ署名データを出力する。【０１１４】
次に、検証装置３及びメンバ状態応答装置４がグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の動作を説明する。メッセージ及びグループ署名データを受け取った検証装置３は、第１の実施の形態と同様に、グループ署名データがメッセージに対する正しい署名であるか否かを検証する。図９に示すように、グループ署名検証手段３０１は、メッセージ、グループ署名データ及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６で正しく生成された署名データであるか否かを確認する（ステップＳ１０１）。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１は、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の判定結果を出力する。【０１１５】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１は、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１は、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１は、メンバ状態応答装置４に、グループ署名データに含まれる変換データを送信する（ステップＳ３０２）。【０１１６】
メンバ状態応答装置４の署名開封手段４０４は、変換データを受け取る（受信する）。また、署名開封手段４０４は、変換データ、及び開封情報記憶部４０３が記憶する開封情報にもとづいてメンバ登録証明書を復元（生成）し、生成したメンバ登録証明書を署名者特定用情報として署名者特定手段４０６に出力する（ステップＳ３０３）。【０１１７】
署名者特定手段４０６は、署名者特定用情報であるメンバ登録証明書を受け取ると、メンバ情報記憶部４０５が記憶するメンバ情報を用いて、メンバ登録証明書に対応する署名装置２のＩＤ情報を特定する（ステップＳ３０４）。署名者特定用情報に対応するメンバ登録証明書が存在しないと判断した場合、署名者特定手段４０６は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ３０５）。また、対応するメンバ登録証明書が存在すると判断した場合、署名者特定手段４０６は、特定したＩＤ情報をメンバ状態判定手段４０７に出力する（ステップＳ３０６）。【０１１８】
メンバ状態判定手段４０７は、ＩＤ情報を受け取ると、メンバ失効リスト記憶部４０２が記憶するメンバ失効リストにもとづいて、署名者特定手段４０６が特定したＩＤ情報がメンバ失効リストに存在するか否かを判断する（ステップＳ１０７）。メンバ失効リストに存在すると判断すると、メンバ状態判定手段４０７は、メンバ状態を「失効」と判定する（ステップＳ１０８）。また、メンバ失効リストに存在しないと判断すると、メンバ状態判定手段４０７は、メンバ状態を「有効」であると判定する（ステップＳ１０９）。そして、メンバ状態判定手段４０７は、それぞれ「失効」又は「有効」を示す応答データを検証装置３に送信する。【０１１９】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受信し受け取る（ステップＳ１１０）。検証結果出力手段３０２は、応答データにもとづいてメンバ状態が「有効」であるか否かを判断する（ステップＳ１１１）。応答データにもとづいてメンバ状態「有効」であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「受理」すると判定する。また、メンバ状態が「有効」以外であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する。【０１２０】
以上のように、本実施の形態によれば、署名装置２は、メンバ登録証明書の変換データを含むグループ署名データを出力する。また、メッセージ及びグループ署名データを受け取った検証装置３は、メンバ状態応答装置４に変換データのみを送信する。そのため、検証装置３は、メンバ状態応答装置４に対して、受け取ったメッセージを秘匿することができる。【０１２１】
実施の形態４．
次に、本発明の第４の実施の形態を図面を参照して説明する。本実施の形態において、グループ署名システムの構成は、第２の実施の形態で示した図６の構成と同様である。図６に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。本実施の形態において、グループ管理装置１及び検証装置３の構成は、第１の実施の形態におけるそれらの構成と同様である。また、本実施の形態において、署名装置２の構成は、第３の実施の形態における署名装置２の構成と同様である。すなわち、本実施の形態において、署名装置２は、メンバ登録証明書を復元するための変換データを含むグループ署名データを生成する。【０１２２】
メンバ状態応答装置４は、第２の形態と同様に、失効メンバ受信手段４０１Ａと、メンバ失効リスト記憶部４０２Ａと、開封情報記憶部４０３と、署名開封手段４０４Ａと、メンバ状態判定手段４０７Ａとを含む。本実施の形態において、失効メンバ受信手段４０１Ａ、開封情報記憶部４０３、署名開封手段４０４Ａ及びメンバ状態判定手段４０７Ａの構成は、第２の実施の形態におけるそれらの構成と同様である。【０１２３】
メンバ失効リスト記憶部４０２Ａは、メンバ登録証明書とメンバ状態とを対応づけて記憶する。図１０は、メンバ失効リスト記憶部４０２Ａが記憶する情報の他の例を示す説明図である。図１０に示すように、例えば、メンバ失効リスト記憶部４０２Ａは、グループに所属する全ての署名装置２に対応するメンバ登録証明書と、対応する署名装置２のメンバ状態との組から成るメンバ失効リストを記憶する。図１０に示すように、メンバ失効リスト記憶部４０２Ａは、メンバ状態として、「有効」又は「失効」のいずれかの情報を記憶する。【０１２４】
次に、動作について説明する。図１１は、グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。以下、図６及び図１１を参照して、グループ署名システムの動作を説明する。なお、グループ加入処理、失効メンバ通知処理、及び署名装置特定処理については、第１の実施の形態におけるそれらの処理と同様である。また、グループ署名生成処理については、第３の実施の形態におけるグループ署名生成処理と同様である。【０１２５】
メッセージ及びグループ署名データを受け取った検証装置３は、グループ署名データがメッセージに対する正しい署名であるか否かを検証する。図１１に示すように、グループ署名検証手段３０１は、メッセージ、グループ署名データ及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６で正しく生成された署名データであるか否かを確認する（ステップＳ１０１）。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１は、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の検証結果を出力する。【０１２６】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１は、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１は、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１は、メンバ状態応答装置４に、グループ署名データに含まれる変換データを送信する（ステップＳ３０２）。【０１２７】
メンバ状態応答装置４の署名開封手段４０４Ａは、検証装置３から変換データを受け取る（受信する）と、変換データ、及び開封情報記憶部４０３が記憶する開封情報にもとづいてメンバ登録証明書を復元（生成）し、生成したメンバ登録証明書を署名者特定用情報としてメンバ状態判定手段４０７Ａに出力する（ステップＳ３０３）。【０１２８】
メンバ状態判定手段４０７Ａは、署名者特定用情報を受け取ると、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストを検索し、署名者特定用情報に一致するメンバ登録証明書が存在するか否か判断する（ステップＳ４０４）。見つからない（一致するメンバ登録証明書が存在しない）と判断した場合、メンバ状態判定手段４０７Ａは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ４０５）。【０１２９】
見つかった（一致するメンバ登録証明書が存在する）と判断した場合、メンバ状態判定手段４０７Ａは、メンバ失効リスト記憶部４０２Ａが記憶するメンバ登録証明書の状態に応じて、メンバ状態が「有効」であるか、又は「失効」であるかを判定する（ステップＳ４０６）。例えば、メンバ状態判定手段４０７Ａは、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストにもとづいて、メンバ登録証明書に対応するメンバ状態が「失効」であると判断した場合、「失効」を示す応答データを検証装置３に送信する（ステップＳ４０７）。また、メンバ状態判定手段４０７Ａは、メンバ登録証明書に対応するメンバ状態が「有効」であると判断した場合、「有効」を示す応答データを検証装置３に送信する（ステップＳ４０８）。【０１３０】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受信し受け取る（ステップＳ１１０）。検証結果出力手段３０２は、応答データにもとづいてメンバ状態が「有効」であるか否かを判断する（ステップＳ１１１）。応答データにもとづいてメンバ状態「有効」であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「受理」すると判定する。また、メンバ状態が「有効」以外であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する。【０１３１】
以上のように、本実施の形態によれば、署名装置２は、メンバ登録証明書の変換データを含むグループ署名データを出力する。また、メッセージ及びグループ署名データを受け取った検証装置３は、メンバ状態応答装置４に変換データのみを送信する。そのため、検証装置３は、メンバ状態応答装置４に対して、受け取ったメッセージを秘匿することができる。また、本実施の形態によれば、グループ管理装置１の失効メンバ通知手段１０５Ａは、メンバ状態応答装置４に、失効メンバの署名装置２のＩＤ情報を送信しない。そのため、メンバ状態応答装置４は、メッセージ及びグループ署名データを受け取っても、グループ署名データを生成した署名装置２のＩＤ情報を特定することができない。従って、メンバ状態応答装置４に対して、各署名装置２のＩＤ情報を秘匿することができる。【０１３２】
実施の形態５．
次に、本発明の第５の実施の形態を図面を参照して説明する。本実施の形態において、グループ署名システムの構成は、第１の実施の形態で示した図２の構成と同様である。図２に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。本実施の形態において、グループ管理装置１及び検証装置３の構成は、第１の実施の形態におけるそれらの構成と同様である。【０１３３】
署名装置２は、第１の形態と同様に、グループ加入手段２０１と、メンバ登録証明書記憶部２０２と、グループ署名鍵記憶部２０３と、メッセージ入力手段２０４と、乱数生成器２０５と、グループ署名生成手段２０６とを含む。本実施の形態において、グループ加入手段２０１、メンバ登録証明書記憶部２０２、グループ署名鍵記憶部２０３、メッセージ入力手段２０４及び乱数生成器２０５の構成及は、第１の実施の形態におけるそれらの構成と同様である。【０１３４】
グループ署名生成手段２０６は、メッセージ、乱数、メンバ登録証明書及びグループ署名鍵にもとづいて、署名装置２がグループ管理装置１に正しく登録したグループメンバの装置であることを示すグループ署名データを生成し出力する。この場合、グループ署名生成手段２０６は、署名装置２を特定できる情報を明かさずに示すグループ署名データを出力する。【０１３５】
また、本実施の形態では、グループ署名生成手段２０６は、公開情報開示手段１０１に開示された公開情報を用いて、グループ管理装置１及びメンバ状態応答装置４が所有する開封情報を用いてメンバ登録証明書を復元するための変換データと、変換データを正しく生成したことを示す証明データとを含むグループ署名データを生成する。【０１３６】
また、本実施の形態において、メンバ状態応答装置４の構成は、第１の実施の形態又は第２の実施の形態におけるメンバ状態応答装置４の構成と同様である。【０１３７】
次に、動作について説明する。なお、グループ加入処理、失効メンバ通知処理、及び署名装置特定処理については、第１の実施の形態におけるそれらの処理と同様である。【０１３８】
まず、グループ署名生成処理の動作を説明する。グループに加入したユーザの署名装置２は、ユーザ操作に従ってメッセージを入力すると、メッセージに対するグループ署名データを生成する。グループ署名生成手段２０６は、署名装置２がグループのメンバの装置であることを署名装置２を特定できる情報を明かさずに示すグループ署名データを生成する。この場合、グループ署名生成手段２０６は、第３の実施の形態で示した変換データと同様の性質を持つメンバ登録証明書の変換データを作成する。【０１３９】
また、グループ署名生成手段２０６は、変換データを作成すると同時に、変換データを正しく生成したことを示す証明データを作成する。そして、グループ署名生成手段２０６は、メッセージ及び変換データと証明データとを含むグループ署名データを出力する。【０１４０】
次に、検証装置３及びメンバ状態応答装置４がグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の動作を説明する。メッセージ及びグループ署名データを受け取った検証装置３は、第１の実施の形態と同様に、グループ署名データがメッセージに対する正しい署名であるか否かを検証する。グループ署名検証手段３０１は、メッセージ、グループ署名データ及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６で正しく生成された署名データであるか否かを確認する。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１は、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の検証結果を出力する。【０１４１】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１は、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１は、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１は、メンバ状態応答装置４に、グループ署名データに含まれる変換データ及び証明データを送信する。【０１４２】
メンバ状態応答装置４の署名開封手段４０４は、変換データ及び証明データを受け取る（受信する）。また、署名開封手段４０４は、公開情報開示手段１０１が開示する公開情報を用いて証明データの正当性を確認する。証明データが正当でないと判断すると、署名開封手段４０４は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する。【０１４３】
証明データが正当であると判断すると、署名開封手段４０４は、開封情報記憶部４０３が記憶する開封情報にもとづいてメンバ登録証明書を復元（生成）し、生成したメンバ登録証明書を署名者特定用情報として署名者特定手段４０６又はメンバ状態判定手段４０７に出力する。そして、メンバ状態応答装置４は、第１の実施の形態又は第２の実施の形態と同様にメンバ状態を判定する。また、検証装置３は、メンバ状態応答装置４の判定結果にもとづいて、「受理」又は「不受理」の検証結果を出力する。【０１４４】
以上のように、本実施の形態によれば、署名装置２は、メンバ登録証明書の変換データと、変換データに対する証明データとを含むグループ署名データを出力する。また、メッセージ及びグループ署名データを受け取った検証装置３は、メンバ状態応答装置４に変換データ及び証明データのみを送信する。そのため、検証装置３は、メンバ状態応答装置４に対して、受け取ったメッセージを秘匿することができる。また、メンバ状態応答装置４は、証明データを確認することによって、検証装置３から送られたデータがグループ署名データの一部であるか否かを確認することができる。【０１４５】
実施の形態６．
次に、本発明の第６の実施の形態を図面を参照して説明する。本実施の形態において、グループ署名システムの構成は、第１の実施の形態で示した図２の構成と同様である。図２に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。本実施の形態において、グループ管理装置１及び検証装置３の構成は、第１の実施の形態におけるそれらの構成と同様である。【０１４６】
署名装置２は、第１の形態と同様に、グループ加入手段２０１と、メンバ登録証明書記憶部２０２と、グループ署名鍵記憶部２０３と、メッセージ入力手段２０４と、乱数生成器２０５と、グループ署名生成手段２０６とを含む。本実施の形態において、グループ加入手段２０１、メンバ登録証明書記憶部２０２、グループ署名鍵記憶部２０３、メッセージ入力手段２０４及び乱数生成器２０５の構成は、第１の実施の形態におけるそれらの構成と同様である。【０１４７】
グループ署名生成手段２０６は、メッセージ、乱数、メンバ登録証明書及びグループ署名鍵にもとづいて、署名装置２がグループ管理装置１に正しく登録したグループメンバであることを示すグループ署名データを生成し出力する。この場合、グループ署名生成手段２０６は、署名装置２を特定できる情報を明かさずに示すグループ署名データを出力する。【０１４８】
また、本実施の形態では、グループ署名生成手段２０６は、公開情報開示手段１０１に開示された公開情報を用いて、グループ管理装置１が所有する開封情報を用いてメンバ登録証明書を復元するための第１の変換データを生成する。また、グループ署名生成手段２０６は、公開情報開示手段１０１に開示された公開情報を用いて、メンバ状態応答装置４が所有する開封情報を用いてメンバ登録証明書を復元するための第２の変換データを生成する。また、グループ署名生成手段２０６は、第２の変換データを正しく生成したことを示す第１の証明データと、第１の変換データ及び第２の変換データが同じメンバ登録証明書を変換していることを示す第２の証明データとを生成する。そして、グループ署名生成手段２０６は、第１の変換データ、第２の変換データ、第１の証明データ及び第２の証明データを含むグループ署名データを生成する。【０１４９】
メンバ状態応答装置４は、第１の実施の形態と同様に、失効メンバ受信手段４０１と、メンバ失効リスト記憶部４０２と、開封情報記憶部４０３と、署名開封手段４０４と、メンバ情報記憶部４０５と、署名者特定手段４０６と、メンバ状態判定手段４０７とを含む。【０１５０】
本実施の形態において、失効メンバ受信手段４０１、メンバ失効リスト記憶部４０２、署名開封手段４０４、メンバ情報記憶部４０５、署名者特定手段４０６及びメンバ状態判定手段４０７の構成は、第１の実施の形態におけるそれらの構成と同様である。【０１５１】
本実施の形態では、開封情報記憶部４０３は、グループ管理装置１の開封情報記憶部１０６が記憶する開封情報とは、情報内容が異なる開封情報を記憶する。【０１５２】
なお、メンバ状態応答装置４は、第２の実施の形態と同様に、失効メンバ受信手段４０１と、メンバ失効リスト記憶部４０２と、開封情報記憶部４０３と、署名開封手段４０４と、メンバ状態判定手段４０７とを含むものであってもよい。この場合も、開封情報記憶部４０３は、グループ管理装置１の開封情報記憶部１０６が記憶する開封情報とは、情報内容が異なる開封情報を記憶する。【０１５３】
次に、動作について説明する。なお、グループ加入処理、失効メンバ通知処理、及び署名装置特定処理については、第１の実施の形態におけるそれらの処理と同様である。【０１５４】
まず、グループ署名生成処理の動作を説明する。グループに加入したユーザの署名装置２は、ユーザ操作に従ってメッセージを入力すると、メッセージに対するグループ署名データを生成する。グループ署名生成手段２０６は、署名装置２がグループのメンバの装置であることを署名装置２を特定できる情報を明かさずに示すグループ署名データを生成する。この場合、グループ署名生成手段２０６は、メンバ登録証明書の第１の変換データを作成する。グループ署名生成手段２０６は、第１の変換データとして、第３の実施の形態で示した変換データと同様に、グループ管理装置１が所有する開封情報を用いてメンバ登録証明書が復元できるデータを作成する。【０１５５】
また、グループ署名生成手段２０６は、第１の変換データと同様に、メンバ状態応答装置４が所有する開封情報を用いてメンバ登録証明書を復元するための第２の変換データを作成する。また、グループ署名生成手段２０６は、第２の変換データを作成すると同時に、第２の変換データを正しく生成したことを示す第１の証明データを作成する。また、グループ署名生成手段２０６は、第１の変換データ及び第２の変換データが同じメンバ登録証明書を変換していることを示す第２の証明データを作成する。そして、グループ署名生成手段２０６は、メッセージと、第１の変換データ、第２の変換データ、第１の証明データ及び第２の証明データを含むグループ署名データとを出力する。【０１５６】
次に、検証装置３及びメンバ状態応答装置４がグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の動作を説明する。メッセージ及びグループ署名データを受け取った検証装置３は、第１の実施の形態と同様に、グループ署名データがメッセージに対する正しい署名であるか否かを検証する。グループ署名検証手段３０１は、メッセージ、グループ署名データ及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６で正しく生成された署名データであるか否かを確認する。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１は、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の検証結果を出力する。【０１５７】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１は、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１は、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１は、メンバ状態応答装置４に、グループ署名データに含まれる第２の変換データ及び第１の証明データを送信する。【０１５８】
メンバ状態応答装置４は、第１の実施の形態におけるメンバ状態応答装置４と同様の構成を備え、以下のように動作する。メンバ状態応答装置４の署名開封手段４０４は、第２の変換データ及び第１の証明データを受け取る（受信する）。また、署名開封手段４０４は、公開情報開示手段１０１が開示する公開情報を用いて第１の証明データの正当性を確認する。第１の証明データが正当でないと判断すると、署名開封手段４０４は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する。【０１５９】
第１の証明データが正当であると判断すると、署名開封手段４０４は、開封情報記憶部４０３が記憶する開封情報にもとづいてメンバ登録証明書を復元（生成）し、生成したメンバ登録証明書を署名者特定用情報として署名者特定手段４０６に出力する。そして、メンバ状態応答装置４は、第１の実施の形態または第２の実施の形態と同様にメンバ状態を判定する。また、検証装置３は、メンバ状態応答装置４の判定結果にもとづいて、「受理」又は「不受理」の検証結果を出力する。【０１６０】
以上のように、本実施の形態によれば、署名装置２は、グループ管理装置１の開封情報を用いてメンバ登録証明書を復元できる第１の変換データと、メンバ状態応答装置４の開封情報を用いてメンバ登録証明書を復元できる第２の変換データとを含むグループ署名データを出力する。そのため、グループ管理装置１とメンバ状態応答装置４とは、異なる開封情報を所有することができる。【０１６１】
また、本実施の形態によれば、署名装置２は、第２の変換データを正しく作成したことを示す第１の証明データを含むグループ署名データを出力する。また、検証装置２は、メンバ状態応答装置４に、第２の変換データと第１の証明データとを送信する。そのようにすることによって、メンバ状態応答装置４は、検証装置３から送られたデータがグループ署名データの一部であるか否かを確認することができる。【０１６２】
また、本実施の形態によれば、署名装置２は、第１の変換データと第２の変換データとが同じメンバ登録証明書を変換したデータであることを示す第２の証明データを含むグループ署名データを出力する。そのようにすることによって、検証装置３は、署名装置２が生成した２つの変換データが同じメンバ登録証明書を変換していることを確認することができる。【０１６３】
実施の形態７．
次に、本発明の第７の実施の形態を図面を参照して説明する。図１２は、グループ署名システムの更に他の構成例を示すブロック図である。図１２に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。本実施の形態では、第１の実施の形態で示した構成要素に加えて、署名装置２がメンバ追跡情報記憶部２０７を備える点で、第１の実施の形態と異なる。また、本実施の形態では、メンバ状態応答装置４が開封情報記憶部４０３、署名開封手段４０４、メンバ情報記憶部４０５及び署名者特定手段４０６を含まない点で、第１の実施の形態と異なる。【０１６４】
図１２に示すように、グループ管理装置１は、第１の形態と同様に、公開情報開示手段１０１と、メンバ登録用情報記憶部１０２と、メンバ登録手段１０３Ｂと、メンバ情報記憶部１０４Ｂと、失効メンバ通知手段１０５Ｂと、開封情報記憶部１０６と、署名開封手段１０７と、署名者特定手段１０８とを含む。本実施の形態において、公開情報開示手段１０１、メンバ登録用情報記憶部１０２、開封情報記憶部１０６、署名開封手段１０７及び署名者特定手段１０８の構成は、第１の実施の形態におけるそれらの構成と同様である。【０１６５】
メンバ登録手段１０３Ｂは、署名装置２のグループ加入手段２０１と通信し、メンバ登録用情報記憶部１０２が記憶するメンバ登録用情報を用いて、メンバ登録証明書及びメンバ追跡情報を作成する機能を備える。なお、本実施の形態では、メンバ追跡情報は、所定のアルゴリズムに従って求められる数値情報であり、グループ署名データが特定のユーザの署名装置２によって作成されたことを確認可能な情報である。また、メンバ登録手段１０３Ｂは、生成したメンバ登録証明書と、メンバ追跡情報と、署名装置２を特定できるＩＤ情報とを合わせてメンバ情報記憶部１０４Ｂに記憶させる機能を備える。【０１６６】
メンバ情報記憶部１０４Ｂは、メンバ登録手段１０３が出力したメンバ登録証明書、メンバ追跡情報及びＩＤ情報を対応づけて記憶する。図１３は、メンバ情報記憶部１０４Ｂが記憶する情報の一例を示す説明図である。図１３に示すように、例えば、メンバ情報記憶部１０４Ｂは、メンバ登録証明書とメンバ追跡情報とＩＤ情報との組を、署名装置２を示すメンバ情報として署名装置２ごとに記憶する。【０１６７】
失効メンバ通知手段１０５Ｂは、グループメンバとしての資格を失ったユーザの署名装置２に対応するメンバ追跡情報をメンバ情報記憶部１０４から読み出し、メンバ状態応答装置４に通知する機能を備える。【０１６８】
図１２に示すように、署名装置２は、グループ加入手段２０１Ｂと、メンバ登録証明書記憶部２０２と、グループ署名鍵記憶部２０３と、メッセージ入力手段２０４と、乱数生成器２０５と、グループ署名生成手段２０６Ｂと、メンバ追跡情報記憶部２０７とを含む。本実施の形態において、メンバ登録証明書記憶部２０２、グループ署名鍵記憶部２０３、メッセージ入力手段２０４及び乱数生成器２０５の構成は、第１の実施の形態におけるそれらの構成と同様である。【０１６９】
グループ加入手段２０１Ｂは、グループ管理装置１のメンバ登録手段１０３Ｂと通信し、メンバ登録証明書とグループ署名鍵とメンバ追跡情報とを生成し、メンバ登録証明書記憶部２０２とグループ署名鍵記憶部２０３とメンバ追跡情報記憶部２０７とにそれぞれ出力する機能を備える。【０１７０】
グループ署名生成手段２０６Ｂは、メッセージ、乱数、メンバ登録証明書、グループ署名鍵及びメンバ追跡情報にもとづいて、署名装置２がグループ管理装置１に正しく登録したグループメンバの装置であることを示すグループ署名データを生成し出力する機能を備える。なお、グループ署名生成手段２０６Ｂは、署名装置２を特定できる情報を明かさずに示すグループ署名データを出力する。この場合、グループ署名生成手段２０６Ｂは、メンバ追跡情報の変換データを含むグループ署名データを出力する。メンバ追跡情報記憶部２０７は、メンバ加入手段２０１から出力されたメンバ追跡情報を記憶する。【０１７１】
図１２に示すように、検証装置３は、グループ署名検証手段３０１Ｂと、検証結果出力手段３０２とを含む。【０１７２】
グループ署名検証手段３０１Ｂは、署名装置２からメッセージとグループ署名データとを受け取り（受信し）、グループ署名データの正当性を調べる機能を備える。また、グループ署名検証手段３０１Ｂは、グループ署名データが正当でないと判断した場合、「不受理」と判定し検証結果を出力する機能を備える。また、グループ署名検証手段３０１Ｂは、グループ署名データが正当であると判断した場合、グループ署名データを生成した署名装置２が有効なグループメンバの装置であるか否かを確認するために、メッセージとグループ署名データとをメンバ状態応答装置４のメンバ状態判定手段４０７Ｂに送信する機能を備える。【０１７３】
検証結果出力手段３０２は、メンバ状態応答装置４のメンバ状態判定手段４０７Ｂからメンバ状態の判定結果を受信する機能を備える。また、検証結果出力手段３０２は、受信した判定結果が「有効」である場合には「受理」と判定し、受信した判定結果が「失効」である場合には「不受理」と判定し、「受理」又は「不受理」の検証結果を出力する機能を備える。【０１７４】
図１２に示すように、メンバ状態応答装置４は、失効メンバ受信手段４０１Ｂと、メンバ失効リスト記憶部４０２Ｂと、メンバ状態判定手段４０７Ｂとを含む。【０１７５】
失効メンバ受信手段４０１Ｂは、失効メンバ通知手段１０５Ｂから送信された失効メンバのメンバ追跡情報を受信し、メンバ失効リスト記憶部４０２Ｂに記憶させる機能を備える。【０１７６】
メンバ失効リスト記憶部４０２Ｂは、メンバ失効リストを記憶する。図１４は、メンバ失効リスト記憶部４０２Ｂが記憶する情報の一例を示す説明図である。図１４に示すように、例えば、メンバ失効リスト記憶部４０２Ｂは、メンバ失効リストとして、失効された署名装置２のメンバ追跡情報の集合を記憶する。【０１７７】
メンバ状態判定手段４０７Ｂは、検証装置３のグループ署名検証手段３０１Ｂからメッセージとグループ署名データとを受け取り（受信し）、メンバ失効リストを用いてグループ署名データを生成した署名装置２が有効なグループメンバの装置であるか否かを調べる機能を備える。また、メンバ状態判定手段４０７Ｂは、有効又は失効を示すメンバ状態を含む応答データを、検証装置３の検証結果出力手段３０２に送信する機能を備える。【０１７８】
次に、動作について説明する。図１５は、グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。以下、図１２及び図１５を参照して、グループ署名システムの動作を説明する。【０１７９】
まず、ユーザが新規にグループに加入する際に、ユーザをメンバとして登録するグループ加入処理の動作を説明する。署名装置２はグループに加入するために、グループ管理装置１と通信して登録処理を行う。署名装置２のグループ加入手段２０１Ｂは、グループ管理装置１のメンバ登録手段１０３Ｂと通信し、メンバ登録証明書、グループ署名鍵及びメンバ追跡情報を生成して出力する。また、署名装置２は、メンバ登録証明書をメンバ登録証明書２０２に記憶させ、グループ署名鍵をグループ署名鍵記憶部２０３に記憶させ、メンバ追跡情報をメンバ追跡情報記憶部２０７に記憶させる。【０１８０】
メンバ登録手段１０３Ｂは、図１３に示すように、署名装置２に発行したメンバ登録証明書及びメンバ追跡情報と、署名装置２を特定できるＩＤ情報とを一組にして、メンバ情報記憶部１０４Ｂに記憶させる。【０１８１】
次に、失効メンバが発生した場合に、グループ管理装置１がメンバ状態応答装置４に失効メンバを通知する失効メンバ通知処理の動作を説明する。グループのメンバであるユーザの署名装置２をグループから削除する場合、グループ管理装置１の失効メンバ通知手段１０５Ｂは、削除したい署名装置２に対応するメンバ追跡情報をメンバ情報記憶部１０４から読み出す。また、失効メンバ通知手段１０５Ｂは、読み出したメンバ追跡情報をメンバ状態応答装置４に送信する。メンバ状態応答装置４の失効メンバ受信手段４０１Ｂは、失効メンバ通知手段１０５Ｂからメンバ追跡情報を受信し、受信したメンバ追跡情報をメンバ失効リスト記憶部４０２に記憶させる。【０１８２】
次に、署名装置２がグループ署名データを生成するグループ署名生成処理の動作を説明する。グループに加入したユーザの署名装置２は、ユーザ操作に従ってメッセージを入力すると、メッセージに対するグループ署名データを生成する。グループ署名生成手段２０６Ｂは、メッセージ入力手段２０４から入力したメッセージ、乱数生成器２０５が生成した乱数、メンバ登録証明書記憶部２０２が記憶するメンバ登録証明書、グループ署名鍵記憶部２０３が記憶するグループ署名鍵、及びメンバ追跡情報２０７が記憶するメンバ追跡情報にもとづいて、グループ署名データを生成する。この場合、グループ署名生成手段２０６Ｂは、署名装置２を特定できる情報を明かさずに、署名装置２がグループのメンバの装置であることを示すグループ署名データを生成する。【０１８３】
また、グループ署名生成手段２０６Ｂは、メンバ追跡情報の変換データを作成する。この場合、グループ署名生成手段２０６Ｂは、変換データからはメンバ追跡情報を特定できないが、メンバ追跡情報があれば変換データがメンバ追跡情報を変換したものであるか否かを判定できる性質を持つ変換データを生成する。例えば、グループ署名生成手段２０６Ｂは、一方向性関数を用いてメンバ追跡情報を変換することによって変換データを生成する。また、グループ署名生成手段２０６は、メッセージ及び変換データを含むグループ署名データを出力する。【０１８４】
次に、検証装置３及びメンバ状態応答装置４がグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の動作を説明する。検証装置３は、署名装置２からメッセージ及びグループ署名データを受け取り、グループ署名データがメッセージに対する正しい署名であるか否かを検証する。図１５に示すように、グループ署名検証手段３０１Ｂは、メッセージ、グループ署名データ、及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６Ｂで正しく生成された署名データであるか否かを確認する（ステップＳ１０１）。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１Ｂは、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の検証結果を出力する。【０１８５】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１Ｂは、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１Ｂは、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１Ｂは、メンバ状態応答装置４にメッセージ及びグループ署名データを送信し（ステップ１０２）、署名装置２のメンバ状態の判定を要求する。【０１８６】
メンバ状態応答装置４のメンバ状態判定手段４０７Ｂは、検証装置３から、メッセージ及びグループ署名データを受け取る（受信する）。また、メンバ状態判定手段４０７Ｂは、メッセージ、グループ署名データ、及び公開情報開示手段１０１が開示する公開情報を用いて、グループ署名データの正当性を確認する（ステップＳ１０３）。グループ署名データが正当でないと判断すると、メンバ状態判定手段４０７Ｂは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップ１０４）。【０１８７】
グループ署名データが正当であると判断すると、メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂが記憶するメンバ追跡情報と、グループ署名データに含まれる変換データとにもとづいて、以下の処理を行う。【０１８８】
まず、メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂからメンバ追跡情報を読み出す（ステップＳ５０５）。メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂにメンバ追跡情報が存在するか否かを判断する（ステップＳ５０６）。メンバ失効リスト記憶部４０２Ｂにメンバ追跡情報がない場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「有効」であると判定する（ステップＳ５０７）。そして、メンバ状態判定手段４０７Ｂは、「有効」を示す応答データを検証装置３に送信し、処理を終了する。【０１８９】
メンバ追跡情報が存在すると判断すると、メンバ状態判定手段４０７Ｂは、読み出したメンバ追跡情報についてグループ署名生成手段２０６Ｂが行った変換と同じ変換を行い、第２の変換データを作成する（ステップＳ５０８）。また、メンバ状態判定手段４０７Ｂは、グループ署名データに含まれる変換データと、作成した第２の変換データとが一致するか否かを調べる（ステップＳ５０９）。変換データが一致すると判断した場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「失効」していると判定し（ステップＳ５１０）、「失効」を示す応答データを検証装置３に送信する。【０１９０】
変換データが一致しないと判断した場合、メンバ状態判定手段４０７Ｂは、ステップＳ５０５に戻り、メンバ失効リスト記憶部４０２Ｂが記憶する次のメンバ追跡情報を読み出す。そして、メンバ状態判定手段４０７Ｂは、ステップＳ５０５からステップＳ５１０までの処理を繰り返し実行する。以上のように処理を実行することによって、メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂが記憶する全てのメンバ追跡情報に対して変換データが一致しないと判断した場合、メンバ状態を「有効」であるとみなす。【０１９１】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受信し受け取る（ステップＳ１１０）。検証結果出力手段３０２は、応答データにもとづいてメンバ状態が「有効」であるか否かを判断する（ステップＳ１１１）。応答データにもとづいてメンバ状態「有効」であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「受理」すると判定する。また、メンバ状態が「有効」以外であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する。【０１９２】
以上のように、本実施の形態によれば、グループ管理装置１は、署名装置２ごとに異なるメンバ追跡情報を発行する。また、署名装置２は、メンバ追跡情報の変換データをグループ署名データの一部として出力する。そして、メンバ状態応答装置４は、変換データを用いてメンバ状態を判定する。そのため、メンバ状態応答装置４は、開封秘密鍵（開封情報）を用いずにメンバ状態を判定することができる。【０１９３】
実施の形態８．
次に、本発明の第８の実施の形態を図面を参照して説明する。本実施の形態において、グループ署名システムの構成は、第７の実施の形態で示した図１２の構成と同様である。図１２に示すように、グループ署名システムは、グループ管理装置１と、署名装置２と、検証装置３と、メンバ状態応答装置４とを含む。また、本実施の形態において、グループ管理装置１及び署名装置２の構成は、第７の実施の形態におけるそれらの構成と同様である。【０１９４】
図１２に示すように、検証装置３は、グループ署名検証手段３０１Ｂと、検証結果出力手段３０２とを含む。【０１９５】
グループ署名検証手段３０１Ｂは、署名装置２からメッセージとグループ署名データとを受け取り（受信し）、グループ署名データの正当性を調べる機能を備える。また、グループ署名検証手段３０１Ｂは、グループ署名データが正当でないと判断した場合、「不受理」と判定し検証結果を出力する機能を備える。また、グループ署名検証手段３０１Ｂは、グループ署名データが正当であると判断した場合、グループ署名データを生成した署名装置２が有効なグループメンバの装置であるか否かを確認するために、グループ署名データに含まれる変換データをメンバ状態応答装置４のメンバ状態判定手段４０７Ｂに送信する機能を備える。【０１９６】
検証結果出力手段３０２は、メンバ状態応答装置４のメンバ状態判定手段４０７Ｂからメンバ状態の判定結果を受信する機能を備える。また、検証結果出力手段３０２は、受信した判定結果が「有効」である場合には「受理」と判定し、受信した判定結果が「失効」である場合には「不受理」と判定し、「受理」又は「不受理」の検証結果を出力する機能を備える。【０１９７】
図１２に示すように、メンバ状態管理装置４は、第７の実施の形態と同様に、失効メンバ受信手段４０１Ｂと、メンバ失効リスト記憶部４０２Ｂと、メンバ状態判定手段４０７Ｂとを含む。【０１９８】
失効メンバ受信手段４０１Ｂは、失効メンバ通知手段１０５Ｂから送信された失効メンバのメンバ追跡情報を受信し、メンバ失効リスト記憶部４０２Ｂに記憶させる機能を備える。【０１９９】
メンバ失効リスト記憶部４０２Ｂは、メンバ失効リストを記憶する。図１６は、メンバ失効リスト記憶部４０２Ｂが記憶する情報の他の例を示す説明図である。図１６に示すように、例えば、メンバ失効リスト記憶部４０２Ｂは、メンバ失効リストとしてグループに所属するすべての署名装置２に対応するメンバ追跡情報と、対応する署名装置２のメンバ状態とを記憶する。また、メンバ失効リスト記憶部４０２Ｂは、メンバ状態として、「有効」又は「失効」のいずれかの情報を記憶する。【０２００】
メンバ状態判定手段４０７Ｂは、検証装置３のグループ署名検証手段３０１Ｂからメッセージとグループ署名データとを受け取り（受信し）、メンバ失効リストを用いてグループ署名データを生成した署名装置２が有効なグループメンバの装置であるか否かを調べる機能を備える。また、メンバ状態判定手段４０７Ｂは、有効又は失効を示すメンバ状態を含む応答データを検証装置３の検証結果出力手段３０２に送信する機能を備える。【０２０１】
次に、動作について説明する。図１７は、グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。以下、図１２及び図１７を参照して、グループ署名システムの動作を説明する。なお、メンバ加入処理、失効メンバ通知処理及びグループ署名生成処理については、第７の実施の形態におけるそれらの処理と同様である。【０２０２】
検証装置３は、署名装置２からメッセージ及びグループ署名データを受け取り、グループ署名データがメッセージに対する正しい署名であるか否かを検証する。図１７に示すように、グループ署名検証手段３０１Ｂは、メッセージ、グループ署名データ、及び公開情報開示手段１０１が開示する公開情報にもとづいて、グループ署名データがグループ署名生成手段２０６Ｂで正しく生成された署名データであるか否かを確認する（ステップＳ１０１）。グループ署名データが正しく生成された署名データでないと判断すると、グループ署名検証手段３０１Ｂは、グループ署名データにもとづいて不受理と判定し、メッセージを受理しない旨の検証結果を出力する。【０２０３】
グループ署名データが正しく生成された署名データであると判断すると、グループ署名検証手段３０１Ｂは、グループ署名データを生成した署名装置２のメンバ状態を確認する。すなわち、グループ署名検証手段３０１Ｂは、署名装置２がグループの有効なメンバの装置であるか否かを確認する。グループ署名検証手段３０１Ｂは、メンバ状態応答装置４にグループ署名データに含まれる変換データを送信し（ステップＳ６０２）、署名装置２のメンバ状態の判定を要求する。【０２０４】
メンバ状態応答装置４のメンバ状態判定手段４０７Ｂは、検証装置３から変換データを受け取る（受信する）と、メンバ失効リスト記憶部４０２Ｂからメンバ追跡情報を読み出す（ステップＳ５０５）。メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂにメンバ追跡情報が存在するか否かを判断する（ステップＳ５０６）。【０２０５】
メンバ追跡情報が存在すると判断すると、メンバ状態判定手段４０７Ｂは、以下の処理を行う。メンバ状態判定手段４０７Ｂは、読み出したメンバ追跡情報についてグループ署名生成手段２０６Ｂが行った変換と同じ変換を行い、第２の変換データを作成する（ステップＳ５０８）。また、メンバ状態判定手段４０７Ｂは、グループ署名データに含まれる変換データと、作成した第２の変換データとが一致するか否かを調べる（ステップＳ５０９）。【０２０６】
変換データが一致しないと判断した場合、メンバ状態判定手段４０７Ｂは、ステップＳ５０５に戻り、メンバ失効リスト記憶部４０２Ｂが記憶する新たなメンバ追跡情報を読み出す。そして、メンバ状態判定手段４０７Ｂは、ステップＳ５０５からステップＳ５１０までの処理を繰り返し実行する。【０２０７】
変換データが一致すると判断した場合、メンバ状態判定手段４０７Ｂは、メンバ失効リストにメンバ追跡情報と対応づけて記憶されているメンバ状態を調べる（ステップＳ６１０）。そして、メンバ状態判定手段４０７Ｂは、メンバ状態に応じて、「有効」又は「失効」を示す応答データを検証装置３に送信する。例えば、メンバ追跡情報に対応するメンバ状態が「有効」である場合、メンバ状態判定手段４０７Ｂは、「有効」を示す応答データを送信する（ステップＳ６１１）。また、例えば、メンバ追跡情報に対応するメンバ状態が「失効」である場合、メンバ状態判定手段４０７Ｂは、「失効」を示す応答データを送信する（ステップＳ６１２）。【０２０８】
メンバ失効リスト記憶部４０２Ｂが記憶する全てのメンバ追跡情報について変換データが一致しないと判断し、読み出すメンバ追跡情報がなくなった場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「不明」であると判定する（ステップＳ６１３）。そして、メンバ状態判定手段４０７Ｂは、「不明」を示す応答データを検証装置３に送信する。【０２０９】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受信し受け取る（ステップＳ１１０）。検証結果出力手段３０２は、応答データにもとづいてメンバ状態が「有効」であるか否かを判断する（ステップＳ１１１）。応答データにもとづいてメンバ状態「有効」であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「受理」すると判定する。また、メンバ状態が「有効」以外であると判断すると、検証結果出力手段３０２は、グループ署名データにもとづいてメッセージを「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する。
【実施例１】
【０２１０】
次に、本発明の第１の実施例を説明する。なお、本実施例は、本発明の第１の実施の形態に相当する。グループ管理装置１は、システムに共通の定数を定める。まず、グループ管理装置１は、セキュリティパラメータε、ｋ及びｌｐを定める。また、グループ管理装置１は、λ１、λ２、γ１及びγ２を、λ１＞ε（λ２＋ｋ）、λ２＞４ｌｐ、γ１＞ε（γ２＋ｋ）及びγ２＞λ１＋２を満たすように選ぶ。また、グループ管理装置１は、衝突困難ハッシュ関数Ｈを定める。そして、グループ管理装置１は、定めたε，ｋ，ｌｐ，λ１，λ２，γ１，γ２，Ｈを公開情報開示手段１０１に出力する。【０２１１】
次に、グループ管理装置１は、メンバ登録用情報を生成する。まず大きさｌｐビットの素数ｐ’及びｑ’を選ぶ。次に、グループ管理装置１は、ｐ＝２ｐ’＋１及びｑ＝２ｑ’＋１を計算し、ｎ＝ｐｑを求める。また、グループ管理装置１は、ｎの平方剰余群からランダムにａ，ａ０，ｇ，ｈを選ぶ。グループ管理装置１は、（ｐ’，ｑ’）をメンバ登録用情報記憶部１０２に出力し、（ｎ，ａ，ａ０，ｇ，ｈ）を公開情報開示手段１０１にそれぞれ出力する。【０２１２】
次に、グループ管理装置１は、開封情報を生成する。グループ管理装置１は、位数ｐ’及びｑ’の乗法群からランダムにｘを選び、式（１）を計算する。【０２１３】
ｙ＝ｇx  ｍｏｄ  ｎ  式（１）【０２１４】
グループ管理装置１は、ｘを開封情報記憶部１０６に出力し、ｙを公開情報開示手段１０１にそれぞれ出力する。また、グループ管理装置１によって生成された開封情報は、メンバ状態応答装置４に秘密に通知される。【０２１５】
初期設定及び鍵生成の後、署名装置２は、グループに加入するために、グループ管理装置１と通信して登録処理を行う。登録処理を行うことによって、署名装置２は、グループ秘密鍵ｘｉと、式（２）を満たすメンバ登録証明書（Ａｉ，ｅｉ）とを取得する。【０２１６】
【数１】
0004816458.tif 000002
【０２１７】
署名装置２のグループ加入手段２０１は、０から２λ2までの間からチルダｘｉをランダムに選び、０からｎ2までの間からチルダｒｉをそれぞれランダムに選ぶ。そして、グループ加入手段２０１は、式（３）を計算する。【０２１８】
【数２】
0004816458.tif 000003
【０２１９】
また、グループ加入手段２０１は、チルダｘｉ及びチルダｒｉを正しく生成したことを示す証明データを作成する。また、グループ加入手段２０１は、式（４）の条件を満たす乱数ｔ１及びｔ２を選び、式（５）を計算する。【０２２０】
【数３】
0004816458.tif 000004
【０２２１】
【数４】
0004816458.tif 000005
【０２２２】
そして、グループ加入手段２０１は、（Ｃ１，ｃ１，ｓ１，ｓ２）と、（Ｃ１，ｃ１，ｓ１，ｓ２）に対する署名装置２のデジタル署名とをグループ管理装置１に送信する。【０２２３】
グループ管理装置１のメンバ登録手段１０３は、Ｃ１，ｃ１，ｓ１，ｓ２を受信すると、署名装置２の公開鍵証明書を用いてデジタル署名を確認した後、式（６）が成り立つか否かを確認する。【０２２４】
【数５】
0004816458.tif 000006
【０２２５】
式（６）が成り立つことを確認できると、メンバ登録手段１０３は、式（７）の条件を満たすαｉ及びβｉをランダムに選び、署名装置２に送信する。【０２２６】
【数６】
0004816458.tif 000007
【０２２７】
グループ加入手段２０１は、αｉ及びβｉを受信すると、式（８）を計算する。【０２２８】
【数７】
0004816458.tif 000008
【０２２９】
ここで、計算したｘｉは、グループ署名鍵である。従って、グループ管理装置１と署名装置２とでランダムにグループ署名鍵を作成したことになる。ただし、グループ管理装置１は、グループ署名鍵を計算することはできない。次に、グループ加入手段２０１は、式（９）を計算する。【０２３０】
【数８】
0004816458.tif 000009
【０２３１】
また、グループ加入手段２０１は、ｘｉを正しく生成したことを示す証明データを作成する。また、グループ加入手段２０１は、式（１０）の条件を満たす乱数ｔ３，ｔ４，ｔ５を選び、式（１１）を計算する。【０２３２】
【数９】
0004816458.tif 000010
【０２３３】
【数１０】
0004816458.tif 000011
【０２３４】
そして、グループ加入手段２０１は、（Ｃ２，ｃ２，ｓ３，ｓ４，ｓ５）と、（Ｃ２，ｃ２，ｓ３，ｓ４，ｓ５）に対する署名装置２のデジタル署名とを、グループ管理装置１に送信する。【０２３５】
グループ管理装置１のメンバ登録手段１０３は、Ｃ２，ｃ２，ｓ３，ｓ４，ｓ５を受信すると、式（１２）が成り立つか否かを調べる。【０２３６】
【数１１】
0004816458.tif 000012
【０２３７】
式（１２）が成り立つことを確認できると、メンバ登録手段１０３は、式（１３）の条件を満たす素数ｅｉをランダムに選び、式（１４）を計算する。【０２３８】
【数１２】
0004816458.tif 000013
【０２３９】
【数１３】
0004816458.tif 000014
【０２４０】
なお、式（４）で求められる値は、ｐ’及びｑ’を知らないと計算できない。メンバ登録手段１０３は、求めた（Ａｉ，ｅｉ）をメンバ登録証明書として署名装置２に送信する。【０２４１】
署名装置２のグループ加入手段２０１は、（Ａｉ，ｅｉ）を受け取ると、式（２）が成り立つか否かを調べ、メンバ登録証明書が正しく生成されているか否か確認する。メンバ登録証明書が正しく生成されていることを確認できると、グループ加入手段２０１は、メンバ登録証明書（Ａｉ，ｅｉ）をメンバ登録証明書記憶部２０２に記憶させる。また、グループ加入手段２０１は、ｘｉをグループ署名鍵としてグループ署名鍵記憶部２０３に記憶させる。【０２４２】
グループ管理装置１のメンバ登録手段１０３は、署名装置２に対応するメンバ登録証明書（Ａｉ，ｅｉ）及び（Ｃ１，Ｃ２，ｃ１，ｃ２，ｓ１，ｓ２，ｓ３，ｓ４，ｓ５）と、それぞれに付与された署名装置２のデジタル署名とを、メンバ情報記憶部１０４に記憶させる。また、グループ管理装置１は、以上の手順に従って取得したメンバ情報をメンバ状態応答装置４に通知する。【０２４３】
グループに加入している署名装置２をグループから削除する場合、グループ管理装置１の失効メンバ通知手段１０５は、脱退するメンバの署名装置２に対応する公開鍵証明書をメンバ状態応答装置４に通知（送信）する。メンバ状態応答装置４の失効メンバ受信手段４０１は、公開鍵証明書を受信して、メンバ失効リスト記憶部４０２が記憶するメンバ失効リストに追加する。【０２４４】
メンバ登録証明書及びグループ署名鍵を取得した署名装置２のグループ署名生成手段２０６は、グループ署名データを作成する。まず、乱数生成器２０５は、２ｌｐビットの乱数ｗを生成し、グループ署名生成手段２０６に出力する。乱数ｗを受け取ると、グループ署名生成手段２０６は、乱数ｗとメンバ登録証明書（Ａｉ，ｅｉ）と公開情報開示手段１０１が開示する公開情報とにもとづいて、式（１５）を用いて、（Ａｉ、ｅｉ）の変換データを計算する。【０２４５】
【数１４】
0004816458.tif 000015
【０２４６】
次に、グループ署名生成手段２０６は、変換データを正しく生成したことを示すデータを作成する。乱数生成器２０５は、ε（γ２＋ｋ）ビットの乱数ｒ１、ε（λ２＋ｋ）ビットの乱数ｒ２、ε（γ１＋２ｌｐ＋ｋ＋１）ビットの乱数ｒ３、及びε（２ｌｐ＋ｋ）ビットの乱数ｒ４を生成し、グループ署名生成手段２０６に出力する。乱数を受け取ると、グループ署名生成手段２０６は、式（１６）を計算する。【０２４７】
【数１５】
0004816458.tif 000016
【０２４８】
次に、グループ署名生成手段２０６は、メッセージ入力手段２０４から入力したメッセージｍを用いて、式（１７）を計算する。また、グループ署名生成手段２０６は、式（１８）を計算する。【０２４９】
【数１６】
0004816458.tif 000017
【０２５０】
【数１７】
0004816458.tif 000018
【０２５１】
そして、グループ署名生成手段２０６は、メッセージｍ及び（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）をグループ署名データとして出力する。なお、ここで、グループ署名生成手段２０６は、ｃの代わりに式（１９）に示すｃ”を計算して出力してもよい。【０２５２】
【数１８】
0004816458.tif 000019
【０２５３】
検証装置３は、署名装置２が作成したメッセージｍ及びグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）を受け取ると、グループ署名データの正当性を、以下のように検証する。図５において、検証装置３のグループ署名検証手段３０１は、受け取ったグループ署名が所定の検証式を満たすか否かを調べる（ステップＳ１０１）。本実施例では、グループ署名検証手段３０１は、メッセージｍ、グループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）、及び公開情報開示手段１０１が開示する公開情報にもとづいて、式（２０）を計算する。【０２５４】
【数１９】
0004816458.tif 000020
【０２５５】
グループ署名検証手段３０１は、ｃ’＝ｃであり、且つｓ１がε（γ２＋ｋ）＋１ビット、ｓ２がε（λ２＋ｋ）＋１ビット、ｓ３がε（γ１＋２ｌｐ＋ｋ＋１）＋１ビット、及びｓ４がε（２ｌｐ＋ｋ）＋１ビットの条件を満たす場合のみ、メンバ状態応答装置４にメッセージｍとグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とを送信する（ステップＳ１０２）。条件を満たさない場合、グループ署名検証手段３０１は、グループ署名データが正当でないと判定し不受理を出力する。【０２５６】
また、グループ署名検証手段３０１は、署名生成でｃの代わりにｃ”を出力した場合、式（２１）が成り立つかどうかを調べる。【０２５７】
【数２０】
0004816458.tif 000021
【０２５８】
式（２１）が成り立つ場合、グループ署名検証手段３０１は、メッセージのハッシュ値Ｈ（ｍ）とグループ署名データ（ｃ”，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とをメンバ状態応答装置４に送信する。【０２５９】
なお、以上に示したグループ管理装置１と署名装置２とがメンバ登録証明書及びグループ署名鍵を生成する手順と、署名装置２がグループ署名データを生成する手順と、検証装置３がグループ署名データを検証する手順とは、非特許文献２に記載されている。【０２６０】
メンバ状態応答装置４の署名開封手段４０４は、メッセージｍとグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とを受信すると、式（２０）に示すグループ署名データに対する検証式を確認する。そして、署名開封手段４０４は、受信したグループ署名データが受信したメッセージに対する正当なグループ署名データであることを確認する（ステップＳ１０３）。【０２６１】
グループ署名データが正当でない場合、署名開封手段４０４は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ１０４）。グループ署名データが正当であると判断すると、署名開封手段４０４は、開封情報記憶部４０３が記憶する開封情報ｘを用いて、署名者特定用情報Ａ’を式（２２）に従って計算する（ステップＳ１０５）。【０２６２】
【数２１】
0004816458.tif 000022
【０２６３】
また、署名開封手段４０４は、求めた署名者特定用情報Ａ’を署名者特定手段４０６に出力する。署名者特定手段４０６は、署名者特定用情報Ａ’を受け取ると、メンバ情報記憶部４０５が記憶するメンバ情報の中からＡ’＝Ａｉを満たすＡｉを持つメンバ登録証明書を検索して特定する。また、署名開封手段４０４は、特定したメンバ登録証明書に対応づけて記憶されているデジタル署名から署名装置２を特定し、署名装置２の公開鍵証明書をＩＤ情報としてメンバ状態判定手段４０７に出力する（ステップＳ１０６）。【０２６４】
メンバ状態判定手段４０７は、ＩＤ情報として公開鍵証明書を受け取り、メンバ失効リスト記憶部４０４が記憶するメンバ失効リストの中に受け取った公開鍵証明書があるか否か検索する（ステップＳ１０７）。公開鍵証明書がメンバ失効リストにない場合、メンバ状態判定手段４０７は、メンバ状態を「有効」であると判定し、「有効」を示す応答データを検証装置３に送信する（ステップＳ１０８）。公開鍵証明書がメンバ失効リストにある場合、メンバ状態判定手段４０７は、メンバ状態を「失効」であると判定し、「失効」を示す応答データを検証装置３に送信する（ステップＳ１０９）。【０２６５】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４からの応答データを受信すると、応答データが「有効」である場合にはグループ署名にもとづいて「受理」と判定し、「失効」である場合には「不受理」と判定する。そして、検証結果出力手段３０２は、検証結果を出力する（ステップＳ１１０，Ｓ１１１）。【０２６６】
また、グループ管理装置１は、グループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）を受け取り、グループ署名データを生成した署名装置２を特定する。署名開封手段１０７は、開封情報記憶部１０６が記憶する開封情報ｘを用いて、署名者特定用情報Ａ’を式（２２）に従って計算し、署名者特定手段１０８に出力する。次に、署名者特定手段１０８は、メンバ情報記憶部１０４が記憶するメンバ情報の中から、Ａ’と一致するＡｉを検索する。一致するＡｉを見つけると、署名者特定手段１０８は、Ａｉの含まれるメンバ情報に付随するデジタル署名からＡｉの持ち主である署名装置２を特定する。
【実施例２】
【０２６７】
次に、本発明の第２の実施例を説明する。なお、本実施例は、本発明の第２の実施の形態に相当する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定、鍵生成処理及びグループ加入処理は、第１の実施例におけるそれらの処理と同様である。【０２６８】
グループに加入している署名装置２をグループから削除する場合、グループ管理装置１の失効メンバ通知手段１０５Ａは、脱退するメンバの署名装置２に対応するメンバ登録証明書（Ａｉ，ｅｉ）をメンバ状態応答装置４に通知（送信）する。メンバ状態応答装置４の失効メンバ受信手段４０１Ａは、メンバ登録証明書（Ａｉ，ｅｉ）を受信して、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストに追加する。【０２６９】
また、本実施例において、グループ署名生成処理は、第１の実施例におけるグループ署名生成処理と同様である。【０２７０】
検証装置３は、メッセージｍ及びグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）を受け取る。すると、検証装置３のグループ署名検証手段３０１は、第１の実施例と同様に、グループ署名データが正当か否かを確認する（図８に示すステップＳ１０１）。グループ署名データが正当であることを確認できると、グループ署名検証手段３０１は、メッセージｍ及びグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）をメンバ状態応答装置４に送信する。【０２７１】
なお、第１の実施例と同様に、メンバ登録証明書及びグループ署名鍵を生成する手順と、グループ署名データを生成する手順と、グループ署名データを検証する手順とは、非特許文献２に記載されている。【０２７２】
メッセージｍとグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とを受信すると、メンバ状態応答装置４の署名開封手段４０４Ａは、式（２０）に示すグループ署名データに対する検証式を確認する。そして、署名開封手段４０４Ａは、受信したグループ署名データが受信したメッセージに対する正当なグループ署名データであることを確認する（ステップＳ１０３）。【０２７３】
グループ署名データが正当でない場合、署名開封手段４０４Ａは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ１０４）。グループ署名データが正当であると判断すると、署名開封手段４０４Ａは、開封情報記憶部４０３が記憶する開封情報ｘを用いて、署名者特定用情報Ａ’を式（２２）に従って計算する（ステップＳ１０５）。また、署名開封手段４０４Ａは、求めた署名者特定用情報Ａ’をメンバ状態判定手段４０７Ａに出力する。【０２７４】
メンバ状態判定手段４０７Ａは、署名者特定用情報Ａ’を受け取り、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストの中に、Ａ’＝Ａｉの条件を満たすＡｉが存在するか否か検索する（ステップＳ２０６）。存在すると判断すると、メンバ状態判定手段４０７Ａは、メンバ状態を「失効」と判定し（ステップＳ１０８）、存在しないと判断すると、メンバ状態判定手段４０７Ａは、メンバ状態を「有効」であると判定する（ステップＳ１０９）。そして、メンバ状態判定手段４０７Ａは、それぞれ「失効」又は「有効」を示す応答データを検証装置３に送信する。【０２７５】
応答データを受信すると（ステップＳ１１０）、検証装置３の検証結果出力手段３０２は、第１の実施例と同様の処理を行い検証結果を出力する（ステップＳ１１１）。また、グループ管理装置１が行う署名者特定処理は、第１の実施例における署名者特定処理と同様である。
【実施例３】
【０２７６】
次に、本発明の第３の実施例を説明する。なお、本実施例は、本発明の第３の実施の形態に相当する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定、鍵生成処理、グループ加入処理及びメンバ失効処理は、第１の実施例におけるそれらの処理と同様である。【０２７７】
また、グループ署名生成処理も第１の実施例にけるグループ署名生成処理と同様に行い、署名装置２のグループ署名生成手段２０６は、メッセージｍとグループ署名データ(ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とを出力する。【０２７８】
検証装置３は、メッセージｍとグループ署名データ(ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とを受け取り、第１の実施例と同様に、グループ署名データの正当性を確認する（図９に示すステップＳ１０１）。グループ署名データが正当であることを確認できると、グループ署名検証手段３０１は、グループ署名データのうちの（Ｔ１，Ｔ２）をメンバ状態応答装置４に送信する（ステップＳ３０２）。【０２７９】
なお、第１の実施例と同様に、メンバ登録証明書及びグループ署名鍵を生成する手順と、グループ署名データを生成する手順と、グループ署名データを検証する手順とは、非特許文献２に記載されている。【０２８０】
メンバ状態応答装置４の署名開封手段４０４は、（Ｔ１，Ｔ２）を受け取ると、第１の実施例と同様に、開封情報ｘを用いてＡ’を計算し、求めたＡ’を署名者特定用情報として署名者特定手段４０６に出力する。【０２８１】
署名者特定用情報を受け取ると、メンバ状態判定手段４０７は、第１の実施例と同様の処理を行い応答データを送信する。また、応答データを受信すると、検証装置３の検証結果出力手段３０２は、第１の実施例と同様の処理を行い検証結果を出力する。また、グループ管理装置１が行う署名者特定処理は、第１の実施例における署名者特定処理と同様である。
【実施例４】
【０２８２】
次に、本発明の第４の実施例を説明する。なお、本実施例は、本発明の第４の実施の形態に相当する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定、鍵生成処理、グループ加入処理、メンバ失効処理及びグループ署名生成処理は、第３の実施例におけるそれらの処理と同様である。【０２８３】
検証装置３は、メッセージｍとグループ署名データ(ｃ，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）とを受け取り、第１の実施例と同様に、グループ署名データの正当性を確認する（図１１に示すステップＳ１０１）。グループ署名データが正当であることを確認できると、グループ署名検証手段３０１は、グループ署名データのうちの（Ｔ１，Ｔ２）をメンバ状態応答装置４に送信する（ステップＳ３０２）。【０２８４】
なお、第１の実施例と同様に、メンバ登録証明書及びグループ署名鍵を生成する手順と、グループ署名データを生成する手順と、グループ署名データを検証する手順とは、非特許文献２に記載されている。【０２８５】
メンバ状態応答装置４の署名開封手段４０４Ａは、（Ｔ１，Ｔ２）を受け取ると、第１の実施例と同様に、開封情報ｘを用いてＡ’を計算し、求めたＡ’を署名者特定用情報としてメンバ状態判定手段４０７Ａに出力する。【０２８６】
メンバ状態判定手段４０７Ａは、Ａ’を受け取ると、メンバ失効リスト記憶部４０２Ａが記憶するメンバ失効リストに、Ａ’＝Ａｉの条件を満たすＡ’が存在するか否かを検索する（ステップＳ４０４）。見つからない（条件を満たすＡ’が存在しない）場合、メンバ状態判定手段４０７Ａは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ４０５）。見つかった（条件を満たすＡ’が存在する）場合、メンバ状態判定手段４０７Ａは、メンバ失効リストに記憶されたＡｉの状態に応じてメンバ状態の有効又は失効を判定し、「有効」又は「失効」を示す応答データを検証装置３に送信する（ステップＳ４０７，Ｓ４０８）。【０２８７】
応答データを受信すると、検証装置３の検証結果出力手段３０２は、第３の実施例と同様の処理を行い検証結果を出力する。また、グループ管理装置１が行う署名者特定処理は、第１の実施例における署名者特定処理と同様である。
【実施例５】
【０２８８】
次に、本発明の第５の実施例を説明する。なお、本実施例は本発明の第５の実施の形態に相当する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定、鍵生成処理、グループ加入処理及びメンバ失効処理は、第１の実施例又は第２の実施例におけるそれらの処理と同様である。【０２８９】
署名装置２の乱数発生器２０５は、第１の実施例と同様に乱数ｗを生成する。また、署名装置２のグループ署名生成手段２０６は、第１の実施例と同様に、式（１５）及び式（１６）を計算する。また、グループ署名生成手段２０６は、式（２３）を計算する。【０２９０】
【数２２】
0004816458.tif 000023
【０２９１】
また、グループ署名生成手段２０６は、式（２４）を計算する。【０２９２】
【数２３】
0004816458.tif 000024
【０２９３】
次に、乱数生成器２０５は、ε（γ２＋ｋ）ビットの乱数ｒ５、ε（λ２＋ｋ）ビットの乱数ｒ６、ε（γ１＋２ｌｐ＋ｋ＋１）ビットの乱数ｒ７、及びε（２ｌｐ＋ｋ）ビットの乱数ｒ８を新たに生成する。グループ署名生成手段２０６は、乱数ｒ５，ｒ６，ｒ７，ｒ８を用いて式（２５）を計算する。【０２９４】
【数２４】
0004816458.tif 000025
【０２９５】
また、グループ署名生成手段２０６は、メッセージ入力手段２０４から入力したメッセージｍに対して、式（２６）及び式（２７）を計算する。【０２９６】
【数２５】
0004816458.tif 000026
【０２９７】
【数２６】
0004816458.tif 000027
【０２９８】
そして、グループ署名生成手段２０６は、メッセージｍ及び（ｃ１，ｃ２，ｓ１，ｓ２，ｓ３，ｓ４，ｓ５，ｓ６，ｓ７，ｓ８，Ｔ１，Ｔ２，Ｔ３）をグループ署名データとして出力する。【０２９９】
検証装置３は、メッセージｍ及びグループ署名データ（ｃ１，ｃ２，ｓ１，ｓ２，ｓ３，ｓ４，ｓ５，ｓ６，ｓ７，ｓ８，Ｔ１，Ｔ２，Ｔ３）を受け取ると、グループ署名データの正当性を検証する。検証装置３のグループ署名検証装置３０１は、メッセージｍ、グループ署名データ（ｃ１，ｃ２，ｓ１，ｓ２，ｓ３，ｓ４，ｓ５，ｓ６，ｓ７，ｓ８，Ｔ１，Ｔ２，Ｔ３）、及び公開情報開示手段１０１が開示する公開情報にもとづいて、式（２８）、式（２９）及び式（３０）の条件を満たすか否かを確認する。【０３００】
【数２７】
0004816458.tif 000028
【０３０１】
【数２８】
0004816458.tif 000029
【０３０２】
【数２９】
0004816458.tif 000030
【０３０３】
式（２８）、式（２９）及び式（３０）の条件を満たさない場合、検証装置３は、グループ署名データにもとづいて不受理と判定する。式（２８）、式（２９）及び式（３０）の条件を満たす場合、検証装置３は、メンバ状態応答装置４にグループ署名データのうちの（ｃ１，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）を送信する。【０３０４】
メンバ状態応答装置４の署名開封手段４０４は、（ｃ１，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）を受信すると、式（２８）及び式（３１）が成り立つか否かを確認する。【０３０５】
【数３０】
0004816458.tif 000031
【０３０６】
式（２８）及び式（３１）が成り立たない場合、署名開封手段４０４は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する。式（２８）及び式（３１）が成り立つ場合、署名開封手段４０４は、開封情報ｘを用いて第１の実施例と同様に署名者特定用情報Ａｉを生成する。【０３０７】
署名者特定用情報を受け取ると、メンバ状態判定手段４０７は、第１の実施例又は第２の実施例と同様の処理を行い応答データを送信する。また、応答データを受信すると、検証装置３の検証結果出力手段３０２は、第１の実施例又は第２の実施例と同様の処理を行い検証結果を出力する。また、グループ管理装置１が行う署名者特定処理も、第１の実施例における署名者特定処理と同様である。
【実施例６】
【０３０８】
次に、本発明の第６の実施例を説明する。なお、本実施例は、本発明の第６の実施例に相当する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定は、第１の実施例又は第２の実施例における初期設定と同様である。【０３０９】
鍵生成処理において、グループ管理装置１は、第１の実施例と同様に、開封情報ｘと公開情報ｙとを生成する。メンバ状態応答装置４は、位数ｐ’及びｑ’の乗法群からランダムにｕを選び、式（３２）を計算する。【０３１０】
ｚ＝ｇu  ｍｏｄ  ｎ  式（３２）【０３１１】
メンバ状態応答装置４は、ｕを開封情報記憶部４０３に記憶させ、ｚをメンバ状態応答装置４の公開鍵として公開情報開示手段１０１に出力する。なお、グループ加入処理及びメンバ失効処理は、第１の実施例又は第２の実施例におけるそれらの処理と同様である。【０３１２】
署名装置２の乱数発生器２０５は、２ｌｐビットの乱数ｔを生成する。また、署名装置２のグループ署名生成手段２０６は、メンバ状態応答装置４の公開鍵ｚを用いて、式（３３）を計算する。【０３１３】
【数３１】
0004816458.tif 000032
【０３１４】
また、乱数生成器２０５は、２ｌｐビットの乱数ｗを生成する。グループ署名生成手段２０６は、公開鍵ｚと同様に、グループ管理装置１の公開鍵ｙを用いて、式（３４）を計算する。【０３１５】
【数３２】
0004816458.tif 000033
【０３１６】
また、グループ署名生成手段２０６は、Ｔ１，Ｔ２がメンバ登録証明書の正しい変換データであることを証明するデータを作成する。まず、乱数生成器２０５は、ε（γ２＋ｋ）ビットの乱数ｒ１、ε（λ２＋ｋ）ビットの乱数ｒ２、ε（γ１＋２ｌｐ＋ｋ＋１）ビットの乱数ｒ３、及びε（２ｌｐ＋ｋ）ビットの乱数ｒ４を生成する。また、グループ署名生成手段２０６は、式（３５）を計算し、式（３６）を計算する。【０３１７】
【数３３】
0004816458.tif 000034
【０３１８】
【数３４】
0004816458.tif 000035
【０３１９】
また、グループ署名生成手段２０６は、式（３７）を計算する。【０３２０】
【数３５】
0004816458.tif 000036
【０３２１】
次に、グループ署名生成手段２０６は、Ｔ４，Ｔ５がメンバ登録証明書の正しい変換データであり、且つ（Ｔ１，Ｔ２）と（Ｔ４，Ｔ５）とが同じメンバ登録証明書を変換していることを示すデータを作成する。乱数生成器２０５は、ε（γ２＋ｋ）ビットの乱数ｒ５、ε（λ２＋ｋ）ビットの乱数ｒ６、ε（γ１＋２ｌｐ＋ｋ＋１）ビットの乱数ｒ７、ε（２ｌｐ＋ｋ）ビットの乱数ｒ８、及びε（２ｌｐ＋ｋ）ビットの乱数ｒ９を生成する。また、グループ署名生成手段２０６は、式（３８）を計算する。【０３２２】
【数３６】
0004816458.tif 000037
【０３２３】
次に、グループ署名生成手段２０６は、メッセージｍを用いて、式（３９）を計算し、式（４０）を計算する。【０３２４】
【数３７】
0004816458.tif 000038
【０３２５】
【数３８】
0004816458.tif 000039
【０３２６】
そして、グループ署名生成手段２０６は、メッセージｍ及び（ｃ１，ｃ２，ｓ１、ｓ２、ｓ３、ｓ４，ｓ５，ｓ６，ｓ７，ｓ８，ｓ９，Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５，Ｔ６）を、グループ署名データとして出力する。【０３２７】
検証装置３は、メッセージｍ及びグループ署名データ（ｃ１，ｃ２，ｓ１、ｓ２、ｓ３、ｓ４，ｓ５，ｓ６，ｓ７，ｓ８，ｓ９，Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５，Ｔ６）を受け取り、グループ署名の正当性を検証する。検証装置３のグループ署名検証手段３０１は、メッセージｍ、グループ署名データ（ｃ１，ｃ２，ｓ１、ｓ２、ｓ３、ｓ４，ｓ５，ｓ６，ｓ７，ｓ８，ｓ９，Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５，Ｔ６）、及び公開情報開示手段１０１が開示する公開情報にもとづいて、式（４１）及び式（４２）を満たすか否かを確認する。【０３２８】
【数３９】
0004816458.tif 000040
【０３２９】
【数４０】
0004816458.tif 000041
【０３３０】
式（４１）及び式（４２）を満たさない場合、グループ署名検証手段３０１は、グループ署名データを不受理と判定し、検証結果を出力する。式（４１）及び式（４２）を満たす場合、グループ署名検証手段３０１は、メンバ状態応答装置４に、グループ署名データのうちの（ｃ１，ｓ１、ｓ２、ｓ３、ｓ４，Ｔ１，Ｔ２，Ｔ３）を送信する。【０３３１】
メンバ状態応答装置４の署名開封手段４０４は、（ｃ１，ｓ１，ｓ２，ｓ３，ｓ４，Ｔ１，Ｔ２，Ｔ３）を受信すると、式（４３）及び式（４４）が成り立つか否かを確認する。【０３３２】
【数４１】
0004816458.tif 000042
【０３３３】
【数４２】
0004816458.tif 000043
【０３３４】
式（４３）及び式（４４）が成り立たない場合、署名開封手段４０４は、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する。式（４３）及び式（４４）が成り立つと判断した場合、署名開封手段４０４は、開封情報ｘを用いて第１の実施例と同様に署名者特定用情報Ａｉを生成する。【０３３５】
署名者特定用情報を受け取ると、メンバ状態判定手段４０７は、第１の実施例又は第２の実施例と同様の処理を行い応答データを送信する。また、応答データを受信すると、検証装置３の検証結果出力手段３０２は、第１の実施例又は第２の実施例と同様の処理を行い検証結果を出力する。また、グループ管理装置１が行う署名者特定処理は、第１の実施例における署名者特定処理と同様である。
【実施例７】
【０３３６】
次に、本発明の第７の実施例を説明する。なお、本実施例は、本発明の第７の実施の形態に相当する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定は、第１の実施例における初期設定と同様である。【０３３７】
鍵生成処理において、グループ管理装置１は、第１の実施例と同様に素数ｐ’及びｑ’を選び、ｐ＝２ｐ’＋１及びｑ＝２ｑ’＋１を計算し、ｎ＝ｐｑを求める。また、グループ管理装置１は、ｎの平方剰余群からランダムにａ，ａ０，ｂ，ｇ，ｈを選ぶ。また、グループ管理装置１は、（ｐ’，ｑ’）をグループ管理装置１のメンバ登録用情報記憶部１０２に出力し、（ｎ，ａ，ａ０，ｂ，ｇ，ｈ）を公開情報開示手段１０１に出力する。グループ管理装置１は、第１の実施例と同様に、開封情報ｘと公開鍵ｙとを生成する。そして、グループ管理装置１は、ｘを開封情報記憶部１０６に出力し、ｙを公開情報開示手段１０１に出力する。【０３３８】
初期設定及び鍵生成の後、グループ管理装置１は、署名装置２をグループのメンバとして登録する。【０３３９】
署名装置２は、第１の実施例と同様の処理を行う。署名装置２のグループ加入手段２０１Ｂは、グループ署名鍵ｘ’ｉを取得し、グループ管理装置１のメンバ登録手段１０３Ｂと式（４５）のＣ２を共有する。【０３４０】
【数４３】
0004816458.tif 000044
【０３４１】
メンバ登録手段１０３Ｂは、式（４６）及び式（４７）の条件を満たす素数ｅｉとｘｉとをランダムに選び、式（４８）を計算する。【０３４２】
【数４４】
0004816458.tif 000045
【０３４３】
【数４５】
0004816458.tif 000046
【０３４４】
【数４６】
0004816458.tif 000047
【０３４５】
なお、式（４８）で求められる値は、ｐ’及びｑ’を知らないと計算できない。メンバ登録手段１０３Ｂは、求めた（Ａｉ，ｅｉ）をメンバ登録証明書として署名装置２に送信する。また、メンバ登録手段１０３Ｂは、求めたｘｉをメンバ追跡情報として署名装置２に送信する。【０３４６】
署名装置２の第２のグループ加入手段２０１Ｂは、（Ａｉ，ｅｉ）及びｘｉを受け取る
と、式（４９）が成り立つか否かを調べ、メンバ登録証明書が正しく生成されているか否
か確認する。【０３４７】
【数４７】
0004816458.tif 000048
【０３４８】
式（４９）が成り立つことを確認できると、グループ加入手段２０１Ｂは、メンバ登録証明書（Ａｉ，ｅｉ）をメンバ登録証明書記憶部２０２に記憶させ、ｘ’ｉをグループ署名鍵としてグループ署名鍵記憶部２０２に記憶させ、ｘｉをメンバ追跡情報記憶部２０７にそれぞれ記憶させる。【０３４９】
グループ管理装置１のメンバ登録手段１０３Ｂは、署名装置２に対応するメンバ登録証明書（Ａｉ，ｅｉ）、メンバ追跡情報ｘｉ及び通信内容と、それぞれに付与された署名装置２のデジタル署名とを、メンバ情報記憶部１０４Ｂに出力する。【０３５０】
グループのメンバである署名装置２をグループから削除する場合、グループ管理装置１の失効メンバ通知手段１０５Ｂは、削除したい署名装置２に対応するメンバ追跡情報ｘｉをメンバ情報記憶部１０４Ｂから読み出し、読み出したｘｉをメンバ状態応答装置４に送信する。メンバ状態応答装置４の失効メンバ受信手段４０１Ｂは、ｘｉを受信し、受信したｘｉをメンバ失効リスト記憶部４０２Ｂに記憶させる。【０３５１】
グループに加入した署名装置２のグループ署名生成手段２０６Ｂは、メッセージに対するグループ署名データを生成する。まず、乱数生成器２０５は、２ｌｐビットの乱数ｗを生成し、グループ署名生成手段２０６Ｂに出力する。乱数ｗを受け取ると、グループ署名生成手段２０６Ｂは、乱数ｗとメンバ登録証明書（Ａｉ，ｅｉ）と公開情報開示手段１０１が開示する公開情報とにもとづいて、式（１５）を用いて（Ａｉ，ｅｉ）の変換データＴ１，Ｔ２，Ｔ３を計算する。【０３５２】
また、乱数発生器２０５は、２ｌｐビットの新たな乱数ｋを生成する。グループ署名生成手段２０６Ｂは、式（５０）を用いてメンバ追跡情報ｘｉの変換データＴ４，Ｔ５を計算する。【０３５３】
【数４８】
0004816458.tif 000049
【０３５４】
次に、グループ署名生成手段２０６Ｂは、これら変換データの値を正しく生成したことを示すデータを作成する。乱数生成器２０５は、ε（γ２＋ｋ）ビットの乱数ｒ１、ε（λ２＋ｋ）ビットの乱数ｒ２、ε（λ２＋ｋ）ビットの乱数ｒ３、ε（γ１＋２ｌｐ＋ｋ＋１）ビットの乱数ｒ４、及びε（２ｌｐ＋ｋ）ビットの乱数ｒ５を生成し、グループ署名生成手段２０６Ｂに出力する。乱数を受け取ると、グループ署名生成手段２０６Ｂは、式（５１）を計算する。【０３５５】
【数４９】
0004816458.tif 000050
【０３５６】
また、グループ署名生成手段２０６Ｂは、メッセージ入力手段２０４から入力したメッセージｍを用いて、式（５２）及び式（５３）を計算する。【０３５７】
【数５０】
0004816458.tif 000051
【０３５８】
【数５１】
0004816458.tif 000052
【０３５９】
そして、グループ署名生成手段２０６Ｂは、メッセージｍ及び（ｃ、ｓ１、ｓ２、ｓ３、ｓ４、ｓ５、Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）を、グループ署名データとして出力する。【０３６０】
検証装置３は、メッセージｍ及びグループ署名データ（ｃ、ｓ１、ｓ２、ｓ３、ｓ４、ｓ５、Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）を受け取ると、グループ署名データの正当性を検証する。図１５において、検証装置３のグループ署名検証手段３０１Ｂは、受け取ったグループ署名データが所定の検証式を満たすか否かを調べる（ステップＳ１０１）。本実施例では、グループ署名検証手段３０１Ｂは、メッセージｍ、グループ署名データ（ｃ、ｓ１、ｓ２、ｓ３、ｓ４、ｓ５、Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）、及び公開情報開示手段１０１が開示する公開情報にもとづいて、式（５４）を満たし、且つｓ１がε（γ２＋ｋ）＋１ビット、ｓ２がε（λ２＋ｋ）＋１ビット、ｓ３がε（λ２＋ｋ）＋１ビット、ｓ４がε（γ１＋２ｌｐ＋ｋ＋１）＋１ビット、及びｓ５がε（２ｌｐ＋ｋ）＋１ビットであるか否かを調べる。【０３６１】
【数５２】
0004816458.tif 000053
【０３６２】
検証式を満たさない場合、グループ署名検証手段３０１Ｂは、グループ署名データが正当でないと判定し不受理を出力する。検証式を満たす場合、グループ署名検証手段３０１Ｂは、メンバ状態応答装置４に、メッセージｍとグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，ｓ５，Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）とを送信する（ステップＳ１０２）。【０３６３】
なお、以上に示したグループ管理装置１と署名装置２とがメンバ登録証明書及びグループ署名鍵を生成する手順と、署名装置２がグループ署名データを生成する手順と、検証装置３がグループ署名データを検証する手順とは、非特許文献２に記載されている。【０３６４】
メンバ状態応答装置４のメンバ状態判定手段４０７Ｂは、メッセージｍとグループ署名データ（ｃ，ｓ１，ｓ２，ｓ３，ｓ４，ｓ５，Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）とを受信すると、グループ署名データの正当性を確認する（ステップＳ１０３）。グループ署名データが正当でない場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する（ステップＳ１０４）。【０３６５】
グループ署名データが正当である場合、メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂが記憶するメンバ追跡情報ｘｉと、グループ署名データに含まれる（Ｔ４，Ｔ５）とに対して、以下の処理を行う。【０３６６】
まず、メンバ状態判定手段４０７Ｂは、メンバ失効リスト記憶部４０２Ｂからメンバ追跡情報ｘｉを読み出す（ステップＳ５０５）。メンバ追跡情報がない場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「有効」であると判定する（ステップＳ５０７）。そして、メンバ状態判定手段４０７Ｂは、「有効」を示す応答データを検証装置３に送信し、処理を終了する。【０３６７】
メンバ追跡情報が存在する場合、メンバ状態判定手段４０７Ｂは、読み出したメンバ追跡情報ｘｉと（Ｔ４，Ｔ５）とに対して、式（５５）が成り立つか否か調べる（ステップＳ５０８，Ｓ５０９）。【０３６８】
【数５３】
0004816458.tif 000054
【０３６９】
式（５５）が成り立つ場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「失効」であると判定し、「失効」を示す応答データを検証装置３に送信する（ステップＳ５１０）。式（５５）が成り立たない場合、メンバ状態判定手段４０７Ｂは、ステップＳ５０５に戻り、メンバ失効リスト記憶部４０２Ｂから次のメンバ追跡情報を読み出す。そして、メンバ状態判定手段４０７Ｂは、ステップＳ５０５以降の処理を繰り返し実行する。全てのメンバ追跡情報ｘｉに対して式（５５）が成り立たない場合、メンバ状態判定手段４０７Ｂは、メンバ状態を「有効」であるとみなす。【０３７０】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受け取ると、応答データが“有効”であればグループ署名データにもとづいて「受理」と判定し、「有効」以外であればグループ署名データにもとづいて「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する（ステップＳ１１０，Ｓ１１１）。なお、グループ管理装置１が行う署名者特定処理は、第１の実施例における署名者特定処理と同様である。
【実施例８】
【０３７１】
次に、本発明の第８の実施例を説明する。なお、本実施例は、本発明の第７の実施の形態に相当対応する。また、本実施例において、グループ管理装置１と署名装置２とが行う初期設定、鍵生成処理、グループ加入処理、メンバ失効処理及びグループ署名生成処理は、第７の実施例におけるそれらの処理と同様である。【０３７２】
検証装置３は、メッセージｍ及びグループ署名データ（ｃ、ｓ１、ｓ２、ｓ３、ｓ４、ｓ５、Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）を受け取ると、グループ署名データの正当性を検証する。図１７において、検証装置３のグループ署名検証手段３０１Ｂは、受け取ったグループ署名データが所定の検証式を満たすか否かを調べる（ステップＳ１０１）。本実施例では、グループ署名検証手段３０１Ｂは、メッセージｍ、グループ署名データ（ｃ、ｓ１、ｓ２、ｓ３、ｓ４、ｓ５、Ｔ１，Ｔ２，Ｔ３，Ｔ４，Ｔ５）、及び公開情報開示手段１０１が開示する公開情報にもとづいて、式（５４）を満たし、且つｓ１がε（γ２＋ｋ）＋１ビット、ｓ２がε（λ２＋ｋ）＋１ビット、ｓ３がε（λ２＋ｋ）＋１ビット、ｓ４がε（γ１＋２ｌｐ＋ｋ＋１）＋１ビット、及びｓ５がε（２ｌｐ＋ｋ）＋１ビットであるか否かを調べる。【０３７３】
検証式を満たさない場合、グループ署名検証手段３０１Ｂは、グループ署名データが正当でないと判定し不受理を出力する。検証式を満たす場合、グループ署名検証手段３０１Ｂは、メンバ状態応答装置４に、メッセージｍと（Ｔ４，Ｔ５）とを送信する（ステップＳ６０２）。【０３７４】
なお、以上に示したグループ管理装置１と署名装置２とがメンバ登録証明書及びグループ署名鍵を生成する手順と、署名装置２がグループ署名データを生成する手順と、検証装置３がグループ署名データを検証する手順とは、非特許文献２に記載されている。【０３７５】
メンバ状態応答装置４のメンバ状態判定手段４０７Ｂは、（Ｔ４，Ｔ５）を受信すると、メンバ失効リスト記憶部４０２Ｂからメンバ追跡情報ｘｉを読み出す（ステップＳ５０５）。ｘｉが存在すると判断すると、メンバ状態判定手段４０７は、処理を続け、次に読み出したｘｉと（Ｔ４，Ｔ５）とに対して、式（５５）が成り立つか否か調べる（ステップＳ５０８，Ｓ５０９）。【０３７６】
式（５５）が成り立たない場合、メンバ状態判定手段４０７Ｂは、ステップＳ５０５に戻り、メンバ失効リスト記憶部４０２Ｂから次のメンバ追跡情報を読み出す。式（５５）が成り立つ場合、メンバ状態判定手段４０７Ｂは、ｘｉと対応づけて記憶されているメンバ状態を調べる（ステップＳ６１０）。そして、メンバ状態判定手段４０７Ｂは、メンバ状態に応じて、「有効」又は「失効」を示す応答データを検証装置３に送信する（ステップＳ６１１，Ｓ６１２）。ステップＳ５０６において読み出すｘｉがなくなると、メンバ状態判定手段４０７Ｂは、メンバ状態を「不明」であると判定し、「不明」を示す応答データを検証装置３に送信する。【０３７７】
検証装置３の検証結果出力手段３０２は、メンバ状態応答装置４から応答データを受け取ると、応答データが“有効”であればグループ署名データにもとづいて「受理」と判定し、「有効」以外であればグループ署名データにもとづいて「不受理」と判定する。そして、検証結果出力手段３０２は、「受理」又は「不受理」の検証結果を出力する（ステップＳ１１０，Ｓ１１１）。なお、グループ管理装置１が行う署名者特定処理は、第１の実施例における署名者特定処理と同様である。
【実施例９】
【０３７８】
次に、本発明の第９の実施例を説明する。なお、本実施例は、本発明の第１の実施の形態から第８の実施の形態までのいずれかに示すグループ署名システムを、具体的に示したものに相当する。図１８は、グループ署名システムの具体的な構成の一例を示すブロック図である。図１８に示すように、グループ署名システムは、グループ管理サーバ１Ａ、ユーザ端末２Ａ、認証端末３Ａ及びメンバ状態応答サーバ４Ａを含む。また、図１８に示す様に、グループ管理サーバ１Ａ、ユーザ端末２Ａ、認証端末３Ａ及びメンバ状態応答サーバ４Ａは、インターネット等の通信ネットワーク１００を介して接続される。【０３７９】
グループ管理サーバ１Ａは、グループを管理する事業者（以下、グループ管理事業者という）が運営するサーバである。本実施例において、グループ管理サーバ１Ａは、第１の実施の形態から第８の実施の形態までのいずれかに示すグループ管理装置１に相当する。なお、図１８では、１つのグループ管理サーバ１Ａを示しているが、グループ署名システムは、複数のグループ管理サーバ１Ａを含んでもよい。【０３８０】
ユーザ端末２Ａは、パーソナルコンピュータ等の情報処理端末であり、グループのメンバであるユーザが使用する端末である。本実施例において、ユーザ端末２Ａは、第１の実施の形態から第８の実施の形態までのいずれかに示す署名装置２に相当する。なお、図１８では、１つのユーザ端末２Ａを示しているが、グループ署名システムは、複数のユーザ端末２Ａを含む。また、ユーザ端末２Ａは、携帯電話機やＰＤＡ等の携帯端末であってもよい。【０３８１】
認証端末３Ａは、パーソナルコンピュータ等の情報処理端末であり、通信ネットワーク１００を介してユーザに各種サービスを提供するサービス事業者や公共機関が運営する端末である。例えば、認証端末３Ａは、図書館が運営する端末であり、ユーザ端末２Ａからの要求に応じて本の貸し出しを許可する。本実施例において、認証端末３Ａは、第１の実施の形態から第８の実施の形態までのいずれかに示す検証装置３に相当する。なお、図１８では、１つの認証端末３Ａを示しているが、グループ署名システムは、複数の認証端末３Ａを含んでもよい。【０３８２】
メンバ状態応答サーバ４Ａは、グループ管理事業者の依頼に応じてグループの各メンバの状態を管理する事業者が運営するサーバである。本実施例において、メンバ状態応答サーバ４Ａは、第１の実施の形態から第８の実施の形態までのいずれかに示すメンバ状態応答装置４に相当する。【０３８３】
ユーザ端末２Ａは、ユーザの操作に従ってメッセージを入力すると、入力したメッセージに対するグループ署名データを生成する。そして、ユーザ端末２Ａは、メッセージ及びグループ署名データを、通信ネットワーク１００を介して認証端末３Ａに送信する。例えば、ユーザ端末２Ａは、グループ署名データとメッセージとして本の貸し出し要求とを、図書館の認証端末３Ａに送信する。【０３８４】
認証端末３Ａは、受信したグループ署名データを認証すると、第１の実施の形態から第８の実施の形態までのいずれかに示す方法を用いて、ユーザのメンバ状態の判定要求を、通信ネットワーク１００を介してメンバ状態応答サーバ４Ａに送信する。例えば、認証端末３Ａは、判定要求としてメッセージ及びグループ署名データを、メンバ状態応答サーバ４Ａに送信する。また、例えば、認証端末３Ａは、判定要求としてグループ署名データに含まれる変換データを、メンバ状態応答サーバ４Ａに送信する。【０３８５】
メンバ状態応答サーバ４Ａは、メンバ状態の判定要求を受信すると、第１の実施の形態から第８の実施の形態までのいずれかに示す判定方法を用いて、ユーザ端末２Ａのユーザの現在のメンバ状態を判定する。そして、メンバ状態応答サーバ４Ａは、判定したメンバ状態を含む応答データを、通信ネットワーク１００を介して認証端末３Ａに送信する。【０３８６】
認証端末３Ａは、受信した応答データにもとづいて、メッセージを受理するか不受理とするかを判定し、「受理」又は「不受理」の検証結果を出力する。例えば、認証端末３Ａは、メンバ状態が「有効」である場合、本の貸し出しを許可する旨の検証結果を出力する。また、例えば、認証端末３Ａは、メンバ状態が「失効」である場合、本の貸し出しを不許可とする旨の検証結果を出力する。
【産業上の利用可能性】
【０３８７】
本発明は、匿名性を保ったままグループのメンバとしての資格確認をするグループ署名システムの用途に適用できる。また、グループメンバの資格を失ったユーザの失効処理を容易に行うことができ、メンバの資格失効の際の処理を効率よく行うことができる。
【図面の簡単な説明】
【０３８８】
【図１】本発明によるグループ署名システムの構成の一例を示すブロック図である。
【図２】図１に示すグループ署名システムの詳細構成の一例を示すブロック図である。
【図３】メンバ情報記憶部１０４が記憶する情報の一例を示す説明図である。
【図４】メンバ失効リスト記憶部４０２が記憶する情報の一例を示す説明図である。
【図５】グループ署名システムがメッセージに添付されたグループ署名の正当性を判断し、且つ失効メンバか否かを判断する処理の一例を示す流れ図である。
【図６】グループ署名システムの他の構成例を示すブロック図である。
【図７】メンバ失効リスト記憶部４０２Ａが記憶する情報の一例を示す説明図である。
【図８】グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の他の例を示す流れ図である。
【図９】グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。
【図１０】メンバ失効リスト記憶部４０２Ａが記憶する情報の他の例を示す説明図である。
【図１１】グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。
【図１２】グループ署名システムの更に他の構成例を示すブロック図である。
【図１３】メンバ情報記憶部１０４Ｂが記憶する情報の一例を示す説明図である。
【図１４】メンバ失効リスト記憶部４０２Ｂが記憶する情報の一例を示す説明図である。
【図１５】グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。
【図１６】メンバ失効リスト記憶部４０２Ｂが記憶する情報の他の例を示す説明図である。
【図１７】グループ署名システムがメッセージに添付された署名の正当性を判断し、且つ失効メンバか否かを判断する処理の更に他の例を示す流れ図である。
【図１８】グループ署名システムの具体的な構成の一例を示すブロック図である。
【符号の説明】
【０３８９】
１    グループ管理装置
２    署名装置
３    検証装置
４    メンバ状態応答装置
１０１    公開情報開示手段
１０２    メンバ登録用情報記憶部
１０３    メンバ登録手段
１０４    メンバ情報記憶部
１０５    失効メンバ通知手段
１０６    開封情報記憶部
１０７    署名開封手段
１０８    署名者特定手段
２０１    グループ加入手段
２０２    メンバ登録証明書記憶部
２０３    グループ署名鍵記憶部
２０４    メッセージ入力手段
２０５    乱数生成器
２０６    グループ署名生成手段
２０７    メンバ追跡情報記憶部
３０１    グループ署名検証手段
３０２    検証結果出力手段
４０１    失効メンバ受信手段
４０２    メンバ失効リスト記憶部
４０３    開封情報記憶部
４０４    署名開封手段
４０５    メンバ情報記憶部
４０６    署名者特定手段
４０７    メンバ状態判定手段
【図１】
0004816458.tif 000055
【図２】
0004816458.tif 000056
【図３】
0004816458.tif 000057
【図４】
0004816458.tif 000058
【図５】
0004816458.tif 000059
【図６】
0004816458.tif 000060
【図７】
0004816458.tif 000061
【図８】
0004816458.tif 000062
【図９】
0004816458.tif 000063
【図１０】
0004816458.tif 000064
【図１１】
0004816458.tif 000065
【図１２】
0004816458.tif 000066
【図１３】
0004816458.tif 000067
【図１４】
0004816458.tif 000068
【図１５】
0004816458.tif 000069
【図１６】
0004816458.tif 000070
【図１７】
0004816458.tif 000071
【図１８】
0004816458.tif 000072