(57)【要約】      （修正有）【課題】  ＣＡによって権限を付与された１つ以上のサービスに何度アクセスしようとも匿名性を維持できる匿名選択可能認証情報システムを提供する。【解決手段】  通信システムであって、認証局装置は、各々１つのユーザ権限に対応するルート認証情報を生成する権限付与部を備え、ユーザ装置は、１つのユーザ権限集合を選択する権限選択部と、選択されたユーザ権限集合に対応するルート認証情報から匿名選択可能認証情報を生成する匿名選択可能認証情報生成部と、匿名選択可能認証情報によって、匿名で当該ユーザ権限集合が認証局によって権限が付与されていることを証明するためにサービス装置に対する知識証明を実行する知識提供部を備え、サービス装置は、ユーザ装置によって提示された匿名選択可能認証情報を検証する匿名選択可能認証情報検証部と、ユーザ装置に検証済みユーザ権限に応じたサービスを提供するサービス部を備える。【選択図】  図２
2008125054.tif 000002
【特許請求の範囲】
【請求項１】
ユーザが通信ネットワーク上でサービスにアクセスするための通信装置であって、
ユーザ権限毎に発行される１以上のルート認証情報を取得するルート認証情報取得部と、
ユーザ権限の１つの集合を選択する権限選択部と、
選択されたユーザ権限の集合に対応する前記ルート認証情報から１以上の匿名選択可能認証情報を生成する匿名選択可能認証情報生成部と、
前記匿名選択可能認証情報を送信する通信部と、
前記匿名選択可能認証情報の任意の１つによって、匿名で当該ユーザ権限の集合に権限が付与されていることを証明するための知識証明を実行する知識提供部と
を備えることを特徴とする通信装置。
【請求項２】
前記匿名選択可能認証情報生成部は、選択されたユーザ権限の集合｛ｒｊ｝，ｊ＝１，・・・，Ｎに対応する前記匿名選択可能認証情報Ｔを
【数１】
2008125054.tif 000013
又は
【数２】
2008125054.tif 000014
として生成する
（ここで、ｔｊはユーザ権限ｒｊに対応するルート認証情報、τは特定のグループから選択された整数、Ｎは選択された集合内のユーザ権限の数に等しい整数）ことを特徴とする請求項１に記載の通信装置。
【請求項３】
前記匿名選択可能認証情報生成部は、前記特定のグループから異なる整数を選択することにより、ユーザ権限の同じ集合に対応する異なる前記匿名選択可能認証情報を生成することを特徴とする請求項２に記載の通信装置。
【請求項４】
前記知識提供部は、対話型又は非対話型の知識証明を実行することを特徴とする請求項１に記載の通信装置。
【請求項５】
前記ユーザ権限の集合は、証明において乗法郡又は加法群の公式で結合されることを特徴とする請求項１に記載の通信装置。
【請求項６】
前記ルート認証情報取得部は、
ユーザの本人情報、対象サービス、対象権限に関する情報を送信するルート認証情報要求部と、
受信したルート認証情報を検証するルート認証情報検証部を備えることを特徴とする請求項１に記載の通信装置。
【請求項７】
ユーザが通信ネットワーク上でサービスにアクセスするための方法であって、
ユーザ権限毎に発行される１以上のルート認証情報を取得するステップと、
ユーザ権限の集合を選択するステップと、
選択されたユーザ権限集合に対応する前記ルート認証情報から１以上の匿名選択可能認証情報を生成するステップと、
前記匿名選択可能認証情報を送信するステップと、
前記匿名選択可能認証情報の任意の１つによって、匿名で当該ユーザ権限集合に権限が付与されていることを証明するための知識証明を実行するステップと
を含むことを特徴とする方法。
【請求項８】
前記匿名選択可能認証情報を生成するステップは、選択されたユーザ権限の集合｛ｒｊ｝，ｊ＝１，・・・，Ｎに対応する前記匿名選択可能認証情報Ｔを
【数３】
2008125054.tif 000015
又は
【数４】
2008125054.tif 000016
として生成する
（ここで、ｔｊはユーザ権限ｒｊに対応するルート認証情報、τは特定のグループから選択された整数、Ｎは選択された集合内のユーザ権限の数に等しい整数）ことを特徴とする請求項７に記載の方法。
【請求項９】
前記匿名選択可能認証情報を生成するステップは、前記特定のグループから異なる整数を選択することにより、ユーザ権限の同じ集合に対応する異なる前記匿名選択可能認証情報を生成することを特徴とする請求項８に記載の方法。
【請求項１０】
前記知識を提供するステップは、対話型又は非対話型の知識証明を実行することを特徴とする請求項７に記載の方法。
【請求項１１】
前記ユーザ権限の集合は、証明において乗法郡又は加法群の公式で結合されることを特徴とする請求項７に記載の方法。
【請求項１２】
前記ルート認証情報を取得するステップは、
ユーザの本人情報、対象サービス、対象権限に関する情報を送信するステップと、受信したルート認証情報を検証するステップを含むことを特徴とする請求項７に記載の方法。
【請求項１３】
ユーザに対して通信ネットワーク上でサービスにアクセスする権限を付与するための通信装置であって、
システムパラメータを設定し、公開パラメータを公開する初期化部と、
ユーザの本人情報と対象サービスと対象ユーザ権限とに関する情報を受信する通信部と、
ユーザが１つ以上の匿名選択可能認証情報を生成する際に使用するための、１つのユーザ権限に対応するルート認証情報を生成する権限付与部とを備えることを特徴とする通信装置。
【請求項１４】
前記権限付与部は、
ユーザのキーを割り当てるためのユーザキー割り当て部と、
前記ユーザキーに基づいて前記ルート認証情報を生成するルート認証情報生成部とを備えることを特徴とする請求項１３に記載の通信装置。
【請求項１５】
前記ルート認証情報生成部は、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝Ｈａｓｈ(Ｒ)1/a+zとして生成する
（ここで、ａは通信装置の秘密鍵、ｚはユーザキー）ことを特徴とする請求項１４に記載の通信装置。
【請求項１６】
前記ルート認証情報生成部は、ユーザ権限Ｒを楕円曲線上の点ｈにマップし、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝ｈ1/a+zとして生成する
（ここで、ａは通信装置の秘密鍵、ｚはユーザキー）ことを特徴とする請求項１４に記載の通信装置。
【請求項１７】
前記権限付与部は、さらに、前記ユーザの本人情報に基づいてユーザに権限を付与するかどうかを判定する認証部を備えることを特徴とする請求項１４に記載の通信装置。
【請求項１８】
前記初期化部は、
入力セキュリティパラメータに基づいてバイリニアマップを設定する設定部と、
使用するセキュアハッシュ関数を選択するハッシュ関数部と、
通信装置の秘密鍵と公開鍵を生成するシステムキー生成部を備えることを特徴とする請求項１３に記載の通信装置。
【請求項１９】
通信ネットワーク上でサービスにアクセスする権限をユーザに付与する方法であって、
システムパラメータを設定し、公開パラメータを公開するステップと、
ユーザの本人情報と対象サービスと対象ユーザ権限とに関する情報を受信するステップと、
ユーザが１つ以上の匿名選択可能認証情報を生成する際に使用するための、１つのユーザ権限に対応するルート認証情報を生成するステップとを含むことを特徴とする方法。
【請求項２０】
前記ルート認証情報を生成するステップは、
ユーザのキーを割り当てるステップと、前記ユーザキーに基づいて前記ルート認証情報を生成するステップを含むことを特徴とする請求項１９に記載の方法。
【請求項２１】
前記ルート認証情報を生成するステップは、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝Ｈａｓｈ(Ｒ)1/a+zとして生成する
（ここで、ａはシステムの秘密鍵、ｚはユーザキー）ことを特徴とする請求項２０に記載の方法。
【請求項２２】
前記ルート認証情報を生成するステップは、ユーザ権限Ｒを楕円曲線上の点ｈにマップし、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝ｈ1/a+zとして生成する
（ここで、ａはシステムの秘密鍵、ｚはユーザキー）ことを特徴とする請求項２０に記載の方法。
【請求項２３】
ルート認証情報を生成する前に前記ユーザの本人情報に基づいてユーザに権限を付与するかどうかを判定するステップを含むことを特徴とする請求項２０に記載の方法。
【請求項２４】
前記システムパラメータを設定するステップは、
入力セキュリティパラメータに基づいてバイリニアマップを設定するステップと、
セキュアハッシュ関数を選択するステップと、
システムの秘密鍵と公開鍵を生成するステップを含むことを特徴とする請求項１９に記載の方法。
【請求項２５】
権限を付与されたユーザに対して通信ネットワーク上でサービスを提供するための通信装置であって、
１つのユーザ権限集合とそのユーザ権限集合に対応する１つの匿名選択可能認証情報とに関する情報を受信する通信部と、
前記匿名選択可能認証情報を検証してユーザ権限集合に権限が付与されているかどうかを判定する匿名選択可能認証情報検証部と、
検証済みユーザ権限に応じたサービスをユーザに対して提供するサービス部と
を備えることを特徴とする通信装置。
【請求項２６】
匿名選択可能認証情報検証部は、対話型又は非対話型の知識証明を実行することを特徴とする請求項２５に記載の通信装置。
【請求項２７】
前記ユーザ権限の集合は、検証において乗法郡又は加法群の公式で結合されることを特徴とする請求項２５に記載の通信装置。
【請求項２８】
さらに、各ユーザ権限を受け付けるかどうかをチェックする権限チェック部を備えることを特徴とする請求項２５に記載の通信装置。
【請求項２９】
権限を付与されたユーザに対して通信ネットワーク上でサービスを提供するための方法であって、
１つのユーザ権限集合とそのユーザ権限集合に対応する１つの匿名選択可能認証情報とに関する情報を受信するステップと、
前記匿名選択可能認証情報を検証してユーザ権限集合に権限が付与されているかどうかを判定するステップと、
ユーザに対して検証済みユーザ権限に応じたサービスを提供するステップと
を含むことを特徴とする方法。
【請求項３０】
前記匿名選択可能認証情報の検証ステップは、対話型又は非対話型の知識証明を実行することを特徴とする請求項２９に記載の方法。
【請求項３１】
前記ユーザ権限の集合は、検証において乗法郡又は加法群の公式で結合されることを特徴とする請求項２９に記載の方法。
【請求項３２】
前記匿名選択可能認証情報の検証前に各ユーザ権限を受け付けるかどうかをチェックするステップを含むことを特徴とする請求項２９に記載の方法。
【請求項３３】
通信ネットワークを介して接続された少なくとも１つの認証局装置と、少なくとも１つのユーザ装置と、少なくとも１つのサービス装置とを備える通信システムであって、
前記認証局装置は、各々１つのユーザ権限に対応するルート認証情報を生成する権限付与部を備え、
前記ユーザ装置は、１つのユーザ権限集合を選択する権限選択部と、選択されたユーザ権限集合に対応するルート認証情報から１つ以上の匿名選択可能認証情報を生成する匿名選択可能認証情報生成部と、前記サービス装置に提示された匿名選択可能認証情報によって、匿名で当該ユーザ権限集合が認証局によって権限が付与されていることを証明するためにサービス装置に対する知識証明を実行する知識提供部とを備え、
前記サービス装置は、前記ユーザ装置によって提示された匿名選択可能認証情報を検証する匿名選択可能認証情報検証部と、前記ユーザ装置に検証済みユーザ権限に応じたサービスを提供するサービス部を備えることを特徴とする通信システム。
【請求項３４】
前記認証局装置は、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝Ｈａｓｈ(Ｒ)1/a+zとして生成する
（ここで、ａは前記認証局装置の秘密鍵、ｚは前記認証局装置によってユーザに割り当てられたユーザキー）ことを特徴とする請求項３３に記載の通信システム。
【請求項３５】
前記認証局装置は、ユーザ権限Ｒを楕円曲線上の点ｈにマップし、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝ｈ1/a+zとして生成する
（ここで、ａは前記認証局装置の秘密鍵、ｚはユーザキー）ことを特徴とする請求項３３に記載の通信システム。
【請求項３６】
前記匿名選択可能認証情報生成部は、選択されたユーザ権限の集合｛ｒｊ｝，ｊ＝１，・・・，Ｎに対応する前記匿名選択可能認証情報Ｔを
【数５】
2008125054.tif 000017
又は
【数６】
2008125054.tif 000018
として生成する
（ここで、ｔｊはユーザ権限ｒｊに対応するルート認証情報、τは特定のグループから選択された整数、Ｎは選択された集合内のユーザ権限の数に等しい整数）ことを特徴とする請求項３４又は請求項３５に記載の通信システム。
【請求項３７】
前記匿名選択可能認証情報生成部は、前記特定のグループから異なる整数を選択することにより、ユーザ権限の同じ集合に対応する異なる前記匿名選択可能認証情報を生成することを特徴とする請求項３６に記載の通信システム。
【請求項３８】
前記知識提供部は、前記サービス装置と共に対話型又は非対話型の知識証明を実行することを特徴とする請求項３３に記載の通信システム。
【請求項３９】
前記ユーザ権限の集合は、検証において乗法郡又は加法群の公式で結合されることを特徴とする請求項３３に記載の通信システム。
【請求項４０】
通信ネットワークを介して接続された少なくとも１つの認証局装置と、少なくとも１つのユーザ装置と、少なくとも１つのサービス装置とを備える通信システムにおける方法であって、
前記認証局装置が１つのユーザ権限に対応するルート認証情報を生成するステップと、
前記認証局装置が前記ルート認証情報を前記ユーザ装置に送信するステップと、
前記ユーザ装置が１つのユーザ権限集合を選択し、選択されたユーザ権限集合に対応する前記ルート認証情報から１以上の匿名選択可能認証情報を生成するステップと、
前記ユーザ装置が前記サービス装置に対して前記匿名選択可能認証情報の１つを提示するステップと、
前記ユーザ装置が前記サービス装置に対して、前記匿名選択可能認証情報によって匿名で当該ユーザ権限集合が前記認証局によって権限が付与されていることを証明するための知識証明を実行するステップと、
前記サービス装置が前記ユーザ装置に対して検証済みユーザ権限に応じたサービスを提供するステップと
を含むことを特徴とする方法。
【請求項４１】
前記ルート認証情報の生成ステップは、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝Ｈａｓｈ(Ｒ)1/a+zとして生成する
（ここで、ａは前記認証局装置の秘密鍵、ｚは前記認証局装置によってユーザに割り当てられたユーザキー）ことを特徴とする請求項４０に記載の方法。
【請求項４２】
前記ルート認証情報の生成ステップは、ユーザ権限Ｒを楕円曲線上の点ｈにマップし、ユーザ権限Ｒに対応する前記ルート認証情報ｔをｔ＝ｈ1/a+zとして生成する
（ここで、ａは前記認証局装置の秘密鍵、ｚはユーザキー）ことを特徴とする請求項４０に記載の方法。
【請求項４３】
前記匿名選択可能認証情報の生成ステップは、選択されたユーザ権限の集合｛ｒｊ｝，ｊ＝１，・・・，Ｎに対応する前記匿名選択可能認証情報Ｔを
【数７】
2008125054.tif 000019
又は
【数８】
2008125054.tif 000020
として生成する
（ここで、ｔｊはユーザ権限ｒｊに対応するルート認証情報、τは特定のグループから選択された整数、Ｎは選択された集合内のユーザ権限の数に等しい整数）ことを特徴とする請求項４１又は請求項４２に記載の方法。
【請求項４４】
前記匿名選択可能認証情報の生成ステップは、前記特定のグループから異なる整数を選択することにより、ユーザ権限の同じ集合に対応する異なる前記匿名選択可能認証情報を生成することを特徴とする請求項４３に記載の方法。
【請求項４５】
前記知識証明の実行ステップは、前記サービス装置と共に対話型又は非対話型の知識証明を実行することを特徴とする請求項４０に記載の方法。
【請求項４６】
前記ユーザ権限の集合は、検証において乗法郡又は加法群の公式で結合されることを特徴とする請求項４０に記載の方法。
【請求項４７】
コンピュータ上で実行されるプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、
前記プログラムが、
ユーザ権限毎に発行される１以上のルート認証情報を取得する処理と、
ユーザ権限の集合を選択する処理と、
選択されたユーザ権限集合に対応する前記ルート認証情報から１以上の匿名選択可能認証情報を生成する処理と、
前記匿名選択可能認証情報を送信する処理と、
前記匿名選択可能認証情報の任意の１つによって、匿名で当該ユーザ権限集合に権限が付与されていることを証明するための知識証明を実行する処理を、前記コンピュータに実行させることを特徴とするプログラム。
【請求項４８】
コンピュータ上で実行されるプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、
前記プログラムが、
システムパラメータを設定し、公開パラメータを公開する処理と、
ユーザの本人情報と対象サービスと対象ユーザ権限とに関する情報を受信する処理と、
ユーザが１つ以上の匿名選択可能認証情報を生成する際に使用するための、１つのユーザ権限に対応するルート認証情報を生成する処理を、前記コンピュータに実行させることを特徴とするプログラム。
【請求項４９】
コンピュータ上で実行されるプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、
前記プログラムが、
１つのユーザ権限集合とそのユーザ権限集合に対応する１つの匿名選択可能認証情報とに関する情報を受信する処理と、
前記匿名選択可能認証情報を検証してユーザ権限集合に権限が付与されているかどうかを判定する処理と、
ユーザに対して検証済みユーザ権限に応じたサービスを提供する処理を、前記コンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は概して通信ネットワークのセキュリティに関し、特に、匿名選択可能認証情報によりプライバシーを保護することのできる通信装置、通信システム、およびその方法に関する。
【背景技術】
【０００２】
スマートガジェット、アプライアンス、モバイル機器、ＰＤＡ、そしてセンサーの普及に伴い、相互接続された装置とサービスから成るユビキタスな計算環境を構築することが可能になった現在、もはやデジタルインフラストラクチャを日常生活にシームレスに統合することも夢ではなくなった。ユーザがアクセスネットワーク技術やアプリケーション、サービスを自由に選べるようになるにつれ、ユビキタス通信が必然的な流れとして増大し続けている。また、それと同時に、ユーザには不可視な方法で物理環境のどこででもモバイル機器を利用可能にすることで、モバイル機器の使い勝手を高める方法も出現している。
【０００３】
しかし、ユビキタスコンピューティングが製品として広く普及して至る所で活用されるようになるには、まずセキュリティとプライバシーの問題が克服されなければならない。ユビキタスコンピューティングに求められる一般的なセキュリティ要件とは、認証や権限付与などである。「権限付与」とは、リソースへのアクセスなどの特定の権限を、特定の認証情報を提示した者に付与するかどうかを決定する行為を意味する。理論的には、権限付与の前に、機密性、保全性、否認不可性が確保され、その上で認証が行われることが前提となる。
「権限付与」がユーザの本人情報に基づいて様々なサービスへのアクセスを許可するのに対し、「認証」はユーザの本人確認を行う。
【０００４】
権限付与については、古典的な研究分野としてこれまで学術界で広く研究されてきた。しかし、これらの研究から生まれた権限付与の解決策ではプライバシー保護が考慮されていない。従来の権限付与の一例としては、ユーザにいくつかのアクセス権限を付与するために１つの認証情報を発行する方法がある。ユーザはこの認証情報をサービスに提示することにより、付与された権限に応じたサービスを利用することができる。このような権限付与の解決策をユビキタスコンピューティング環境に適用すると、プライバシーの面で重大な懸念が生じる。その理由は、１つの認証情報がサービスに対して複数回提示されること、そして、ユーザは自身の権限の全体をサービスに提示しなければならないこと、の２点にある。
【０００５】
例えば、旅行者がある都市を訪れて、その都市の観光ポータルが提供するショッピングサービス、ホテルサービス、交通サービスなどを利用する場合を例にとろう。この旅行者が、観光ポータルから、ショッピングサービスとホテルサービスを利用できる終日有効なアクセス権限を購入したとする。観光ポータルはこの旅行者に対し、例えば２００６年１月１日のみショッピングサービスとホテルサービスにアクセスする権限が付与されることを証明する１つの認証情報を発行する。旅行者がショッピングサービスを利用する際にこの認証情報を複数回提示すると、この単一の認証情報の使用状況からユーザの行動パターンをモデル化することが可能なため、この人の行動の相関関係が簡単に割り出されてしまう。ショッピングサービス側は、この旅行者がホテルサービスの権限も持っていることを難なく知ることができる。この情報は広告やダイレクトメールに利用できるので、これはプライバシー侵害とみなされる。
【０００６】
ユビキタスコンピューティングにおいてプライバシー保護はきわめて重要な問題であり、プライバシーを尊重した適正な権限付与を行うためには、以下の要件を満たすことが求められる。
【０００７】
１）  リンク不能なアクセス許可。これにより、１つのユビキタスサービスから、あるいは複数のユビキタスサービスを複合して、権限を付与されたユーザの行動を相関付けることは計算上不可能となる。換言すれば、ユビキタスユーザは、権限を付与された１つかそれ以上のサービスに何回アクセスしようとも匿名性を保つことができるのである。
【０００８】
２）  選択的な最小限の権限。これにより、１つのユビキタスサービスから、あるいは複数のユビキタスサービスを複合して、ユーザが検証のためサービスに提示した権利以外に有する権利を知ることは計算上不可能となる。換言すれば、ユーザが参加を認められた各セッションに関してサービス側が知ることができるのは、そのセッションの提供に必要な権利のみに限定されるのである。サービス側は、サービスに対するユーザの権限のうちそのセッションにとって必要ではない権限を知ることはできず、その他のサービスに対するユーザの権限も当然知ることはできない。
【０００９】
こうした状況を背景として、ユビキタスユーザとユビキタスサービスがアクセスごとに照会するための中央権限付与サーバが出現するであろうことは容易に想像できる。この種の手法としては、例えば、Ｃ．Ｙ．Ｙｅｕｎ、Ｅ．Ｋ．Ｌｕａ、Ｊ．Ｃｒｏｗｃｒｏｆｔが提案した「Ｓｅｃｕｒｉｔｙ  ｆｏｒ  Ｅｍｅｒｇｉｎｇ  Ｕｂｉｑｕｉｔｏｕｓ  Ｎｅｔｗｏｒｋｓ」（新興ユビキタスネットワークのためのセキュリティ）、ＩＥＥＥ  ６２ｎｄ  Ｖｅｈｉｃｕｌａｒ  Ｔｅｃｈｎｏｌｏｇｙ  Ｃｏｎｆｅｒｅｎｃｅ，２００５（非特許文献１）が挙げられる。この手法では、ユーザがアクセスを試みるたびに、サービス側は中央権限付与サーバに対して、ユーザがそのサービスに対してどんな権限を有しているかを照会しなければならない。この手法では、ユーザは全部のアクセス権限をサービスに対して直接提示しないので、ユーザのプライバシーはある程度保護される。
【００１０】
しかし、ユビキタスコンピューティングの観点に立てば、アクセスのたびにユビキタスユーザとユビキタスサービスの両方に中央権限付与サーバへの照会を求めるのは好ましいとは言えない。こうした手法は多数の問題を抱える。
【００１１】
例えば、ユーザは中央権限付与地点に継続して接続できるとは限らない。最もよく挙げられる理由はネットワーク接続時の電波強度の問題であるが、ユーザが中央権限付与地点への接続を継続しない理由は他にもある。その理由とは、中央権限付与地点とのやりとりに時間がかかる、通信費が高くなる、バッテリーの消耗が早くなる、といったものである。
【００１２】
加えて、中央権限付与地点は無数のユビキタスユーザを処理することが前提となるが、この課題に対処できないという現状がある。前述したように、各ユーザが中央権限付与地点から権限付与のために１つの認証情報のみを取得する場合には、サービス側はこの認証情報からユーザの行動をたやすく相関付けることができる。そのため、中央権限付与地点がプライバシー保護の要件を満たすためには、多数のユーザがサービスへのアクセスセッションごとに発行する要求を処理できる能力を持たなければならない。すなわち、スケーラビリティが重大な問題となる。
【００１３】
ユーザがアクセスするたびに中央権限付与サーバに照会する必要のない解決策もある。その１つは、ＩＥＴＦがＲＦＣ２６９３で提唱したＳＰＫＩ（Ｓｉｍｐｌｅ  Ｐｕｂｌｉｃ−Ｋｅｙ  Ｉｎｆｒａｓｔｒｕｃｔｕｒｅ）である。ＳＰＫＩは、仮名と公開鍵を一意に組み合わせた権限付与証明書を提供する。ＳＰＫＩの権限付与証明書は、公開鍵保有者に対し、アクションの権限を付与し、パーミッションを発行し、資格を許諾する。Ｖ．Ｂｅｎｊｕｍｅａ  ｅｔ  ａｌ．がＰｒｏｃ．ＰＫＣ  ２００４で発表した「Ａ  Ｆｉｒｓｔ  Ａｐｐｒｏａｃｈ  ｔｏ  Ｐｒｏｖｉｄｅ  Ａｎｏｎｙｍｉｔｙ  ｉｎ  Ａｔｔｒｉｂｕｔｅ  Ｃｅｒｔｉｆｃａｔｅｓ」（属性証明書において匿名性を提供するための第一のアプローチ）（非特許文献２）という論文では、属性証明書に基づいてサービスに匿名でアクセスするための匿名属性証明書をユーザが取得できる解決策が提案されている。
【００１４】
しかし、ＳＰＫＩではユーザとサービスはアクセスごとに中央サーバに照会しなくてもよいが、認証局はユーザに対する権限付与証明書のすべてを明示的な形で発行しなければならない。この問題はＶ．Ｂｅｎｊｕｍｅａの着想にも当てはまる。その理由は、Ｖ．Ｂｅｎｊｕｍｅａの方式では、ユーザが信頼できる第三者機関から取得する１つの仮名に対して１つの属性証明書しか生成されないため、複数の属性証明書を取得するには、信頼できる第三者機関から複数の仮名を取得することが必要になるからである。
【００１５】
ＳＰＫＩとＢｅｎｊｕｍｅａのアプローチには、１つの証明書が１つのサービスに複数回提示されたときに、ユーザの行動が容易に相関付けられるという欠点がある。サービスに複数回アクセスしても相関付けられないようにするためには、複数の証明書を取得する必要がある。大規模なユビキタスコンピューティング環境にこうした方式を導入すると、スケーラビリティの面で問題が生じる。
【００１６】
ＳＰＫＩとＢｅｎｊｕｍｅａのアプローチにはもう一つの欠点がある。それは、一人のユーザがＮ個の属性を提示した場合の計算コストは１つの属性を提示した場合のほぼＮ倍になることである。計算コストの問題を克服するために１つの証明書にＮ個の属性を組み込むことは可能ではある。しかし、ユーザがＮ個の属性の一部だけを提示することは不可能であり、必ず他の属性も知られてしまうので、プライバシーの懸念はやはり重大な問題として残る。
【非特許文献１】「Ｓｅｃｕｒｉｔｙ  ｆｏｒ  Ｅｍｅｒｇｉｎｇ  Ｕｂｉｑｕｉｔｏｕｓ  Ｎｅｔｗｏｒｋｓ」（新興ユビキタスネットワークのためのセキュリティ）、ＩＥＥＥ  ６２ｎｄ  Ｖｅｈｉｃｕｌａｒ  Ｔｅｃｈｎｏｌｏｇｙ  Ｃｏｎｆｅｒｅｎｃｅ，２００５
【非特許文献２】「Ａ  Ｆｉｒｓｔ  Ａｐｐｒｏａｃｈ  ｔｏ  Ｐｒｏｖｉｄｅ  Ａｎｏｎｙｍｉｔｙ  ｉｎ  Ａｔｔｒｉｂｕｔｅ  Ｃｅｒｔｉｆｃａｔｅｓ」
【非特許文献３】Ｄ．Ｂｏｎｅｈ，Ｍ．Ｆｒａｎｋｌｉｎ，Ｉｄｅｎｔｉｔｙ−Ｂａｓｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  ｆｒｏｍ  ｔｈｅ  Ｗｅｉｌ  Ｐａｉｒｉｎｇ（Ｗｅｉｌペアリングからの本人情報ベースの暗号化），Ｐｒｏｃ．Ｃｔｙｐｔｏ０’１，ＬＮＣＳ，ｖｏ１．２１３９，ｐｐ．２１３〜２２９，２００１
【非特許文献４】Ｓ．Ｇａｌｂｒａｉｔｈ，Ｋ．Ｈａｒｒｉｓｏｎ，Ｄ．Ｓｏｌｄｅｒａ，Ｉｍｐｌｅｍｅｎｔｉｎｇ  ｔｈｅ  Ｔａｔｅ  ｐａｉｒｉｎｇ（Ｔａｔｅペアリングの実装），Ｐｒｏｃ．ｏｆ  ｔｈｅ  ５ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ａｌｇｏｒｉｔｈｍｉｃ  Ｎｕｍｂｅｒ  Ｔｈｅｏｒｙ，ＬＮＣＳ  ２３６９，３２４〜３３７，２００２
【非特許文献５】Ａ．Ｍｉｙａｊｉ，Ｍ．Ｎａｋａｂａｙａｓｈｉ，Ｓ．Ｔａｋａｎｏ，Ｎｅｗ  Ｅｘｐｌｉｃｉｔ  Ｃｏｎｄｉｔｉｏｎｓ  ｏｆ  Ｅｌｌｉｐｔｉｃ  Ｃｕｒｖｅｓ  ｆｏｒ  ＦＲ−ｒｅｄｕｃｔｉｏｎ（ＦＲ還元のための楕円曲線の新しい明示条件），ＩＥＩＣＥ  Ｔｒａｎｓ．Ｆｕｎｄａｍｅｎｔａｌｓ，Ｅ８４−Ａ（５）：１２３４〜１２４３，２００１
【非特許文献６】Ｓ．Ｇｏｌｄｗａｓｓｅｒ，Ｓ．Ｍｉｃａｌｉ，Ｃ．Ｒａｃｋｏｆｆ，Ｔｈｅ  Ｋｎｏｗｌｅｄｇｅ  Ｃｏｍｐｌｅｘｉｔｙ  ｏｆ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｐｒｏｏｆ  Ｓｙｓｔｅｍｓ（対話型証明システムの知識の複雑性），１７ｔｈ  ＡＣＭ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｔｈｅｏｒｙ  ｏｆ  Ｃｏｍｐｕｔａｔｉｏｎ，ｐｐ．２９１〜３０４，１９８５
【非特許文献７】Ａ．Ｆｉａｔ，Ａ．Ｓｈａｍｉｒ，Ｈｏｗ  Ｔｏ  Ｐｒｏｖｅ  Ｙｏｕｒｓｅｌｆ：Ｐｒａｃｔｉｃａｌ  Ｓｏｌｕｔｉｏｎｓ  ｔｏ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  ａｎｄ  Ｓｉｇｎａｔｕｒｅ  Ｐｒｏｂｌｅｍｓ（自分を証明する方法：同定と署名の問題への実際的な解決策），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’８６，ｐｐ．１８６〜１９４，１９８６
【非特許文献８】Ｄ，Ｃｈａｕｍ，Ｄｅｍｏｎｓｔｒａｔｉｎｇ  Ｐｏｓｓｅｓｓｉｏｎ  ｏｆ  ａ  Ｄｉｓｃｒｅｔｅ  Ｌｏｇａｒｉｔｈｍ  ｗｉｔｈｏｕｔ  Ｒｅｖｅａｌｉｎｇ  Ｉｔ（離散的対数を明かさずにその所持を実証する），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’８６，ｐｐ．２００〜２１２，１９８７
【非特許文献９】Ｄ．Ｃｈａｕｍ，Ｊ．Ｈ．Ｅｖｅｒｔｓｅ，Ｊ．ｖａｎ  ｄｅ  Ｇｒａａｆ，Ａｎ  Ｉｍｐｒｏｖｅｄ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｄｅｍｏｎｓｔｒａｔｉｎｇ  Ｐｏｓｓｅｓｓｉｏｎ  ｏｆ  Ｄｉｓｃｒｅｔｅ  Ｌｏｇａｒｉｔｈｍｓ  ａｎｄ  Ｓｏｍｅ  Ｇｅｎｅｒａｌｉｚａｔｉｏｎｓ（離散的対数の所持を実証するための改良型プロトコルといくつかの一般法則），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＥＵＲＯＣＲＹＰＴＯ’８７，ｐｐ．１２７〜１４１，１９８７
【非特許文献１０】Ｄ．Ｃｈａｕｍ，Ｔ．Ｐ．Ｐｅｄｅｒｓｅｎ，Ｗａｌｌｅｔ  Ｄａｔａｂａｓｅｓ  ｗｉｔｈ  Ｏｂｓｅｒｖｅｒｓ（オブザーバを備えるウォレットデータベース），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’９２，ｐｐ．８９〜１０５，１９９３
【非特許文献１１】Ｋ．Ｓａｋｏ，Ｊ．Ｋｉｌｉａｎ，Ｒｅｃｅｉｐｔ−Ｆｒｅｅ  Ｍｉｘ−Ｔｙｐｅ  Ｖｏｔｉｎｇ  Ｓｃｈｅｍｅ  −Ａ  Ｐｒａｃｔｉｃａｌ  Ｓｏｌｕｔｉｏｎ  ｔｏ  ｔｈｅ  Ｉｍｐｌｅｍｅｎｔａｔｉｏｎ  ｏｆ  ａ  Ｖｏｔｉｎｇ  Ｂｏｏｔｈ（投票方式−投票ブースの実装への実際的な解決策），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’９８，ｐｐ．３９３〜４０３，１９９８
【非特許文献１２】Ｋｅ  Ｚｅｎｇ，Ｐｓｅｕｄｏｎｙｍｏｕｓ  ＰＫＩ  ｆｏｒ  Ｕｂｉｑｕｉｔｏｕｓ  Ｃｏｍｐｕｔｉｎｇ（ユビキタスコンピューティングのための変名ＰＫＩ），ＬＮＣＳ  ４０４３，ｐｐ．２０７−２２２，ＥｕｒｏＰＫＩ’０６，２００６
【非特許文献１３】Ｄ．Ｂｏｎｅｈ，Ｘ．Ｂｏｙｅｎ  ａｎｄ  Ｈ．Ｓｈａｃｈａｍ，Ｓｈｏｒｔ  Ｇｒｏｕｐ  Ｓｉｇｎａｔｕｒｅｓ，Ｐｒｏｃ．Ｏｆ  Ｃｒｙｐｔｏ’０４，ｐｐ．４１〜５５，２００４
【非特許文献１４】Ｍ．Ｆｒａｎｋｌｉｎ，Ｉｄｅｎｔｉｔｙ−Ｂａｓｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  ｆｒｏｍ  ｔｈｅ  Ｗｅｉｌ  Ｐａｉｒｉｎｇ（Ｗｅｉｌペアリングからの本人情報ベースの暗号化），Ｐｒｏｃ．Ｃｒｙｐｔｏ’０１，ＬＮＣＳ，ｖｏ１．２１３９，ｐｐ．２１３〜２２９，２００１
【非特許文献１５】Ｇ．Ａｔｅｎｉｅｓｅ，Ｊ．Ｃａｍｅｎｉｓｃｈ，Ｂ．Ｍｅｄｅｉｒｏｓ，Ｕｎｔｒａｃｅａｂｌｅ  ＲＦＩＤ  Ｔａｇｓ  ｖｉａ  Ｉｎｓｕｂｖｅｒｔｉｂｌｅ  Ｅｎｃｒｙｐｔｉｏｎ（解読不能な暗号化による追跡不能なＲＦＩＤタグ），Ｐｒｏｃ．１２ｔｈ  ＡＣＭ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｅｃｕｒｉｔｙ（ＣＣＳ’０５），ｐｐ．９２〜１０１，２００５
【発明の開示】
【発明が解決しようとする課題】
【００１７】
本発明は、従来技術が有する問題を解消する、  匿名選択可能認証情報のための通信システム、およびそのシステムで使用される通信装置とその方法を提供する。
【００１８】
本発明の１つの態様によれば、ユーザが通信ネットワーク上でサービスにアクセスするための通信装置であって、ユーザ権限ごとに発行される１つ以上のルート認証情報を取得するルート認証情報取得部と、１つのユーザ権限集合を選択する権限選択部と、選択されたユーザ権限集合に対応するルート認証情報から１つ以上の匿名選択可能認証情報を生成する匿名選択可能認証情報生成部と、匿名選択可能認証情報を送信する通信部と、匿名選択可能認証情報の任意の１つによって匿名でそのユーザ権限集合に権限が付与されていることを証明するための知識証明を実行する知識提供部とを備える通信装置を提供する。
【００１９】
本発明の他の態様によれば、ユーザが通信ネットワーク上でサービスにアクセスするための方法であって、ユーザ権限ごとに発行される１つ以上のルート認証情報を取得するステップと、ユーザ権限集合を選択するステップと、選択されたユーザ権限集合に対応するルート認証情報から１つ以上の匿名選択可能認証情報を生成するステップと、匿名選択可能認証情報を送信するステップと、匿名選択可能認証情報の任意の１つによって匿名性でそのユーザ権限集合に権限が付与されていることを証明するための知識証明を実行するステップとを備える方法を提供する。
【００２０】
本発明の他の態様によれば、ユーザに対して通信ネットワーク上でサービスにアクセスする権限を付与するための通信装置であって、システムパラメータを設定し、公開パラメータを公開する初期化部と、ユーザの本人情報と対象サービスと対象ユーザ権限とに関する情報を受信する通信部と、ユーザが１つ以上の匿名選択可能認証情報を生成する際に使用するためのルート認証情報を生成する権限付与部であって、各ルート認証情報は１つのユーザ権限に対応することを特徴とする権限付与部とを備える通信装置を提供する。
【００２１】
本発明の他の態様によれば、通信ネットワーク上でサービスにアクセスする権限をユーザに付与する方法であって、システムパラメータを設定し、公開パラメータを公開するステップと、ユーザの本人情報と対象サービスと対象ユーザ権限とに関する情報を受信するステップと、ユーザが１つ以上の匿名選択可能認証情報を生成する際に使用するためのルート認証情報を生成するステップあって、各ルート認証情報は１つのユーザ権限に対応することを特徴とするステップとを備える方法を提供する。
【００２２】
本発明の他の態様によれば、権限を付与されたユーザに対して通信ネットワーク上でサービスを提供するための通信装置であって、１つのユーザ権限集合とそのユーザ権限集合に対応する１つの匿名選択可能認証情報とに関する情報を受信する通信部と、匿名選択可能認証情報を検証してユーザ権限集合に権限が付与されているかどうかを判定する匿名選択可能認証情報検証部と、検証済みユーザ権限に応じたサービスをユーザに対して提供するサービス部とを備える通信装置を提供する。
【００２３】
本発明の他の態様によれば、権限を付与されたユーザに対して通信ネットワーク上でサービスを提供するための方法であって、１つのユーザ権限集合とそのユーザ権限集合に対応する１つの匿名選択可能認証情報とに関する情報を受信するステップと、匿名選択可能認証情報を検証してユーザ権限集合に権限が付与されているかどうかを判定するステップと、ユーザに対して検証済みユーザ権限に応じたサービスを提供するステップとを備える方法を提供する。
【００２４】
本発明の他の態様によれば、通信システムであって、通信ネットワークを介して接続された少なくとも１つの認証局（ＣＡ）装置と、少なくとも１つのユーザ装置と少なくとも１つのサービス装置とを備える通信システムが提供される。当該認証局装置は、各々１つのユーザ権限に対応するルート認証情報を生成する権限付与部を備える。当該ユーザ装置は、１つのユーザ権限集合を選択する権限選択部と、選択されたユーザ権限集合に対応するルート認証情報から１つ以上の匿名選択可能認証情報を生成する匿名選択可能認証情報生成部と、サービス装置に提示された匿名選択可能認証情報によって匿名でそのユーザ権限集合は認証局によって権限が付与されていることを証明するためのサービス装置に対する知識証明を実行する知識提供部とを備える。当該サービス装置は、ユーザ装置によって提示された匿名選択可能認証情報を検証する匿名選択可能認証情報検証部と、ユーザ装置に検証済みユーザ権限に応じたサービスを提供するサービス部とを備える。
【００２５】
本発明の他の態様によれば、通信システムのための方法が提供される。当該通信システムは、通信ネットワークを介して接続された少なくとも１つの認証局装置と、少なくとも１つのユーザ装置と、少なくとも１つのサービス装置とを備える。当該方法は、認証局装置がルート認証情報を生成するステップであって、各ルート認証情報は１つのユーザ権限に対応することを特徴とするステップと、認証局装置がルート認証情報をユーザ装置に送信するステップと、ユーザ装置が１つのユーザ権限集合を選択し、選択されたユーザ権限集合に対応するルート認証情報から１つ以上の匿名選択可能認証情報を生成するステップと、ユーザ装置がサービス装置に対して匿名選択可能認証情報の１つを提示するステップと、ユーザ装置がサービス装置に対して、匿名で匿名選択可能認証情報によってそのユーザ権限集合は認証局によって権限が付与されていることを証明するための知識証明を実行するステップと、サービス装置がユーザ装置に対して検証済みユーザ権限に応じたサービスを提供するステップとを備える。
【００２６】
本発明の他の態様によれば、コンピュータ上で実行されるプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、プログラムが、ユーザ権限毎に発行される１以上のルート認証情報を取得する処理と、ユーザ権限の集合を選択する処理と、選択されたユーザ権限集合に対応するルート認証情報から１以上の匿名選択可能認証情報を生成する処理と、匿名選択可能認証情報を送信する処理と、匿名選択可能認証情報の任意の１つによって、匿名で当該ユーザ権限集合に権限が付与されていることを証明するための知識証明を実行する処理を、コンピュータに実行させる。
【００２７】
本発明の他の態様によれば、コンピュータ上で実行されるプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、プログラムが、システムパラメータを設定し、公開パラメータを公開する処理と、ユーザの本人情報と対象サービスと対象ユーザ権限とに関する情報を受信する処理と、ユーザが１つ以上の匿名選択可能認証情報を生成する際に使用するための、１つのユーザ権限に対応するルート認証情報を生成する処理を、コンピュータに実行させる。
【００２８】
本発明の他の態様によれば、コンピュータ上で実行されるプログラムを格納するコンピュータ読み取り可能な記憶媒体であって、プログラムが、１つのユーザ権限集合とそのユーザ権限集合に対応する１つの匿名選択可能認証情報とに関する情報を受信する処理と、匿名選択可能認証情報を検証してユーザ権限集合に権限が付与されているかどうかを判定する処理と、ユーザに対して検証済みユーザ権限に応じたサービスを提供する処理を、コンピュータに実行させる。
【発明の効果】
【００２９】
本発明によれば、ユーザは一旦権限を付与されると再びＣＡにアクセスする必要がなく、ＣＡによって権限を付与された１つ以上のサービスに何度アクセスしようとも匿名性を維持できる。ＣＡがサポートできる権限数に制限はない。すなわち、ユーザが既存の権限のどの部分を何回発行されていようとも、ＣＡは新たな権限を随時サポートすることができる。
【００３０】
ユーザは自身の権限集合のうち任意の部分を選択的に証明できる。さらに、ユーザが自身の権限集合の任意の部分を証明する際に発生する計算コストは一定である。すなわち、計算コストは証明する権限数に依存せず、１つの権限を証明するための計算コストと同じとなる。
【発明を実施するための最良の形態】
【００３１】
次に、図面を参照しつつ、本発明について説明する。以下の詳細な説明では、本発明の完全な理解を促すため、多数の細目を具体的に示している。しかし、本発明の技術に精通する当業者には、本発明はこうした特定の細目を省略しても実用に付することができることは明らかであろう。また他の部分では、本発明の本質をいたずらに曖昧にするのを回避するため、既知の構造や技法については詳細な説明を省略している。
【００３２】
まず、図ｌを参照して本発明の全体的概念を説明する。図ｌに示すように、本発明による通信システムにおいては、ＣＡ（認証局）、ユーザ、サービスという３つの当事者が関与する。各当事者の装置は、通信ネットワークを介して互いに接続されている。図ｌには１人のユーザと１つのサービスしか示していないが、当該通信システムを構成するユーザ数とサービス数は複数でもよい。ＣＡについても、複数が存在することができる。
【００３３】
当該通信システムにおいては、サービス側は権限を付与されたユーザに対して、オンライン音声／映像サービス、ゲームサービス、ファイルダウンロードサービス、オンライン入札サービス、オンライン予約サービスなどのサービスを提供する。サービスはユーザに付与された権限に応じて提供される。ユーザがサービスへのアクセスを試みると、サービス側はユーザが提示した権限をチェックし、その結果に応じて機能する。例えば、サービス側は、ユーザがサービスにアクセスする権限を持たないと判定した場合や、ユーザの権限を有するとの主張が信頼できないと判定した場合には、そのユーザによるサービスの利用を拒否することができる。サービスが階層的に構成されていることもある。この場合、サービスのレベル（提供されるコンテンツの質／量など）は、ユーザの権限に応じて決定される。
【００３４】
概して、ユーザは権限を付与される必要があり、サービス側に認証情報を提示して自身の権限を証明することを求められる。図１には、ユーザに認証情報を発行するＣＡが示されている。本明細書で使用する「ＣＡ」は、権限付与業務を遂行することのできる任意の信頼できる第三者機関などを示す。
【００３５】
本発明による通信システムでは、ＣＡは、各ユーザの本人情報と、例えばよくある例ではユーザが支払う料金とに基づいて、そのユーザに付与する権限を決定し、基本認証情報を許諾する。ユーザは、サービスにアクセスしようとするとき、ＣＡによって発行された認証情報をサービスに直接提示しない。ユーザがサービスに提示するのは、ＣＡが発行した基本認証情報から生成された新たな認証情報である。サービス側に提示される認証情報は、ユーザが選択した特定の権限がＣＡによって許諾されていることを証明する。このとき、ユーザの他の権限はサービス側に明かされず、ユーザはサービスに対して匿名性を維持することができる。
【００３６】
従来システムで使用される認証情報と区別するため、以下では、本発明によるＣＡからユーザに発行される基本認証情報を「ルート認証情報」とし、ユーザがルート認証情報から生成する新しい認証情報を「匿名選択可能認証情報（ＡＳＣ）」とする。
【００３７】
本発明によれば、ユーザはルート認証情報から、権限集合の同じ部分を証明する多数のＡＳＣ（ＡＳＣ１，．．．ＡＳＣｎ）を生成することができる。ユーザは異なるＡＳＣを異なるサービスまたは同じサービスに提示して、複数のアクセスを行うことができる。ＡＳＣの使用により、ユーザがサービス側に権限を何度提示してもユーザのアクセスがサービス（または複数サービスの複合）によって相関付けられる恐れがなくなり、ユーザはどのアクセス試行においてもＣＡに連絡する必要がなくなる。
【００３８】
次に、本発明の特定の実施例による例示装置と例示方法を、図面を参照して詳細に説明する。
【００３９】
図２は、本発明の一実施例によるＣＡ装置の例示構成を示すブロック図である。
【００４０】
図２に示すように、ＣＡ装置２００は、主な構成要素として、システムパラメータを設定するための初期設定部２１０と、権限をユーザに付与するための権限付与部２２０と、システムパラメータとユーザキーデータベースと各手段が使用するその他のデータとを保持するための記憶部２３０と、通信ネットワークを介してデータを送受信するための通信部２４０とを備える。
【００４１】
初期設定部２１０は、さらに、選択されたセキュリティパラメータに基づいて基礎となる代数を設定するための設定部２１１と、使用する一方向性のセキュアハッシュ関数を決定するためのハッシュ関数部２１２、ＣＡの秘密鍵と公開鍵を生成するためのシステムキー生成部２１３とを備えることができる。
【００４２】
権限付与部２２０は、さらに、ユーザに権限を付与することができるかどうかを判定する認証部２２１と、ユーザのキーを割り当てるためのユーザキー割り当て部２２２と、ルート認証情報を計算するためのルート認証情報生成部２２３とを備えることができる。
【００４３】
ＣＡはユーザに対して特定のサービスにアクセスする権限を付与することができる。すなわち、ＣＡは、１つ以上のサービスをサポートし、さらには各サービスで利用できる１つ以上の権限をサポートする。場合によっては、ＣＡとサービスが何らかの取り決めを行うこともできる。この取り決めの例としては、サービスがＣＡにサービス利用料の受け取りを委託し、ＣＡにより権限を付与されたユーザを受け付ける場合などが挙げられる。ＣＡには、ＣＡでサポートされるサービスに関する情報と、各サービスでサポートされる全権限の情報とを保持してもよい。また、ＣＡに、各権限をユーザに対して発行するための要件に関する情報を保持することもできる。例えば、ＣＡ装置には、サポートされるサービスと、各サービスでサポートされる権限と、ユーザにその権限を付与してよいかどうかの判定条件とを記憶したテーブルまたは要件を保持することができる。図２に示す実施例は、こうした情報を記憶部２３０に保持できるよう構成されている。しかし、こうした情報を記憶し、更新するための独立した手段をＣＡ装置に備えることも可能である。ＣＡには、従来の解決策と同様の様々な方法で、権限付与能力を持たせ、サービスおよび権限の所定の情報とを取得・維持させることができる。これは本発明の本質からは逸脱した事柄なので、本発明の本質が曖昧になるのを回避するためその詳細は省略する。
【００４４】
図３は、本発明の一実施例によるＣＡ初期設定プロセスの例を示すフローチャートである。
【００４５】
以下にいくつかの定義を示す。以下の説明では、従来の乗法群の概念を一例として使用する。ただし、当該技術に精通した当業者には、楕円曲線設定でしばしば使用される加法群の概念も同様に適用できることは認識されるであろう。
【００４６】
Ｇ１＝＜ｇ１＞とＧ２＝＜ｇ２＞とを２つの有限巡回群とし、加法群ｇ＝＜ｇ＞を使用すると、｜Ｇ１｜＝｜Ｇ２｜＝｜ｇ｜＝ｐとなる。ここでｐは任意の大きな素数である。バイリニアマップ（Ｄ．Ｂｏｎｅｈ，Ｍ．Ｆｒａｎｋｌｉｎ，Ｉｄｅｎｔｉｔｙ−Ｂａｓｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  ｆｒｏｍ  ｔｈｅ  Ｗｅｉｌ  Ｐａｉｒｉｎｇ（Ｗｅｉｌペアリングからの本人情報ベースの暗号化），Ｐｒｏｃ．Ｃｔｙｐｔｏ’０１，ＬＮＣＳ，ｖｏ１．２１３９，ｐｐ．２１３〜２２９，２００１（非特許文献３）、Ｓ．Ｇａｌｂｒａｉｔｈ，Ｋ．Ｈａｒｒｉｓｏｎ，Ｄ．Ｓｏｌｄｅｒａ，Ｉｍｐｌｅｍｅｎｔｉｎｇ  ｔｈｅ  Ｔａｔｅ  ｐａｉｒｉｎｇ（Ｔａｔｅペアリングの実装），Ｐｒｏｃ．ｏｆ  ｔｈｅ  ５ｔｈ  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ａｌｇｏｒｉｔｈｍｉｃ  Ｎｕｍｂｅｒ  Ｔｈｅｏｒｙ，ＬＮＣＳ  ２３６９，３２４〜３３７，２００２（非特許文献４）、およびＡ．Ｍｉｙａｊｉ，Ｍ．Ｎａｋａｂａｙａｓｈｉ，Ｓ．Ｔａｋａｎｏ，Ｎｅｗ  Ｅｘｐｌｉｃｉｔ  Ｃｏｎｄｉｔｉｏｎｓ  ｏｆ  Ｅｌｌｉｐｔｉｃ  Ｃｕｒｖｅｓ  ｆｏｒ  ＦＲ−ｒｅｄｕｃｔｉｏｎ（ＦＲ還元のための楕円曲線の新しい明示条件），ＩＥＩＣＥ  Ｔｒａｎｓ．Ｆｕｎｄａｍｅｎｔａｌｓ，Ｅ８４−Ａ（５）：１２３４〜１２４３，２００１（非特許文献５）を参照のこと。これらの文献は、参照して本発明に援用される）ｅ：ｇ１，ｇ２→ｇ  は、以下の要件を満たす関数である。
ｉ．バイリニア−ｈ１∈Ｇ１，ｈ２，∈Ｇ２  のすべて、およびａ，ｂ∈Ｚｐ，ｅ（ｈ１ａ，ｈ２ｂ）＝ｅ（ｈ１，ｈ２）ａｂのすべて
ｉｉ．非縮退−∃ｈ１∈Ｇ１，∃ｈ２  ∈Ｇ２、よってｅ（ｈ１，ｈ２）≠Ｉ（Ｉはｇの本人情報）、および
ｉｉｉ．計算可能−ｅを計算するための効率的なアルゴリズムが存在する。
【００４７】
設定アルゴリズムｓｅｔｕｐは、入力セキュリティパラメータ１ｋに対して、バイリニアマップの上記設定を出力し、以下のように記述される。
（ｐ、Ｇ１、Ｇ２、ｇ、ｇ１、ｇ２、ｅ）←Ｓｅｔｕｐ（ｌｋ）
ここで、１ｋは、システムのセキュリティ強度としてｋビットが選択されることを意味する。
【００４８】
システムが起動すると、ＣＡは所望のセキュリティ強度を決定し、基礎となる代数を選択し、自身の秘密鍵を生成し、公開鍵を公開しなければならない。ここで、図３を参照して、ＣＡ装置２００の初期設定手順を説明する。
【００４９】
ステップＳ３０１において、設定部２１１は所望セキュリティ強度に基づいてセキュリティパラメータを定義し、設定アルゴリズムＳｅｔｕｐを呼び出す。
【００５０】
ステップＳ３０２において、ハッシュ関数部２１２は一方向性のセキュアハッシュ関数  Ｈａｓｈ（）：｛０，１｝→Ｇ１を選択する。この関数は、任意長さの入力ビット列をＧ１の要素に変換する。
【００５１】
ステップＳ３０３において、システムキー生成部２１３はＣＡの秘密鍵として整数ａ  ∈Ｒ  Ｚｐを選択し、ＣＡの公開鍵としてＡ  ＝ｇ２a∈Ｇ２を計算する。
【００５２】
ステップＳ３０４において、ＣＡは（ｐ，Ｇ１，Ｇ２，ｇ，ｇ１，ｇ２，ｅ，Ａ）をはじめとする所定の公開システムパラメータとハッシュ関数Ｈａｓｈ（）とを公開する。
【００５３】
初期設定プロセスで生成されたパラメータとデータは、後に使用できるように記憶部２３０に記憶される。
【００５４】
次に、図４を参照して、本発明の一実施例によるＣＡ装置によって実行される例示権限付与プロセスについて説明する。
【００５５】
本人情報Ｕａを有するユーザが、サービスＳにアクセスするために権限Ｒｉ（ｉ  ＝１，２，．．．，Υ）の付与を希望しているとする。このユーザはＣＡに自身の本人情報Ｕａ、対象サービスＳ、対象権限Ｒｉ，ｉ＝１，２，…，Υを送信することによってＣＡに権限付与を要求する。ＣＡにとって、Ｒｉは自身がサポートする有効な権限であることを容易に確認できる。
【００５６】
ステップＳ４０１において、ＣＡ装置２００はユーザから、ユーザの本人情報Ｕａ、ユーザが所望するサービスＳ  、ユーザが所望する権限Ｒｉ，ｉ＝１，２，．．．，Υを受信する。
【００５７】
ステップＳ４０２において、認証部２２１はユーザの本人情報の認証を行い、要求された権限をユーザに付与してよいかどうかを判定する。この判定は、例えば記憶部２３０に記憶される所定のルールに基づいて行うことができる。例えば、サービスに対する支払いや特定のグループでのメンバー資格といった、権限に対して事前に設定された条件をユーザが満たさない場合、そのユーザには権限を付与してはならない。また、ユーザが所望するサービスもしくは権限をＣＡがサポートしていない場合も、ユーザに要求された権限を付与しないように判定が下される。
【００５８】
ステップＳ４０３において何らかの理由で（ＣＡがユーザの要求するサービスまたは権限をサポートしていない、ユーザが本人情報の認証に成功しなかった、要求された権限の条件をユーザが満たしていない、など）ユーザに要求された権限を付与できないとの判定が下された場合には、プロセスはステップＳ４０４に進む。ステップＳ４０４において、ＣＡ装置は認証失敗の処理を実行する。例えば、ＣＡ装置は、認証失敗の結果と可能な理由を示す通知をユーザに送信して、プロセスを終了してもよい。あるいは、ユーザに要求の再送を求めた上で、ステップＳ４０１に戻ることもできる。認証失敗の処理は上記の例に限定されず、個々の適用業務に応じて設計できる。
【００５９】
一方、ステップＳ４０３において要求された権限をユーザに付与できると判定された場合、プロセスはステップＳ４０５に進む。ステップＳ４０５において、ユーザキー割り当て部２２２は、記憶部２３０に格納されたユーザキーデータベースでＵａのユーザキーｚを検索する。ユーザにすでにユーザキーが割り当てられている場合、プロセスはステップＳ４０７に進む。
【００６０】
ユーザにユーザキーが割り当てられていない場合には、ユーザキー割り当て部２２２はステップＳ４０６においてｚ∈ＲＺｐをＵａのキーとして選択し、割り当てられたキーをユーザの本人情報Ｕａと関連付けてユーザキーデータベースに記憶する。
【００６１】
発明者はＲｉはビット列で表されると想定するが、これにより本発明の一般性が損なわれることはない。続いてステップＳ４０７において、ルート認証情報生成部２２３は、要求された各権限Ｒｉについて、ユーザのルート認証情報ｔｉ＝Ｈａｓｈ（Ｒｉ）１／（ａ＋ｚ）  ∈Ｇ１，ｉ＝１，２，．．．，Υを計算する。その後ステップＳ４０８おいて、ＣＡ装置はＵａのキーｚとルート認証情報ｔｉ，ｉ＝１，２，．．．，Υとをユーザに送信する。
【００６２】
ユーザが権限を選択してそれをＣＡに付与された後にも、ＣＡはサポートする権限である限り新たな権限を自由に追加することができる。換言すれば、ＣＡは、ユーザが既存の権限のどの部分を何回発行されていようとも、新たな権限を随時サポートできるのである。追加の権限を付与するための新しいルート認証情報は、既存の認証情報を修正せずにユーザに発行することができる。
【００６３】
図５は、本発明の一実施例によるユーザ装置の例示的構成を示すブロック図である。
【００６４】
図５に示すように、ユーザ装置５００は、主な構成要素として、ＣＡからルート認証情報を取得するためのルート認証情報取得部５１０と、匿名選択可能認証情報（ＡＳＣ）を生成し、使用するためのＡＳＣ部５２０と、システムパラメータ、ユーザキー、ルート認証情報、ＡＳＣの各種データや、各手段が使用するその他のデータを保持するための記憶部５３０と、通信ネットワークを介してデータを送受信するための通信部５４０とを備える。
【００６５】
ルート認証情報取得部５１０は、さらに、ＣＡにルート認証情報を要求するためのルート認証情報要求部５１１と、ＣＡから受信したルート認証情報を検証するためのルート認証情報検証部５１２とを備えることができる。ＡＳＣ部５２０は、さらに、権限のどの部分集合をサービスに提示すべきかを決定するための権限選択部５２１と、ルート認証情報からＡＳＣを計算するためのＡＳＣ生成部５２２と、ＡＳＣの検証としてサービスに対する知識証明を実行するための知識証明部５２３とを備えることができる。
【００６６】
図６は、本発明の一実施例による、ユーザ装置がＣＡからルート認証情報を取得するプロセスの例を示すフローチャートである。
【００６７】
図６に示すように、ステップＳ６０１において、ルート認証情報要求部５１１はＣＡに対してユーザに所望の権限を付与するよう要求する。ルート認証情報要求部５１１は、例えば通信部５４０を介して要求メッセージをＣＡ装置に送信する。
【００６８】
そしてステップＳ６０２において、ルート認証情報要求部５１１は、ユーザの本人情報Ｕａ、対象サービスＳ、対象権限Ｒｉ，ｉ＝１，２．．．．，Υを通信部５４０を介してＣＡ装置に送信する。上記のデータは、通信部５４０がＣＡ装置から要求の肯定応答メッセージを受信した後に送信してもよい。あるいは、要求メッセージと同時にデータを送信することもできる。したがって、ステップＳ６０１はステップＳ６０２と結合することも可能である。
【００６９】
ユーザがＣＡから権限を付与された後、ステップＳ６０３において、ユーザ装置５００はＣＡがＵａに割り当てたユーザキーとＣＡが発行したルート認証情報とを通信部５４０によって受信する。
【００７０】
続いてステップＳ６０４において、ルート認証情報検証部５１２はＣＡが公開したパラメータに基づいて、受信したルート認証情報を検証する。本実施例では、ルート認証情報検証部５１２はｈｉ＝Ｈａｓｈ（Ｒｉ）∈Ｇ１を計算し、ｅ（ｔｉ，Ａ  ｇ２ｚ）＝ｅ（ｈｉ，ｇ２），ｉ＝１，２，．．．，Υであるかどうかをチェックする。「はい」の場合、ステップＳ６０５において、割り当てられたユーザキーとルート認証情報が後の使用のために記憶部５３０に記憶される。「いいえ」の場合、プロセスはステップＳ６０１に戻って再度要求を発行する。この認証失敗を処理する方法としては、上記以外の手順を採用してもよい。例えば、ルート認証情報検証部５１２は、認証失敗の検証結果が出た後にＣＡ装置にデータを再送するよう要求する方法も可能である。
【００７１】
ユーザ装置は、ＣＡからルート認証情報を取得した後に、ルート認証情報に基づいて自身でＡＳＣを生成し、ユーザが提示した権限はＣＡに付与されたものであるとの証明としてそのＡＳＣをサービスに提示してもよい。この場合、ユーザの本人情報と他の権限が知られることはない。
【００７２】
図７は、本発明の一実施例による、ユーザ装置がサービスにアクセスするプロセスの例を示すフローチャートである。
【００７３】
図７に示すように、ステップＳ７０１において、権限選択部５２１はサービスに提示する権限の部分集合
【数９】
2008125054.tif 000003
を選択する。この選択は、サービスが何らかの方法で公表する許容される権限に該当するかどうかに基づいて行うことができる。その一例としては、サービスが、ある一日に限定してＣＯＭＰ社に勤務するＶＩＰユーザに割引を適用すると宣伝する場合が挙げられる。この場合、ユーザは、そのサービスのＶＩＰユーザであるという情報に加えて、ＣＯＭＰ社の社員という本人情報を提示すれば、特別割引を受けることができる。ＶＩＰユーザの本人情報だけが提示された場合には、その日の特別割引は受けられない。このように、該当者の選択はユーザが提供する情報に応じて行うことができる。
【００７４】
ステップＳ７０２において、ＡＳＣ生成部５２２は選択された権限に対応するＡＳＣを計算する。具体例として、ｔｊを権限ｒｊに対応するルート認証情報とすると、ＡＳＣ生成部５２２はτ∈ＲＺｐを選択し、匿名選択可能認証情報（ＡＳＣ）
【数１０】
2008125054.tif 000004
を計算し、さらに
【数１１】
2008125054.tif 000005
を計算する。ここで、ｈｊ＝Ｈａｓｈ（ｒｊ）∈Ｇ１，ｊ＝１，２，．．．，Ｎである。
【００７５】
ステップＳ７０３において、ユーザ装置はＡＳＣ  Ｔと、提示された権限｛ｒｊ｝，ｊ＝１，２，…Ｎとをサービス装置に送信する。続いて、サービス装置は、ユーザ装置が提示した各権限がサービスによってサポートされる正しい権限かどうかをチェックする。ユーザ装置がステップＳ７０４において提示された権限が正しくないとの通知を受けた場合、プロセスはステップＳ７０８の認証失敗の処理に進む。ユーザ装置による認証失敗の処理の一例としては、データをチェックして訂正し、プロセスをステップＳ７０３に戻してデータを再送することが挙げられる。あるいは、データをチェックして、権限を再度選択するステップＳ７０１にプロセスを戻すこともできる。このように、認証失敗の処理は状況に応じて設定することが可能である。
【００７６】
ステップＳ７０４でユーザ装置が提示した権限がサービスによってサポートされる権限であると判定された場合、ユーザ装置の知識提供部５４０は、提示された権限がステップＳ７０５でＣＡが付与したものであることを証明するための知識証明を当該サービスについて実行する。
【００７７】
ＡＳＣが知識証明（Ｓ７０６）の検証で有効であることが確認されると、ユーザ装置はステップＳ７０７で、提示された権限においてサービスにアクセスできる。知識証明が失敗した場合には（Ｓ７０６）、プロセスはステップＳ７０８の認証失敗の処理に進む。認証失敗の処理の一例としては、ユーザ装置は、データをチェックして訂正し、プロセスをステップＳ７０３に戻してデータを再送することが挙げられる。あるいは、データをチェックして、別のＡＳＣを計算するステップＳ７０２にプロセスを戻すこともできる。このように、認証失敗の処理は状況に応じて設定することが可能である。
【００７８】
図８は、本発明の一実施例によるサービス装置の例示構成を示すブロック図である。
【００７９】
図８に示すように、サービス装置８００は、主な構成要素として、ユーザが正しい権限を提示したかどうかをチェックするための権限チェック部８１０と、ユーザから受信したＡＳＣを検証するためのＡＳＣ検証部８２０と、システムパラメータ、受信したＡＳＣ、および各手段が使用するその他のデータとを保持するための記憶部８３０と、通信ネットワークを介してデータを送受信するための通信部８４０と、サービスをユーザに提供するためのサービス部８５０とを備える。
【００８０】
図９は、本発明の一実施例によるサービス装置によって実行される例示検証プロセスを示すフローチャートである。
【００８１】
ステップＳ９０１において、サービス装置はまずユーザ装置から、ユーザ装置が提示する権限｛ｒｊ｝，ｊ＝１；２，．．．，Ｎとそれに対応するＡＳＣ  Ｔを受信する。
【００８２】
続くステップＳ９０２で、サービス装置の権限チェック部８１０が、提示された権限｛ｒｊ｝，ｊ＝１，２，．．．，Ｎはサービス装置で受け付けることのできる正しい権限かどうかをチェックする。正しい権限でない場合、権限チェック部８１０はステップＳ９０３でエラー処理を実行する。例えば、サービス装置は、エラーと可能な理由を示す通知をユーザ装置に送信して、プロセスを終了してもよい。
【００８３】
ユーザ装置によって提示された権限が正しい場合、サービス装置のＡＳＣ検証部８２０はステップＳ９０４で
【数１２】
2008125054.tif 000006
を計算し、ステップＳ９０５でユーザ装置に対する知識証明を実行する。
【００８４】
知識証明においてＡＳＣが有効であると判定されたら（Ｓ９０６）、サービス装置はステップＳ９０７でユーザ装置によるサービスへのアクセスを許可する。このとき、サービス装置のサービス部８５０はユーザの検証済み権限に従ってユーザにサービスを提供することができる。有効でない場合、ユーザはステップＳ９０８でサービスを拒否される。このとき、サービス装置は証明の失敗を示す通知を送信するなどの処理を行い、プロセスを終了する。
【００８５】
上記で説明した本発明の実施においては、いわゆる知識証明の技法が使用される（Ｓ．Ｇｏｌｄｗａｓｓｅｒ，Ｓ．Ｍｉｃａｌｉ，Ｃ．Ｒａｃｋｏｆｆ，Ｔｈｅ  Ｋｎｏｗｌｅｄｇｅ  Ｃｏｍｐｌｅｘｉｔｙ  ｏｆ  Ｉｎｔｅｒａｃｔｉｖｅ  Ｐｒｏｏｆ  Ｓｙｓｔｅｍｓ（対話型証明システムの知識の複雑性），１７ｔｈ  ＡＣＭ  Ｓｙｍｐｏｓｉｕｍ  ｏｎ  Ｔｈｅｏｒｙ  ｏｆ  Ｃｏｍｐｕｔａｔｉｏｎ，ｐｐ．２９１〜３０４，１９８５（非特許文献６）。この文献は参照して本発明に援用される）。ゼロ知識において離散的対数の知識を証明する方法は多数提案されている（Ａ．Ｆｉａｔ，Ａ．Ｓｈａｍｉｒ，Ｈｏｗ  Ｔｏ  Ｐｒｏｖｅ  Ｙｏｕｒｓｅｌｆ：Ｐｒａｃｔｉｃａｌ  Ｓｏｌｕｔｉｏｎｓ  ｔｏ  Ｉｄｅｎｔｉｆｉｃａｔｉｏｎ  ａｎｄ  Ｓｉｇｎａｔｕｒｅ  Ｐｒｏｂｌｅｍｓ（自分を証明する方法：同定と署名の問題への実際的な解決策），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’８６，ｐｐ．１８６〜１９４，１９８６（非特許文献７）；Ｄ，Ｃｈａｕｍ，Ｄｅｍｏｎｓｔｒａｔｉｎｇ  Ｐｏｓｓｅｓｓｉｏｎ  ｏｆ  ａ  Ｄｉｓｃｒｅｔｅ  Ｌｏｇａｒｉｔｈｍ  ｗｉｔｈｏｕｔ  Ｒｅｖｅａｌｉｎｇ  Ｉｔ（離散的対数を明かさずにその所持を実証する），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’８６，ｐｐ．２００〜２１２，１９８７（非特許文献８）；Ｄ．Ｃｈａｕｍ，Ｊ．Ｈ．Ｅｖｅｒｔｓｅ，Ｊ．ｖａｎ  ｄｅ  Ｇｒａａｆ，Ａｎ  Ｉｍｐｒｏｖｅｄ  Ｐｒｏｔｏｃｏｌ  ｆｏｒ  Ｄｅｍｏｎｓｔｒａｔｉｎｇ  Ｐｏｓｓｅｓｓｉｏｎ  ｏｆ  Ｄｉｓｃｒｅｔｅ  Ｌｏｇａｒｉｔｈｍｓ  ａｎｄ  Ｓｏｍｅ  Ｇｅｎｅｒａｌｉｚａｔｉｏｎｓ（離散的対数の所持を実証するための改良型プロトコルといくつかの一般法則），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＥＵＲＯＣＲＹＰＴＯ’８７，ｐｐ．１２７〜１４１，１９８７（非特許文献９）；Ｄ．Ｃｈａｕｍ，Ｔ．Ｐ．Ｐｅｄｅｒｓｅｎ，Ｗａｌｌｅｔ  Ｄａｔａｂａｓｅｓ  ｗｉｔｈ  Ｏｂｓｅｒｖｅｒｓ（オブザーバを備えるウォレットデータベース），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’９２，ｐｐ．８９〜１０５，１９９３（非特許文献１０）；Ｋ．Ｓａｋｏ，Ｊ．Ｋｉｌｉａｎ，Ｒｅｃｅｉｐｔ−Ｆｒｅｅ  Ｍｉｘ−Ｔｙｐｅ  Ｖｏｔｉｎｇ  Ｓｃｈｅｍｅ  −Ａ  Ｐｒａｃｔｉｃａｌ  Ｓｏｌｕｔｉｏｎ  ｔｏ  ｔｈｅ  Ｉｍｐｌｅｍｅｎｔａｔｉｏｎ  ｏｆ  ａ  Ｖｏｔｉｎｇ  Ｂｏｏｔｈ（投票方式−投票ブースの実装への実際的な解決策），Ａｄｖａｎｃｅｓ  ｉｎ  Ｃｒｙｐｔｏｌｏｇｙ−ＣＲＹＰＴＯ’９８，ｐｐ．３９３〜４０３，１９９８（非特許文献１１）；Ｋｅ  Ｚｅｎｇ，Ｐｓｅｕｄｏｎｙｍｏｕｓ  ＰＫＩ  ｆｏｒ  Ｕｂｉｑｕｉｔｏｕｓ  Ｃｏｍｐｕｔｉｎｇ（ユビキタスコンピューティングのための変名ＰＫＩ），ＬＮＣＳ  ４０４３，ｐｐ．２０７−２２２，ＥｕｒｏＰＫＩ’０６，２００６（非特許文献１２）は、知識証明手順の計算方法と実現方法について順を追って具体的に示している。これらの文献は参照し本発明に援用される）。
【００８６】
上記で説明した本発明の実施例では、ユーザ装置とサービス装置間の知識証明はＳＫＰ｛（ｘ１，ｘ２）：ｅ（Ｔ，Ａ）＝ｅ（Ｈ，ｇ２）ｘ１・ｅ（Ｔ，ｇ２−１）ｘ２｝と表すことができる。具体的には、ユーザ装置はサービス装置に対し、ｅ（Ｔ，Ａ）＝ｅ（Ｈ，ｇ２）ｘ１・ｅ（Ｔ，ｇ２−１）ｘ２の成立をもってｘ１およびｘ２の知識を証明してもよい。
【００８７】
本発明の実施例には、従来の様々な知識証明法を適用することができる。これらの方法は当該技術では既知であるため、ここでは詳細な手順は説明しない。対話型と非対話型のいずれの知識証明も本発明の実施例に適用できることは、当該技術に精通した当業者には明白である。非対話型の知識証明を採用すると、ユーザ装置とサービス装置間の通信時間を短縮できるため、ネットワークの利用効率と省時間の観点からは有利である。ただし、非対話型の知識証明では、リプレイ攻撃への防衛策としてユーザ装置とサービス装置が同じ時間原点を共有することが不可欠となる。対話型と非対話型の異形がそれぞれ有する利点と欠点は、当業者には既知の情報である。
【００８８】
上記の説明から明らかなように、本発明によれば、ＣＡの関与なしに異なるτ∈ｒＺｐを選択することにより、ユーザはＣＡによる権限付与をサービス側で検証するためのＡＳＣ  
【数１３】
2008125054.tif 000007
を任意の数だけ生成できるため、サービスに対して匿名性を維持することができる。また、同じユーザが同じサービスに異なるＡＳＣを使用して複数回アクセスするので、リンク不能となる。すなわち、ユーザがサービス側に権限を何度提示しても、ユーザのアクセスがサービスによって相関付けられる恐れはなく、ユーザはアクセス試行において一切ＣＡに連絡する必要がない。一方、ＣＡは、各ユーザキーを対応するユーザの本人情報と関連付けて記憶するため、ユーザのＡＳＣからユーザの真の本人情報を追跡することができる。したがって、必要が生じた場合は、ＣＡの助けを借りてユーザの本人情報を追跡することが可能である。当該技術に精通した当業者であれば、追跡と破棄の手順を設計できる。追跡技術と破棄技術の例としては、Ｄ．Ｂｏｎｅｈ，Ｘ．Ｂｏｙｅｎ  ａｎｄ  Ｈ．Ｓｈａｃｈａｍ，Ｓｈｏｒｔ  Ｇｒｏｕｐ  Ｓｉｇｎａｔｕｒｅｓ，Ｐｒｏｃ．Ｏｆ  Ｃｒｙｐｔｏ’０４，ｐｐ．４１〜５５，２００４（非特許文献１３）；Ｋｅ  Ｚｅｎｇ，Ｐｓｅｕｄｏｎｙｍｏｕｓ  ＰＫＩ  ｆｏｒ  Ｕｂｉｑｕｉｔｏｕｓ  Ｃｏｍｐｕｔｉｎｇ（ユビキタスコンピューティングのための変名ＰＫＩ），ＬＮＣＳ  ４０４３，ｐｐ．２０７−２２２，ＥｕｒｏＰＫＩ’０６，２００６（非特許文献１２）がある。この文献は参照して本発明に援用される。
【００８９】
さらに、本発明によれば、ユーザはＣＡによって自身に発行された権限集合の全体から、サービスが検証するＡＳＣに対応するユーザ権限を自由に選択できる。証明対象の権限は
【数１４】
2008125054.tif 000008
という乗法公式にまとめられ、さらには、現代の暗号技術では乗法の計算コストは累乗法のコストに比較して非常に少ないと考えられているため、計算費用の観点に立つと、複数の権限を証明するコストは１つの権限を証明するコストと同程度に少なくてすむことは明らかである。
【００９０】
以上、従来の乗法群の概念を使用して具体的な実施例をいくつか説明してきたが、当業者には加法群の概念を採用した解決策も上記の説明から明らかであろう。他の概念も上記と同様であるが、例えば、加法群の概念を採用した本発明の一実施例によれば、匿名選択可能認証情報は
【数１５】
2008125054.tif 000009
として計算され、Ｈは
【数１６】
2008125054.tif 000010
として計算される。これによる効果は本発明の実施例と同様である。
【００９１】
本発明は、使用する概念を問わず、バイリニアマップがサポートされる限り乗法群と同様に加法群を採用して実装することができる。そのため、加法群を採用した場合の詳細は省略する。当業者には明らかなように、加法群を採用した解決策においては、証明対象のユーザ権限は加法公式で結合され、その計算コストはやはり、スカラー乗法のコストに比較して非常に少ないと考えられている。そのため、計算費用の観点に立つと、複数の権限を証明するコストは１つの権限を証明するコストと同程度に少なくてすむ。
【００９２】
当業者には既知のことであるが、Ｇｉが楕円曲線における有限巡回群である場合、ｈｉ＝Ｈａｓｈ（Ｒｉ）∈Ｇ１の各々とｔｉ＝Ｈａｓｈ（Ｒｉ）１／（ａ＋ｚ）∈Ｇ１は、Ｇ１の一要素、すなわち楕円曲線上の一点である。したがって、同様に計算される
【数１７】
2008125054.tif 000011
と
【数１８】
2008125054.tif 000012
も当然にＧ１の要素である。数値またはビット列、もしくはこの両方を楕円曲線上の一点にマップするための手段は、当業者には既知である（例えば、Ｄ．Ｂｏｎｅｈ，Ｍ．Ｆｒａｎｋｌｉｎ，Ｉｄｅｎｔｉｔｙ−Ｂａｓｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  ｆｒｏｍ  ｔｈｅ  Ｗｅｉｌ  Ｐａｉｒｉｎｇ（Ｗｅｉｌペアリングからの本人情報ベースの暗号化），Ｐｒｏｃ．Ｃｒｙｐｔｏ’０１，ＬＮＣＳ，ｖｏ１．２１３９，ｐｐ．２１３〜２２９，２００１（非特許文献１４）参照。この文献は参照して本発明に援用される）。上記以外にもアクセス権限Ｒｉを楕円曲線上の点ｈｉにマップする方法がある。例えば、ハッシュ関数を使わずにマッピングを実装する方法がＧ．Ａｔｅｎｉｅｓｅ，Ｊ．Ｃａｍｅｎｉｓｃｈ，Ｂ．Ｍｅｄｅｉｒｏｓ，Ｕｎｔｒａｃｅａｂｌｅ  ＲＦＩＤ  Ｔａｇｓ  ｖｉａ  Ｉｎｓｕｂｖｅｒｔｉｂｌｅ  Ｅｎｃｒｙｐｔｉｏｎ（解読不能な暗号化による追跡不能なＲＦＩＤタグ），Ｐｒｏｃ．１２ｔｈ  ＡＣＭ  Ｃｏｎｆｅｒｅｎｃｅ  ｏｎ  Ｃｏｍｐｕｔｅｒ  ａｎｄ  Ｃｏｍｍｕｎｉｃａｔｉｏｎｓ  Ｓｅｃｕｒｉｔｙ（ＣＣＳ’０５），ｐｐ．９２〜１０１，２００５（非特許文献１５）で開示されている。この文献は参照して本発明に援用される。本発明の基本精神から逸脱しない限り、既知のアルゴリズムのうち任意のものを適用できる。上記の実施例では明示的に示していないが、上記の公式に可能な変更は本発明の真の精神が完全に理解されている限り当業者には明らかであろう。
【００９３】
上記では図面を参照して本発明の特定の実施例について説明したが、本発明は図面に示した特定の構成およびプロセスに限定されるものではない。例えば、図面ではユーザ装置、サービス装置、およびＣＡ装置の例示構成としていくつかの相互接続された手段が示されているが、各装置に含まれる構成要素は説明した手段に限定されず、また明示した構成には修正や変更が可能である。各装置には、さらに、装置のオペレータに情報を表示するためのディスプレイ手段、オペレータの入力を取り込むための入力手段、各装置の動作を制御するためのコントローラなどを備えることができる。これらの構成要素は当該技術では既知のものであり、当業者は上記の装置に追加することに容易に思い至るであろうから、詳細な説明は省略している。
【００９４】
また、異なる装置が説明され、図示されているが、これらの装置を一つの装置にまとめてさらに高度な機能を持たせることが可能である。例えば、ユーザ装置とサービス装置を組み合わせて、あるときにはユーザ装置として機能し、またあるときにはサービスを提供する新たな装置を創出することができ、さらには、ユーザが追加のサービスを管理するのであれば、ユーザ装置とＣＡ装置を組み合わせることもできる。
【００９５】
さらに、説明した手段は図面では別個のブロックとして示されているが、それらを任意に組み合わせて一つの構成要素としたり、一つの手段を複数の構成要素に分割したりすることも可能である。例えば、記憶手段は、各手段が使用するデータを一括して記憶する単一の独立した構成要素であってもよい。あるいは、記憶手段を、各々データを記憶するための手段として機能するいくつかの構成要素として実装してもよい。
【００９６】
本発明の各要素は、ハードウェア、ソフトウェア、ファームウェア、またはその組み合わせとして実装でき、システム、サブシステム、そのコンポーネントもしくはサブコンポーネント内で利用することができる。ソフトウェアで実装された場合、本発明の各要素はプログラムもしくはコードセグメントとして必要なタスクを実行するために使用される。プログラムまたはコードセグメントは、機械読取り可能媒体に格納することも、あるいは、伝送媒体もしくは通信リンクを介して搬送波内に具現化されたデータ信号により伝送することもできる。「機械読取り可能媒体」には、情報を格納または伝送できるあらゆる媒体が含まれる。機械読取り可能媒体の例としては、電子回路、半導体記憶装置、ＲＯＭ、フラッシュメモリ、消去可能書き込み可能ＲＯＭ（ＥＲＯＭ）、フロッピーディスク、ＣＤ−ＲＯＭ、光ディスク、ハードディスク、光ファイバー媒体、無線周波数（ＲＦ）リンク等が挙げられる。コードセグメントは、インターネット、イントラネット等のコンピュータネットワークを介してダウンロードすることもできる。
【００９７】
本発明は、その精神または本質的な特徴から逸脱することなく、他の様々な形式で具現化することができる。例えば、実施例で説明したアルゴリズムは、システムアーキテクチャが本発明の基本精神から逸脱しない限り、変更が可能である。したがって、本発明の実施例はあらゆる点において限定的ではなく例示的なものであり、本発明の範囲は前述の説明よりむしろ付記した特許請求の範囲に示されており、各請求項と等価な意味と範囲に含まれるあらゆる変更がそれに包含される。
【図面の簡単な説明】
【００９８】
本発明は、下記の好適な実施例の説明と添付図面からより明確に理解されるであろう。なお、添付図面では、共通する部品は同じ参照番号を使用して示している。添付図面は以下とおりである。
【００９９】
【図１】本発明の全体的概念を概略的に説明する図である。
【図２】本発明の一実施例によるＣＡ装置の例示構成を示すブロック図である。
【図３】本発明の一実施例によるＣＡ初期設定プロセスの例を示すフローチャートである。
【図４】本発明の一実施例によるＣＡ装置によって実行される権限付与プロセスの例を示すフローチャートである。
【図５】本発明の一実施例によるユーザ装置の例示構成を示すブロック図である。
【図６】本発明の一実施例による、ユーザ装置がＣＡからルート認証情報を取得するプロセスの例を示すフローチャートである。
【図７】本発明の一実施例による、ユーザ装置がサービスにアクセスするプロセスの例を示すフローチャートである。
【図８】本発明の一実施例によるサービス装置の例示構成を示すブロック図である。
【図９】本発明の一実施例によるサービス装置によって実行される検証プロセスの例を示すフローチャートである。
【符号の説明】
【０１００】
２１０：初期設定部
２１１：設定部
２１２：ハッシュ関数部
２１３：システムキー生成部
２２０：権限付与部
２２１：認証部
２２２：ユーザキー割り当て部
２２３：ルート認証情報生成部
２３０：記憶部
２４０：通信部
５１０：ルート認証情報取得部
５１１：ルート認証情報要求部
５１２：ルート認証情報検証部
５２０：ＡＳＣ部
５２１：権限選択部
５２２：ＡＳＣ生成部
５２３：知識証明部
５３０：記憶部
５４０：通信部
８１０：権限チェック部
８３０：記憶部
８２０：ＡＳＣ検証部
８４０：通信部
８５０：サービス部
【図１】
2008125054.tif 000021
【図２】
2008125054.tif 000022
【図３】
2008125054.tif 000023
【図４】
2008125054.tif 000024
【図５】
2008125054.tif 000025
【図６】
2008125054.tif 000026
【図７】
2008125054.tif 000027
【図８】
2008125054.tif 000028
【図９】
2008125054.tif 000029
【外国語明細書】
2008125054000001.pdf