説明

認証システム、認証方法、ならびに、プログラム

【課題】あるグループ内のサブグループにおいて、通信の複雑さを抑制して効率良く認証を行うための認証システム等を提供する。
【解決手段】端末装置111(U[1],…,U[t],…,U[m])はそれぞれの公開鍵Y[1],…,Y[t],…,Y[m]を公開し、端末群131の代表701は、種Rを生成して認証装置121に送信し、認証装置121は、チャレンジbを生成して端末群131に送信し、端末群131の端末装置111(U[1],…,U[t])の秘密鍵W[1],…,W[t]から応答d[0],…,d[m]を生成して認証装置121に送信し、認証装置121は、種R、公開鍵Y[1],…,Y[t],…,Y[m]、チャレンジbを参照して端末群131の匿名グループ認証を行う。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、あるグループ内のサブグループにおいて、通信の複雑さを抑制して効率良く認証を行うための認証システム、認証方法、ならびに、これらをコンピュータ上にて実現するためのプログラムに関する。
【背景技術】
【0002】
従来、認証技術の分野では、m人のユーザのグループのうち、少なくともt人のサブグループのユーザがいるときに、サーバと匿名でセッション鍵を共有するための手法が提案されている。このような手法を、t-out-of-m手法という。このような技術については、以下の文献に開示されている。
【非特許文献1】Duong Quang Viet,Akihiro Yamamura and Hidema Tanaka, Anonymous Password-Based Authenticated Key Exchange, Book Progress in Cryptology - INDOCRYPT 2005, Lecture Notes in Computer Science, Springer Berlin / Heidelberg, Volume 3797/2005, ISBN 978-3-540-30805-8, p.244-p.257, 2005年
【0003】
[特許文献1]では、匿名でパスワードに基づいた認証鍵の交換手法、特に、あるグループ内のユーザがサーバと匿名でセッション鍵を確立する手法について提案している。本手法では、正当なグループ内のユーザとサーバは、人が覚えやすいパスワードを共有しており、互いに認証を行うことができ、辞書攻撃に対して安全である。
【0004】
従来、このような手法における通信の複雑さ(通信量に相当する)は、Θ(mn log m)のオーダーであった。
【発明の開示】
【発明が解決しようとする課題】
【0005】
しかしながら、t-out-of-m手法においては、通信の複雑さを抑制して、通信量を減らしたい、との要望は大きい。
【0006】
本発明は、このような課題を解決するもので、あるグループ内のサブグループにおいて、通信の複雑さを抑制して効率良く認証を行うための認証システム、認証方法、ならびに、これらをコンピュータ上にて実現するためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【0007】
上記の課題を解決するため、本発明の原理にしたがい、以下の発明を開示する。
【0008】
本発明の第1の観点に係る認証システムは、素数pを位数とする巡回群Gと、Gの生成元gと、pを法とする有限体Zpと、当該有限体Zpに対する乗法群Zp*と、ユーザ総数mと、匿名グループ認証を求める端末群に含まれる端末装置数tと、に対する認証システムであって、認証装置と、m台の端末装置U[1],U[2],…,U[m]と、を備え、認証装置は、種受信部、チャレンジ選択部、チャレンジ送信部、応答受信部、認証部を備え、m台の端末装置U[1],U[2],…,U[m]のそれぞれは、秘密鍵選択部、公開鍵生成部、公開鍵公開部を備え、m台の端末装置のうち、匿名グループ認証を求めるt台の端末装置U[1],U[2],…,U[t]からなる端末群は、元選択部、種計算部、種送信部、チャレンジ受信部、中間計算部、応答計算部、応答送信部を備え、以下のように構成する。
(a) 整数i = 1,2,…,mのそれぞれについて、m台の端末装置のうち端末装置U[i]において、秘密鍵選択部が、当該乗法群Zp*からt個の元
w[1,i],w[2,i],…,w[t,i]
を一様にランダムに秘密鍵として選択し、公開鍵生成部が、選択された秘密鍵から公開鍵
y[1,i] = gw[1,i]
y[2,i] = gw[2,i]
…,
y[t,i] = gw[t,i]
を生成し、公開鍵公開部が、m台の端末装置、および、認証装置に、生成された公開鍵
y[1,i],y[2,i],…,y[t,i]
を公開する。
(b)端末群において、元選択部が、当該有限体Zpからm+1個の元
c[0],c[1],c[2],…,c[m]
を一様にランダムに選択し、種計算部が、選択された元と、公開された公開鍵と、から、種
r[1] = gc[0] Πi=1m y[1,i]c[i]
r[2] = gc[0] Πi=1m y[2,i]c[i]
…,
r[t] = gc[0] Πi=1m y[t,i]c[i]
を計算し、種送信部が、認証装置に、計算された種
r[1],r[2],…,r[t]
を送信する。
(c)認証装置において、種受信部が、端末群から送信された種
r[1],r[2],…,r[t]
を受信し、チャレンジ選択部が、当該有限体Zpから一様にランダムに1個の元をチャレンジbとして選択し、チャレンジ送信部が、選択されたチャレンジbを、端末群に送信する。
(d)端末群において、チャレンジ受信部が、認証装置から送信されるチャレンジbを受信し、中間計算部が、整数k = 1,2,…,tについて
f[k] = c[0] + Σi=1t w[k,i]c[i] (mod p)
および
f[t+1] = b - (c[t+1] + c[t+2] + … + c[m]) (mod p)
を計算し、応答計算部が、端末群に含まれる端末装置U[1],U[2],…,U[t]のそれぞれの秘密鍵
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,t],w[2,t],…,w[t,t]
により、当該有限体Zpの上で、以下の条件[数3]を満たす応答
d[0],d[1],d[2],…,d[t],d[t+1],d[t+2],…,d[m]
を計算する。
【0009】
【数3】

【0010】
そして、応答送信部が、計算された応答
d[0],d[1],…,d[m]
を、認証装置に送信する。
(e)認証装置において、応答受信部が、端末群から送信される応答
d[0],d[1],…,d[m]
を受信し、認証部が、受信された応答
d[0],d[1],…,d[m]
と、公開された公開鍵
y[1,1],y[2,1],…,y[t,1],
y[1,2],y[2,2],…,y[t,2],
…,
y[1,m],y[2,m],…,y[t,m]
と、により、
b = Σi=1m d[i] (mod p)
が成立し、かつ、整数j = 1,2,…,tのそれぞれについて、
r[j] = gd[0] Πi=1m y[j,i]d[i]
が成立する場合、当該端末群に対する認証を成功させる。
【0011】
また、本発明の認証システムは、鍵提供装置をさらに備え、鍵提供装置は、秘密鍵取得部、秘密鍵送信部を備え、m台の端末装置のそれぞれは、秘密鍵受信部をさらに備え、以下のように構成することができる。
(f)鍵提供装置において、秘密鍵取得部が、当該乗法群Zp*からt×m個の元
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,m],w[2,m],…,w[t,m]
を一様にランダムに取得し、秘密鍵送信部が、整数i = 1,2,…,mのそれぞれについて、m台の端末装置のうち端末装置U[i]に、取得された
w[1,i],w[2,i],…,w[t,i]
を個別鍵として送信する。
(g)整数i = 1,2,…,mのそれぞれについて、m台の端末装置のうち端末装置U[i]において、秘密鍵受信部が、鍵提供装置から送信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を受信し、秘密鍵選択工程では、受信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を当該秘密鍵として選択する。
【0012】
また、本発明の認証システムにおいて、端末群に含まれるいずれか1台の端末装置へ、端末群に含まれる他の端末装置は、それぞれの秘密鍵を通知し、端末群に含まれる当該1台の端末装置が、元選択部、種計算部、種送信部、中間計算部、応答計算部、応答送信部を備えるように構成することができる。
【0013】
また、本発明の認証システムにおいて、応答計算部は、当該有限体Zp上での掃き出し法により、
d[0],d[1],d[2],…,d[t]
を求めるように構成することができる。
【0014】
本発明のその他の観点に係る認証方法は、素数pを位数とする巡回群Gと、Gの生成元gと、pを法とする有限体Zpと、当該有限体Zpに対する乗法群Zp*と、ユーザ総数mと、匿名グループ認証を求める端末群に含まれる端末装置数tと、に対する認証方法であって、認証装置と、m台の端末装置U[1],U[2],…,U[m]と、において実行され、認証装置は、種受信部、チャレンジ選択部、チャレンジ送信部、応答受信部、認証部を備え、m台の端末装置U[1],U[2],…,U[m]のそれぞれは、秘密鍵選択部、公開鍵生成部、公開鍵公開部を備え、m台の端末装置のうち、匿名グループ認証を求めるt台の端末装置U[1],U[2],…,U[t]からなる端末群は、元選択部、種計算部、種送信部、チャレンジ受信部、中間計算部、応答計算部、応答送信部を備え、当該認証方法は、種受信工程、チャレンジ選択工程、チャレンジ送信工程、応答受信工程、認証工程、秘密鍵選択工程、公開鍵生成工程、公開鍵公開工程、元選択工程、種計算工程、種送信工程、チャレンジ受信工程、中間計算工程、応答計算工程、応答送信工程、を備え、以下のように構成する。
(a) 整数i = 1,2,…,mのそれぞれについて、m台の端末装置のうち端末装置U[i]において、秘密鍵選択工程では、秘密鍵選択部が、当該乗法群Zp*からt個の元
w[1,i],w[2,i],…,w[t,i]
を一様にランダムに秘密鍵として選択し、公開鍵生成工程では、公開鍵生成部が、選択された秘密鍵から公開鍵
y[1,i] = gw[1,i]
y[2,i] = gw[2,i]
…,
y[t,i] = gw[t,i]
を生成し、公開鍵公開工程では、公開鍵公開部が、m台の端末装置、および、認証装置に、生成された公開鍵
y[1,i],y[2,i],…,y[t,i]
を公開する。
(b)m台の端末装置のうち、匿名グループ認証を求めるt台の端末装置U[1],U[2],…,U[t]からなる端末群において、元選択工程では、元選択部が、当該有限体Zpからm+1個の元
c[0],c[1],c[2],…,c[m]
を一様にランダムに選択し、種計算工程では、種計算部が、選択された元と、公開された公開鍵と、から、種
r[1] = gc[0] Πi=1m y[1,i]c[i]
r[2] = gc[0] Πi=1m y[2,i]c[i]
…,
r[t] = gc[0] Πi=1m y[t,i]c[i]
を計算し、種送信工程では、種送信部が、認証装置に、計算された種
r[1],r[2],…,r[t]
を送信する。
(c)認証装置において、種受信工程では、種受信部が、端末群から送信された種
r[1],r[2],…,r[t]
を受信し、チャレンジ選択工程では、チャレンジ選択部が、当該有限体Zpから一様にランダムに1個の元をチャレンジbとして選択し、チャレンジ送信工程では、チャレンジ送信部が、選択されたチャレンジbを、端末群に送信する。
(d)端末群において、チャレンジ受信工程では、チャレンジ受信部が、認証装置から送信されるチャレンジbを受信し、中間計算工程では、中間計算部が、整数k = 1,2,…,tについて
f[k] = c[0] + Σi=1t w[k,i]c[i] (mod p)
および
f[t+1] = b - (c[t+1] + c[t+2] + … + c[m]) (mod p)
を計算し、応答計算工程では、応答計算部が、端末群に含まれる端末装置U[1],U[2],…,U[t]のそれぞれの秘密鍵
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,t],w[2,t],…,w[t,t]
により、当該有限体Zpの上で、[数3]を満たす応答
d[0],d[1],d[2],…,d[t],d[t+1],d[t+2],…,d[m]
を計算し、応答送信工程では、応答送信部が、計算された応答
d[0],d[1],…,d[m]
を、認証装置に送信する。
(e)認証装置において、応答受信工程では、応答受信部が、端末群から送信される応答
d[0],d[1],…,d[m]
を受信し、認証工程では、認証部が、受信された応答
d[0],d[1],…,d[m]
と、公開された公開鍵
y[1,1],y[2,1],…,y[t,1],
y[1,2],y[2,2],…,y[t,2],
…,
y[1,m],y[2,m],…,y[t,m]
と、により、
b = Σi=1m d[i] (mod p)
が成立し、かつ、整数j = 1,2,…,tのそれぞれについて、
r[j] = gd[0] Πi=1m y[j,i]d[i]
が成立する場合、当該端末群に対する認証を成功させる。
【0015】
また、本発明の認証方法において、さらに鍵提供装置において実行され、鍵提供装置は、秘密鍵取得部、秘密鍵送信部を備え、m台の端末装置のそれぞれは、秘密鍵受信部をさらに備え、当該認証方法は、秘密鍵取得工程、秘密鍵送信工程、秘密鍵受信工程をさらに備え、以下のように構成することができる。
(f)鍵提供装置において、秘密鍵取得工程では、秘密鍵取得部が、当該乗法群Zp*からt×m個の元
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,m],w[2,m],…,w[t,m]
を一様にランダムに取得し、秘密鍵送信工程では、秘密鍵送信部が、整数i = 1,2,…,mのそれぞれについて、m台の端末装置のうち端末装置U[i]に、取得された
w[1,i],w[2,i],…,w[t,i]
を個別鍵として送信する。
(g)整数i = 1,2,…,mのそれぞれについて、m台の端末装置のうち端末装置U[i]において、秘密鍵受信工程では、秘密鍵受信部が、鍵提供装置から送信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を受信し、秘密鍵選択工程では、受信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を当該秘密鍵として選択する。
【0016】
また、本発明の認証方法において、端末群に含まれるいずれか1台の端末装置へ、端末群に含まれる他の端末装置は、それぞれの秘密鍵を通知し、端末群に含まれる当該1台の端末装置において、元選択工程、種計算工程、種送信工程、中間計算工程、応答計算工程、応答送信工程が実行されるように構成することができる。
【0017】
また、本発明の認証方法において、応答計算工程では、当該有限体Zp上での掃き出し法により、
d[0],d[1],d[2],…,d[t]
を求めるように構成することができる。
【0018】
本発明のその他の観点に係るプログラムは、コンピュータを、上記の認証システムの認証装置、端末装置、端末群の各部として機能させるように構成する。
【0019】
特に、(m+1)台のコンピュータのうち、第1から第mまでのコンピュータのそれぞれを、請求項1に記載の認証システムのm台の端末装置のいずれかとして機能させ、第1から第tまでのコンピュータ群を、当該認証システムの端末群として機能させ、第(m+1)のコンピュータを、当該認証システムの認証装置として機能させるように構成することができる。
【0020】
なお、上記のプログラムは、コンピュータ読取可能な情報記録媒体(コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、または、半導体メモリを含む。)に記録することができる。
【0021】
そして、上記の情報記録媒体は、コンピュータとは独立して配布、販売することができるほか、インターネット等のコンピュータ通信網を介して上記のプログラムそのものを配布、販売することができる。
【発明の効果】
【0022】
本発明によれば、あるグループ内のサブグループにおいて、通信の複雑さを抑制して効率良く認証を行うための認証システム、認証方法、ならびに、これらをコンピュータ上にて実現するためのプログラムを提供することができる。
【発明を実施するための最良の形態】
【0023】
以下に本発明の実施形態を説明する。なお、以下にあげる実施形態は、説明のためのものであり、本発明の範囲を制限するものではない。したがって、当業者であれば、これらの各要素または全要素を、これと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も、本発明の範囲に含まれる。
【実施例1】
【0024】
図1は、本実施形態に係る認証システムの概要構成を示す説明図である。以下、本図を参照して説明する。
【0025】
本図に示すように、認証システム101は、認証の対象となる複数の端末装置111と、認証を行う認証装置121と、から構成され、インターネットなどのコンピュータ通信網141を介して、相互に通信可能に接続されている。
【0026】
ここで、本実施形態は、m台の端末装置111のうち、t台の端末装置111からなるグループを認証するものであり、当該端末群131が、全体として、t台の端末装置111からなることを、それぞれが持つ鍵を参照して、認証装置121が認証するものである。
【0027】
この際に、当該端末群131に含まれる各端末装置111のそれぞれと、認証装置121とが、個別に通信をしてしまうと、どの端末装置111がどの鍵を持っているか、について、認証装置121にわかってしまう。
【0028】
しかしながら、本実施形態においては、端末装置111からなる端末群131が全体として、典型的には、いずれかの1台の端末装置111を代表とし、端末群131に含まれる端末装置111と鍵との対応関係は秘匿したままで、認証装置121と通信する。
【0029】
このように、グループ全体は特定の端末装置111からなることが判明するが、グループ内のいずれの端末装置111かを個別に判定しない手法が、匿名グループ認証である。
【0030】
また、m台の中のt台の端末装置111であることがわかれば認証が成功することとなる。本実施形態では公開鍵システムを利用するが、t台の端末装置111の公開鍵だけを参照するのではなく、m台の端末装置111の公開鍵全部を参照する。
【0031】
したがって、特定のt台であることが認証されるのではない。すなわち、ある公開鍵を持つ端末装置111が端末群131に含まれるか否かは、匿名グループ認証の際には判明しない。
【0032】
本実施形態では、以下の概念を、以下の記号により表記する。
(1)素数pを位数とする巡回群G。
(2)Gの生成元g。
(3)pを法とする有限体Zp
(4)当該有限体Zpに対する乗法群Zp*
(5)ユーザ総数m。
(6)匿名グループ認証を求める端末群131に含まれる端末装置数t。
【0033】
これらの情報は、U[1],U[2],…,U[m]からなるm台の端末装置111、および、認証装置121において共有される。
【0034】
各端末装置111や認証装置121は、コンピュータ通信網に接続された情報処理装置によって実現されるのが典型的である。一般的な情報処理装置は、CPU(Central Processing Unit)の制御の下、RAM(Random Access Memory)を一時的な記憶領域とし、ハードディスク等を一時的もしくは不揮発な記憶領域とし、NIC(Network Interface Card)経由でインターネット等のコンピュータ通信網に接続され、他の情報処理装置と通信することができる。情報処理装置において、端末装置111用のプログラムを実行すれば端末装置111として機能し、認証装置121用のプログラムを実行すれば認証装置121として機能することとなる。
【0035】
図2は、端末装置111の概要構成を示す模式図である。以下、本図を参照して説明する。
【0036】
まず、端末装置111のそれぞれは、秘密鍵選択部201、公開鍵生成部202、公開鍵公開部203を備える。
【0037】
また、匿名グループ認証を求めるt台の端末装置111(U[1],U[2],…,U[t])は、端末群131を構成する。ここで、端末群131(U[1],U[2],…,U[t])は、端末装置111の全体U[1],U[2],…,U[m]に含まれるサブグループであり、その添字については、上記のように設定しても一般性を失わない。
【0038】
さて、当該端末群131は、元選択部204、種計算部205、種送信部206、チャレンジ受信部207、中間計算部208、応答計算部209、応答送信部210を備える。
【0039】
まず、認証を行うための準備として、各端末装置111は、鍵処理を行う。図3は、鍵処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【0040】
U[1],U[2],…,U[m]の端末装置111のうち、i番目の端末装置111(U[i])において、秘密鍵選択部201が、当該乗法群Zp*からt個の元
w[1,i],w[2,i],…,w[t,i]
を秘密鍵(W[i])として選択する(ステップS301)。秘密鍵の選択は、他の端末装置111とは独立に秘匿して、また、一様にランダムに行うのが望ましい。
【0041】
ついで、公開鍵生成部202が、選択された秘密鍵から
y[1,i] = gw[1,i]
y[2,i] = gw[2,i]
…,
y[t,i] = gw[t,i]
を公開鍵(Y[i])として生成する(ステップS302)。
【0042】
さらに、公開鍵公開部203が、m台の端末装置111、および、認証装置121に、生成された公開鍵
Y[i] = y[1,i],y[2,i],…,y[t,i]
を公開して(ステップS303)、本処理を終了する。
【0043】
公開鍵の公開の手法については、種々の手法を採用することができる。たとえば、端末装置111の識別符号(たとえば、ユーザ名、マシン名、IPアドレス、MACアドレス等を利用することができる。)と、公開鍵と、を対応付けて記憶する鍵サーバに公開鍵を登録する。そして、鍵サーバに識別符号を指定した問い合わせをすると、これに対応付けられる公開鍵を指定した回答が得られる、というものである。認証装置121をこの鍵サーバとして利用しても良い。
【0044】
したがって、情報処理装置のCPUは、RAMやNIC等と共働して、秘密鍵選択部201、公開鍵生成部202、公開鍵公開部203として機能する。
【0045】
図4は、認証装置121の概要構成を示す模式図である。以下、本図を参照して説明する。
【0046】
本図に示すように、認証装置121は、種受信部401、チャレンジ選択部402、チャレンジ送信部403、応答受信部404、認証部405を備える。
【0047】
図5は、m台の端末装置111(U[1],U[2],…,U[m])のうち、匿名グループ認証を求めるt台の端末装置111(U[1],U[2],…,U[t])からなる端末群131にて実行される被認証処理の制御の流れを示すフローチャートである。
【0048】
一方、図6は、認証装置121にて実行される認証処理の制御の流れを示すフローチャートである。以下、これらの図を参照して説明する。
【0049】
まず、端末群131側の被認証処理において、元選択部204が、当該有限体Zpからm+1個の元
c[0],c[1],c[2],…,c[m]
を一様にランダムに選択する(ステップS501)。以下、これらの元をまとめてCと表記する。
【0050】
ついで、種計算部205が、選択された元と、公開された公開鍵と、から、種
r[1] = gc[0] Πi=1m y[1,i]c[i]
r[2] = gc[0] Πi=1m y[2,i]c[i]
…,
r[t] = gc[0] Πi=1m y[t,i]c[i]
を計算する(ステップS502)。以下、これらの種をまとめてRと表記する。
【0051】
さらに、種送信部206が、認証装置121に、計算された種
r[1],r[2],…,r[t]
を送信する(ステップS503)。
【0052】
これらの計算には、端末装置111(U[i])の秘密鍵w[1,i],w[2,i],…,w[t,i]を用いる必要はない。
【0053】
したがって、CPUが、RAMやNIC等と共働して、元選択部204、種計算部205、種送信部206として機能する。
【0054】
すると、認証装置121側の認証処理において、種受信部401が、端末群131から送信された種
r[1],r[2],…,r[t]
を受信する(ステップS504)。
【0055】
次に、チャレンジ選択部402が、当該有限体Zpから一様にランダムに1個の元をチャレンジbとして選択する(ステップS505)。そして、チャレンジ送信部403が、選択されたチャレンジbを、端末群131に送信する(ステップS506)。
【0056】
したがって、CPUは、RAMやNIC等と共働して、種受信部401、チャレンジ選択部402、チャレンジ送信部403として機能する。
【0057】
すると、端末群131側の被認証処理において、チャレンジ受信部207が、認証装置121から送信されるチャレンジbを受信する(ステップS507)。
【0058】
ついで、中間計算部208が、整数k = 1,2,…,tについて
f[k] = c[0] + Σi=1t w[k,i]c[i] (mod p)
を計算し、さらに、
f[t+1] = b - (c[t+1] + c[t+2] + … + c[m]) (mod p)
を計算する(ステップS508)。これらをまとめて中間値Fと呼ぶ。
【0059】
応答計算部209が、端末群131に含まれる端末装置111(U[1],U[2],…,U[t])のそれぞれの秘密鍵
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,t],w[2,t],…,w[t,t]
により、当該有限体Zpの上で、[数3]を満たす応答
d[0],d[1],d[2],…,d[t],d[t+1],d[t+2],…,d[m]
を計算する(ステップS509)。これらをまとめて応答Dと呼ぶ。
【0060】
ここで、[数3]における行列方程式は、有限体Zpにおける加減乗除を用いたものであり、行列方程式を解くにあたっては、当該有限体Zp上での掃き出し法により、
d[0],d[1],d[2],…,d[t]
を求めるのが典型的である。
【0061】
また、この計算においては、端末装置111(U[1],U[2],…,U[t])のそれぞれの秘密鍵
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,t],w[2,t],…,w[t,t]
を参照する必要があるため、端末群131の中の代表となる端末装置111に、それぞれの端末装置111の秘密鍵を通知する等の処理を行うこととなる。この情報のやり取りの態様については後述する。
【0062】
ついで、応答送信部210が、計算された応答
d[0],d[1],…,d[m]
を、認証装置121に送信する(ステップS510)。
【0063】
したがって、CPUはRAM、NIC等と共働して、チャレンジ受信部207、中間計算部208、応答計算部209、応答送信部210として機能する。
【0064】
さて、認証装置121側の認証処理では、応答受信部404が、端末群131から送信される応答
d[0],d[1],…,d[m]
を受信する(ステップS511)。
【0065】
認証工程では、認証部405が、以下の認証条件が満たされるか否かを判定する(ステップS512)。
【0066】
すなわち、認証条件とは、「受信された応答
d[0],d[1],…,d[m]
と、公開された公開鍵
y[1,1],y[2,1],…,y[t,1],
y[1,2],y[2,2],…,y[t,2],
…,
y[1,m],y[2,m],…,y[t,m]
と、により、
b = Σi=1m d[i] (mod p)
が成立し、かつ、整数j = 1,2,…,tのすべてについて、
r[j] = gd[0] Πi=1m y[j,i]d[i]
成立する」をいう。
【0067】
認証条件が成立すれば(ステップS512;Yes)、当該端末群131に対する認証を成功させ(ステップS513)、いずれかもしくはすべてについて成立しなければ(ステップS512;No)、当該端末群131に対する認証を失敗させて(ステップS514)、本処理を終了する。
【0068】
ここで、使用する公開鍵は、認証を求める端末群131に含まれるt台の端末装置111のみならず、m台の端末装置111のものを平等に使用している。
【0069】
したがって、認証が成功したとしても、m個の公開鍵からいずれか1つの公開鍵が選ばれたときに、「当該選ばれた公開鍵を持つ端末装置111は、端末群131をなすt台の端末装置111のいずれかである」のか、それとも、「当該選ばれた公開鍵を持つ端末装置111は、端末群131をなすt台の端末装置111のいずれでもない」のかは、認証装置121側にはわからない。
【0070】
一方、端末群131側では、t台の端末装置111の秘密鍵をまとめて計算処理する必要があるため、この計算処理を行う機器(典型的には代表となっている端末装置111である。)に秘密鍵が知得されてしまう。
【0071】
したがって、公開鍵と秘密鍵のペアは、t台の端末群131の認証がされるごとに、m台の端末装置111全体で一斉に新規に生成し直すことが望ましい。
【0072】
図7は、本実施形態において情報がやりとりされる様子を示す模式図である。以下、本図を参照して説明する。
【0073】
m台の端末装置111のそれぞれ(U[i])には、秘密鍵(W[i] = (w[1,i],w[2,i],…,w[t,i]))と公開鍵(Y[i] = (y[1,i],y[2,i],…,y[t,i]))の対が割り当てられている。
【0074】
t台の端末装置111からなる端末群131の代表701は、一様にランダムに選択した元(C = (c[0],c[1],…,c[m]))と公開鍵全体(Y[1],Y[2],…,Y[m])を参照して種R = (r[1],r[2],…,r[t])を生成し、認証装置121に送信する。
【0075】
認証装置121は、一様にランダムに選択したチャレンジ(b)を端末群131に送信する。
【0076】
端末群131では、端末群131に含まれる端末装置111の秘密鍵(W[1],W[2],…,W[t])を参照して(共有し、もしくは、代表701となる端末に集中させるのが典型的である。)、応答(D = (d[0],d[1],…,d[m]))を求め、これを認証装置121に送信する。
【0077】
認証装置121では、チャレンジ(b)と、受信した応答(D = (d[0],d[1],…,d[m]))と、公開鍵全体(Y[1],Y[2],…,Y[m])と、を参照して、認証が成功するか否かを判定する。
【実施例2】
【0078】
上記実施形態では、端末装置111それぞれが秘密鍵を選択することとしていたが、本実施形態においては、鍵提供装置により、秘密鍵を生成する手法を採用する。
【0079】
図8は、鍵提供装置を含むシステムの一部の構成を示す模式図である。以下、本図を参照して説明する。
【0080】
すなわち、鍵提供装置801は、秘密鍵取得部802、秘密鍵送信部803を有し、対応する処理を実行するため、各端末装置111は、秘密鍵受信部804をさらに有する。
【0081】
すなわち、鍵提供装置801では、秘密鍵取得部802が、当該乗法群Zp*からt×m個の元
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,m],w[2,m],…,w[t,m]
を一様にランダムに取得する。
【0082】
上記実施形態では、i番目の端末装置111が秘密鍵(W[i] = (w[1,i],w[2,i],…,w[t,i]))を個別に生成していたが、本実施形態では、秘密鍵取得部802が、まとめて秘密鍵(W[1],W[2],…,W[m])を生成することになる。
【0083】
そして、秘密鍵送信部803が、整数i = 1,2,…,mのそれぞれについて、m台の端末装置111のうち端末装置111(U[i])に、取得された
W[i] = (w[1,i],w[2,i],…,w[t,i])
を個別鍵として送信する。
【0084】
一方、m台の端末装置111のうちi番目の端末装置111(U[i])において、秘密鍵受信部804が、鍵提供装置801から送信された個別鍵
W[i] = (w[1,i],w[2,i],…,w[t,i])
を受信する。
【0085】
そして、秘密鍵選択部201は、受信された個別鍵
W[i] = (w[1,i],w[2,i],…,w[t,i])
を当該秘密鍵として選択する。
【産業上の利用可能性】
【0086】
本発明によれば、あるグループ内のサブグループにおいて、通信の複雑さを抑制して効率良く認証を行うための認証システム、認証方法、ならびに、これらをコンピュータ上にて実現するためのプログラムを提供することができる。
【図面の簡単な説明】
【0087】
【図1】本実施形態に係る認証システムの概要構成を示す説明図である。
【図2】本実施形態に係る端末装置の概要構成を示す模式図である。
【図3】本実施形態に係る端末装置にて実行される鍵処理の制御の流れを示すフローチャートである。
【図4】本実施形態に係る認証装置の概要構成を示す模式図である。
【図5】匿名グループ認証を求めるt台の端末装置からなる端末群にて実行される被認証処理の制御の流れを示すフローチャートである。
【図6】認証装置にて実行される認証処理の制御の流れを示すフローチャートである。
【図7】本実施形態において情報がやりとりされる様子を示す模式図である。
【図8】鍵提供装置を含むシステムの一部の構成を示す模式図である。
【符号の説明】
【0088】
101 認証システム
111 端末装置
121 認証装置
131 端末群
201 秘密鍵選択部
202 公開鍵生成部
203 公開鍵公開部
204 元選択部
205 種計算部
206 種送信部
207 チャレンジ受信部
208 中間計算部
209 応答計算部
210 応答送信部
401 種受信部
402 チャレンジ選択部
403 チャレンジ送信部
404 応答受信部
405 認証部
701 代表
801 鍵提供装置
802 秘密鍵取得部
803 秘密鍵送信部
804 秘密鍵受信部

【特許請求の範囲】
【請求項1】
素数pを位数とする巡回群Gと、Gの生成元gと、pを法とする有限体Zpと、当該有限体Zpに対する乗法群Zp*と、ユーザ総数mと、匿名グループ認証を求める端末群に含まれる端末装置数tと、に対する認証システムであって、認証装置と、m台の端末装置U[1],U[2],…,U[m]と、を有し、
(a) 整数i = 1,2,…,mのそれぞれについて、前記m台の端末装置のうち端末装置U[i]は、
当該乗法群Zp*からt個の元
w[1,i],w[2,i],…,w[t,i]
を一様にランダムに秘密鍵として選択する秘密鍵選択部、
前記選択された秘密鍵から公開鍵
y[1,i] = gw[1,i]
y[2,i] = gw[2,i]
…,
y[t,i] = gw[t,i]
を生成する公開鍵生成部、
前記m台の端末装置、および、前記認証装置に、前記生成された公開鍵
y[1,i],y[2,i],…,y[t,i]
を公開する公開鍵公開部を備え、
(b)前記m台の端末装置のうち、匿名グループ認証を求めるt台の端末装置U[1],U[2],…,U[t]からなる端末群は、
有限体Zpからm+1個の元
c[0],c[1],c[2],…,c[m]
を一様にランダムに選択する元選択部、
前記選択された元と、前記公開された公開鍵と、から、種
r[1] = gc[0] Πi=1m y[1,i]c[i]
r[2] = gc[0] Πi=1m y[2,i]c[i]
…,
r[t] = gc[0] Πi=1m y[t,i]c[i]
を計算する種計算部、
前記認証装置に、前記計算された種
r[1],r[2],…,r[t]
を送信する種送信部を備え、
(c)前記認証装置は、
前記端末群から送信された種
r[1],r[2],…,r[t]
を受信する種受信部、
有限体Zpから一様にランダムに1個の元をチャレンジbとして選択するチャレンジ選択部、
前記選択されたチャレンジbを、前記端末群に送信するチャレンジ送信部を備え、
(d)前記端末群は、
前記認証装置から送信されるチャレンジbを受信するチャレンジ受信部、
整数k = 1,2,…,tについて
f[k] = c[0] + Σi=1t w[k,i]c[i] (mod p)
および
f[t+1] = b - (c[t+1] + c[t+2] + … + c[m]) (mod p)
を計算する中間計算部、
前記端末群に含まれる端末装置U[1],U[2],…,U[t]のそれぞれの秘密鍵
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,t],w[2,t],…,w[t,t]
により、当該有限体Zpの上で、
【数1】

を満たす応答
d[0],d[1],d[2],…,d[t],d[t+1],d[t+2],…,d[m]
を計算する応答計算部、
前記計算された応答
d[0],d[1],…,d[m]
を、前記認証装置に送信する応答送信部を備え、
(e)前記認証装置は、
前記端末群から送信される応答
d[0],d[1],…,d[m]
を受信する応答受信部、
前記受信された応答
d[0],d[1],…,d[m]
と、前記公開された公開鍵
y[1,1],y[2,1],…,y[t,1],
y[1,2],y[2,2],…,y[t,2],
…,
y[1,m],y[2,m],…,y[t,m]
と、により、
b = Σi=1m d[i] (mod p)
が成立し、かつ、整数j = 1,2,…,tのそれぞれについて、
r[j] = gd[0] Πi=1m y[j,i]d[i]
が成立する場合、当該端末群に対する認証を成功させる認証部を備える
ことを特徴とする認証システム。
【請求項2】
請求項1に記載の認証システムであって、さらに鍵提供装置を備え、
(f)前記鍵提供装置は、
乗法群Zp*からt×m個の元
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,m],w[2,m],…,w[t,m]
を一様にランダムに取得する秘密鍵取得部、
整数i = 1,2,…,mのそれぞれについて、前記m台の端末装置のうち端末装置U[i]に、前記取得された
w[1,i],w[2,i],…,w[t,i]
を個別鍵として送信する秘密鍵送信部を備え、
(g)整数i = 1,2,…,mのそれぞれについて、前記m台の端末装置のうち端末装置U[i]は、
前記鍵提供装置から送信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を受信する秘密鍵受信部をさらに備え、
前記秘密鍵選択部は、前記受信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を当該秘密鍵として選択する
ことを特徴とする認証システム。
【請求項3】
請求項1または2に記載の認証システムであって、
前記端末群に含まれるいずれか1台の端末装置へ、前記端末群に含まれる他の端末装置は、それぞれの秘密鍵を通知し、
前記端末群に含まれる当該1台の端末装置は、前記元選択部、前記種計算部、前記種送信部、前記中間計算部、前記応答計算部、前記応答送信部を備える
ことを特徴とする認証システム。
【請求項4】
請求項1から3のいずれか1項に記載の認証システムであって、
前記応答計算部は、当該有限体Zp上での掃き出し法により、
d[0],d[1],d[2],…,d[t]
を求める
ことを特徴とする認証システム。
【請求項5】
素数pを位数とする巡回群Gと、Gの生成元gと、pを法とする有限体Zpと、当該有限体Zpに対する乗法群Zp*と、ユーザ総数mと、匿名グループ認証を求める端末群に含まれる端末装置数tと、に対する認証方法であって、認証装置と、m台の端末装置U[1],U[2],…,U[m]と、において実行され、前記認証装置は、種受信部、チャレンジ選択部、チャレンジ送信部、応答受信部、認証部を備え、前記m台の端末装置U[1],U[2],…,U[m]のそれぞれは、秘密鍵選択部、公開鍵生成部、公開鍵公開部を備え、前記m台の端末装置のうち、匿名グループ認証を求めるt台の端末装置U[1],U[2],…,U[t]からなる端末群は、元選択部、種計算部、種送信部、チャレンジ受信部、中間計算部、応答計算部、応答送信部を備え、
(a) 整数i = 1,2,…,mのそれぞれについて、前記m台の端末装置のうち端末装置U[i]において、
前記秘密鍵選択部が、当該乗法群Zp*からt個の元
w[1,i],w[2,i],…,w[t,i]
を一様にランダムに秘密鍵として選択する秘密鍵選択工程、
前記公開鍵生成部が、前記選択された秘密鍵から公開鍵
y[1,i] = gw[1,i]
y[2,i] = gw[2,i]
…,
y[t,i] = gw[t,i]
を生成する公開鍵生成工程、
前記公開鍵公開部が、前記m台の端末装置、および、前記認証装置に、前記生成された公開鍵
y[1,i],y[2,i],…,y[t,i]
を公開する公開鍵公開工程を備え、
(b)前記m台の端末装置のうち、匿名グループ認証を求めるt台の端末装置U[1],U[2],…,U[t]からなる端末群において、
前記元選択部が、当該有限体Zpからm+1個の元
c[0],c[1],c[2],…,c[m]
を一様にランダムに選択する元選択工程、
前記種計算部が、前記選択された元と、前記公開された公開鍵と、から、種
r[1] = gc[0] Πi=1m y[1,i]c[i]
r[2] = gc[0] Πi=1m y[2,i]c[i]
…,
r[t] = gc[0] Πi=1m y[t,i]c[i]
を計算する種計算工程、
前記種送信部が、前記認証装置に、前記計算された種
r[1],r[2],…,r[t]
を送信する種送信工程を備え、
(c)前記認証装置において、
前記種受信部が、前記端末群から送信された種
r[1],r[2],…,r[t]
を受信する種受信工程、
前記チャレンジ選択部が、当該有限体Zpから一様にランダムに1個の元をチャレンジbとして選択するチャレンジ選択工程、
前記チャレンジ送信部が、前記選択されたチャレンジbを、前記端末群に送信するチャレンジ送信工程を備え、
(d)前記端末群において、
前記チャレンジ受信部が、前記認証装置から送信されるチャレンジbを受信するチャレンジ受信工程、
前記中間計算部が、整数k = 1,2,…,tについて
f[k] = c[0] + Σi=1t w[k,i]c[i] (mod p)
および
f[t+1] = b - (c[t+1] + c[t+2] + … + c[m]) (mod p)
を計算する中間計算工程、
前記応答計算部が、前記端末群に含まれる端末装置U[1],U[2],…,U[t]のそれぞれの秘密鍵
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,t],w[2,t],…,w[t,t]
により、当該有限体Zpの上で、
【数2】

を満たす応答
d[0],d[1],d[2],…,d[t],d[t+1],d[t+2],…,d[m]
を計算する応答計算工程、
前記応答送信部が、前記計算された応答
d[0],d[1],…,d[m]
を、前記認証装置に送信する応答送信工程を備え、
(e)前記認証装置において、
応答受信部が、前記端末群から送信される応答
d[0],d[1],…,d[m]
を受信する応答受信工程、
前記認証部が、前記受信された応答
d[0],d[1],…,d[m]
と、前記公開された公開鍵
y[1,1],y[2,1],…,y[t,1],
y[1,2],y[2,2],…,y[t,2],
…,
y[1,m],y[2,m],…,y[t,m]
と、により、
b = Σi=1m d[i] (mod p)
が成立し、かつ、整数j = 1,2,…,tのそれぞれについて、
r[j] = gd[0] Πi=1m y[j,i]d[i]
が成立する場合、当該端末群に対する認証を成功させる認証工程を備える
ことを特徴とする認証方法。
【請求項6】
請求項5に記載の認証方法であって、さらに鍵提供装置において実行され、前記鍵提供装置は、秘密鍵取得部、秘密鍵送信部を備え、前記m台の端末装置のそれぞれは、秘密鍵受信部をさらに備え、
(f)前記鍵提供装置において、
前記秘密鍵取得部が、当該乗法群Zp*からt×m個の元
w[1,1],w[2,1],…,w[t,1],
w[1,2],w[2,2],…,w[t,2],
…,
w[1,m],w[2,m],…,w[t,m]
を一様にランダムに取得する秘密鍵取得工程、
前記秘密鍵送信部が、整数i = 1,2,…,mのそれぞれについて、前記m台の端末装置のうち端末装置U[i]に、前記取得された
w[1,i],w[2,i],…,w[t,i]
を個別鍵として送信する秘密鍵送信工程を備え、
(g)整数i = 1,2,…,mのそれぞれについて、前記m台の端末装置のうち端末装置U[i]において、
前記秘密鍵受信部が、前記鍵提供装置から送信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を受信する秘密鍵受信工程をさらに備え、
前記秘密鍵選択工程では、前記受信された個別鍵
w[1,i],w[2,i],…,w[t,i]
を当該秘密鍵として選択する
ことを特徴とする認証方法。
【請求項7】
請求項5または6に記載の認証方法であって、
前記端末群に含まれるいずれか1台の端末装置へ、前記端末群に含まれる他の端末装置は、それぞれの秘密鍵を通知し、
前記端末群に含まれる当該1台の端末装置において、前記元選択工程、前記種計算工程、前記種送信工程、前記中間計算工程、前記応答計算工程、前記応答送信工程が実行される
ことを特徴とする認証方法。
【請求項8】
請求項5から7のいずれか1項に記載の認証方法であって、
前記応答計算工程では、当該有限体Zp上での掃き出し法により、
d[0],d[1],d[2],…,d[t]
を求める
ことを特徴とする認証方法。
【請求項9】
(m+1)台のコンピュータのうち、第1から第mまでのコンピュータのそれぞれを、請求項1に記載の認証システムのm台の端末装置のいずれかとして機能させ、第1から第tまでのコンピュータ群を、当該認証システムの端末群として機能させ、第(m+1)のコンピュータを、当該認証システムの認証装置として機能させる
ことを特徴とするプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate


【公開番号】特開2009−27513(P2009−27513A)
【公開日】平成21年2月5日(2009.2.5)
【国際特許分類】
【出願番号】特願2007−189433(P2007−189433)
【出願日】平成19年7月20日(2007.7.20)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 社団法人電子情報通信学会、2007年 暗号と情報セキュリティシンポジウム、平成19年1月23日発行
【出願人】(301022471)独立行政法人情報通信研究機構 (1,071)
【Fターム(参考)】