(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6228903
(24)【登録日】2017年10月20日
(45)【発行日】2017年11月8日
(54)【発明の名称】情報共有システム及び方法、情報共有装置並びにプログラム
(51)【国際特許分類】
H04L 9/08 20060101AFI20171030BHJP
H04L 9/32 20060101ALI20171030BHJP
【FI】
H04L9/00 601C
H04L9/00 601D
H04L9/00 675B
【請求項の数】8
【全頁数】22
(21)【出願番号】特願2014-207211(P2014-207211)
(22)【出願日】2014年10月8日
(65)【公開番号】特開2016-76877(P2016-76877A)
(43)【公開日】2016年5月12日
【審査請求日】2017年1月5日
(73)【特許権者】
【識別番号】000004226
【氏名又は名称】日本電信電話株式会社
(74)【代理人】
【識別番号】100121706
【弁理士】
【氏名又は名称】中尾 直樹
(74)【代理人】
【識別番号】100128705
【弁理士】
【氏名又は名称】中村 幸雄
(74)【代理人】
【識別番号】100147773
【弁理士】
【氏名又は名称】義村 宗洋
(72)【発明者】
【氏名】米山 一樹
(72)【発明者】
【氏名】鈴木 幸太郎
【審査官】
行田 悦資
(56)【参考文献】
【文献】
特開2013−110628(JP,A)
【文献】
特開2008−103975(JP,A)
【文献】
BELLARE, M. et al.,Security Proofs for Identity-Based Identification and Signature Schemes,EUROCRYPT 2004,IACR,2004年 5月 2日,p.268-286,[online],[平成29年9月29日検索],インターネット<URL:https://www.iacr.org/archive/eurocrypt2004/eurocrypt2004.html>
【文献】
FIORE, D. and GENNARO, R.,Making the Diffie-Hellman Protocol Identity-Based,ePrint Archive,2009年 4月20日,p.1-25,[online],[平成29年9月29日検索],インターネット<URL:https://eprint.iacr.org/2009/174>
(58)【調査した分野】(Int.Cl.,DB名)
H04L 9/08
H04L 9/32
(57)【特許請求の範囲】
【請求項1】
第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有システムにおいて、
所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessagepostとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPPPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSKAPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPKAPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSKBPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPKBPKIとし、
所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、
上記第一情報共有装置を表すビット列をUAとし、上記第一情報共有装置に関連する情報を表すビット列をIDAとし、上記第一情報共有装置の署名をcertA=Sign(sk,(IDA,SPKAPKI))とし、上記第二情報共有装置を表すビット列をUBとし、上記第二情報共有装置に関連する情報を表すビット列をIDBとし、上記第二情報共有装置の署名をcertB=Sign(sk,(IDB,SPKBPKI))とし、
上記第一情報共有装置は、アドホック秘密鍵ESKAPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成部と、初期メッセージMes1PKI=Messagepost(PPPKI,UA,SSKAPKI,ESKAPKI)を生成しSPKAPKI,certAと共に上記第二情報共有装置に送信する初期メッセージ生成部と、Ver(vk,(IDB,SPKBPKI),certB)に基づいて(IDB,SPKBPKI),certBの検証を行う検証部と、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMesiPKI=Message(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成部と、情報KPKI=SesKey(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,MesnPKI)を生成する情報生成部と、を含み、
上記第二情報共有装置は、アドホック秘密鍵ESKBPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成部と、Ver(vk,(IDA,SPKAPKI),certA)に基づいて(IDA,SPKAPKI),certAの検証を行う検証部と、初期メッセージMes2PKI=Message(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKBPKI,Mes1PKI)を生成しSPKBPKI,certBと共に上記第一情報共有装置に送信する初期メッセージ生成部と、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMesiPKI=Message(PPPKI, UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成部と、情報KPKI=SesKey(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,MesnPKI)を生成する情報生成部と、を含む、
情報共有システム。
【請求項2】
請求項1の情報共有システムにおいて、
上記第二情報共有装置の初期メッセージ生成部は、初期メッセージMes2PKI=Messagepost(PPPKI,UB,SSKBPKI,ESKBPKI)を生成し上記第一情報共有装置に送信する、
情報共有システム。
【請求項3】
第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有システムにおいて、
所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessagepostとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPPPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSKAPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPKAPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSKBPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPKBPKIとし、
所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、
上記第一情報共有装置を表すビット列をUAとし、上記第一情報共有装置に関連する情報を表すビット列をIDAとし、上記第一情報共有装置の署名をcertA=Sign(sk,(IDA,SPKAPKI))とし、上記第二情報共有装置を表すビット列をUBとし、上記第二情報共有装置に関連する情報を表すビット列をIDBとし、上記第二情報共有装置の署名をcertB=Sign(sk,(IDB,SPKBPKI))とし、
上記第一情報共有装置は、アドホック秘密鍵ESKAPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成部と、(SPKAPKI,certA)を上記第二情報共有装置に送信する送信部と、Ver(vk,(IDB,SPKBPKI),certB)に基づいて(IDB,SPKBPKI),certBの検証を行う検証部と、初期メッセージMes2PKI=Message(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI)を生成し上記第二情報共有装置に送信する初期メッセージ生成部と、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMesiPKI=Message(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成部と、情報KPKI=SesKey(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,MesnPKI)を生成する情報生成部と、を含み、
上記第二情報共有装置は、アドホック秘密鍵ESKBPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成部と、Ver(vk,(IDA,SPKAPKI),certA)に基づいて(IDA,SPKAPKI),certAの検証を行う検証部と、初期メッセージMes1PKI=Messagepre(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKAPKI)を生成しSPKBPKI,certBと共に上記第一情報共有装置に送信する初期メッセージ生成部と、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMesiPKI=Message(PPPKI, UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成部と、情報KPKI=SesKey(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,MesnPKI)を生成する情報生成部と、を含む、
情報共有システム。
【請求項4】
請求項3の情報共有システムにおいて、
上記第一情報共有装置の初期メッセージ生成部は、初期メッセージMes2PKI=Messagepre(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI)を生成し上記第二情報共有装置に送信する、
情報共有システム。
【請求項5】
第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有方法において、
所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessagepostとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPPPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSKAPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPKAPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSKBPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPKBPKIとし、
所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、
上記第一情報共有装置を表すビット列をUAとし、上記第一情報共有装置に関連する情報を表すビット列をIDAとし、上記第一情報共有装置の署名をcertA=Sign(sk,(IDA,SPKAPKI))とし、上記第二情報共有装置を表すビット列をUBとし、上記第二情報共有装置に関連する情報を表すビット列をIDBとし、上記第二情報共有装置の署名をcertB=Sign(sk,(IDB,SPKBPKI))とし、
上記第一情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESKAPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成ステップと、
上記第一情報共有装置の初期メッセージ生成部が、初期メッセージMes1PKI=Messagepost(PPPKI,UA,SSKAPKI,ESKAPKI)を生成しSPKAPKI,certAと共に上記第二情報共有装置に送信する初期メッセージ生成ステップと、
上記第二情報共有装置の検証部が、Ver(vk,(IDA,SPKAPKI),certA)に基づいて(IDA,SPKAPKI),certAの検証を行う検証ステップと、
上記第二情報共有装置の初期メッセージ生成部が、初期メッセージMes2PKI=Message(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKBPKI,Mes1PKI)を生成しSPKBPKI,certBと共に上記第一情報共有装置に送信する初期メッセージ生成ステップと、
上記第一情報共有装置の検証部が、Ver(vk,(IDB,SPKBPKI),certB)に基づいて(IDB,SPKBPKI),certBの検証を行う検証ステップと、
上記第一情報共有装置のメッセージ生成部が、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMesiPKI=Message(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成ステップと、
上記第一情報共有装置の情報生成部が、情報KPKI=SesKey(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,MesnPKI)を生成する情報生成ステップと、
上記第二情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESKBPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成ステップと、
上記第二情報共有装置のメッセージ生成部が、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMesiPKI=Message(PPPKI, UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成ステップと、
上記第二情報共有装置の情報生成部が、情報KPKI=SesKey(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,MesnPKI)を生成する情報生成ステップと、
を含む情報共有方法。
【請求項6】
第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有方法において、
所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessagepostとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPPPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSKAPKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPKAPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSKBPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPKBPKIとし、
所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、
上記第一情報共有装置を表すビット列をUAとし、上記第一情報共有装置に関連する情報を表すビット列をIDAとし、上記第一情報共有装置の署名をcertA=Sign(sk,(IDA,SPKAPKI))とし、上記第二情報共有装置を表すビット列をUBとし、上記第二情報共有装置に関連する情報を表すビット列をIDBとし、上記第二情報共有装置の署名をcertB=Sign(sk,(IDB,SPKBPKI))とし、
上記第一情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESKAPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成ステップと、
上記第一情報共有装置の送信部が、(SPKAPKI,certA)を上記第二情報共有装置に送信する送信ステップと、
上記第二情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESKBPKI=EpheGen(PPPKI)を生成するアドホック秘密鍵生成ステップと、
上記第二情報共有装置の検証部が、Ver(vk,(IDA,SPKAPKI),certA)に基づいて(IDA,SPKAPKI),certAの検証を行う検証ステップと、
上記第二情報共有装置の初期メッセージ生成部が、初期メッセージMes1PKI=Messagepre(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKAPKI)を生成しSPKBPKI,certBと共に上記第一情報共有装置に送信する初期メッセージ生成ステップと、
上記第一情報共有装置の検証部が、Ver(vk,(IDB,SPKBPKI),certB)に基づいて(IDB,SPKBPKI),certBの検証を行う検証ステップと、
上記第一情報共有装置の初期メッセージ生成部が、初期メッセージMes2PKI=Message(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI)を生成し上記第二情報共有装置に送信する初期メッセージ生成ステップと、
上記第二情報共有装置のメッセージ生成部が、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMesiPKI=Message(PPPKI, UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成ステップと、
上記第一情報共有装置のメッセージ生成部が、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMesiPKI=Message(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,Mesi-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成ステップと、
上記第一情報共有装置の情報生成部が、情報KPKI=SesKey(PPPKI,UA,UB,SSKAPKI,ESKAPKI,SPKBPKI,Mes1PKI,…,MesnPKI)を生成する情報生成ステップと、
上記第二情報共有装置の情報生成部が、情報KPKI=SesKey(PPPKI,UB,UA,SSKBPKI,ESKBPKI,SPKAPKI,Mes1PKI,…,MesnPKI)を生成する情報生成ステップと、
を含む情報共有方法。
【請求項7】
請求項1又は3の情報共有システムの上記第一情報共有装置又は上記第二情報共有装置である情報共有装置。
【請求項8】
請求項7の情報共有装置の各部としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報セキュリティ技術の応用技術に関するものであり、特に二者間でセッション鍵等の情報を共有する技術に関する。
【背景技術】
【0002】
以下に示す、ID 認証鍵交換方式のFG方式が知られている(例えば、非特許文献1参照。)。
図6にFG 方式のプロトコル図を示す。
【0003】
[公開パラメータ] ΠをプロトコルIDとし、プロトコル仕様に対応した固有のIDとする。セキュリティパラメータをκとする。pをκビット素数とし、Gをgを生成元とする位数pの乗法巡回群とする。H
1:{0,1}→ Z
pとH
2:{0,1}→{0,1}をハッシュ関数とする。
【0004】
[鍵生成] 鍵生成アルゴリズムは一様ランダムにマスタ秘密鍵MSK
ID:=x∈Z
pを選ぶ。また、鍵生成アルゴリズムはy=g
xを計算し、マスタ公開鍵MPK
ID:=(G,g,p,y=g
x,H
1,H
2)を公開する。
【0005】
[鍵抽出] ID
Pを入力として、鍵抽出アルゴリズムはk
P∈
RZ
pを選び、長期秘密鍵SSK
PID:=(r
P= g
kP,s
P=k
P+xH
1(ID
P,r
P))を生成する。
【0006】
[鍵交換] 以下では、ユーザU
Aを鍵交換セッションのイニシエータとし、ユーザU
Bをレスポンダとする。ユーザU
AはID
Aに対応する長期秘密鍵(r
A=g
kA,s
A=k
A+xH
1(ID
A,r
A))を持ち、ユーザU
BはID
Bに対応する長期秘密鍵(r
B=g
kB,s
B=k
B+xH
1(ID
B,r
B))を持つ。
【0007】
1. ユーザU
Aは一様ランダムにアドホック秘密鍵ESK
AID=t
A∈
RZ
pを選ぶ。このとき、ユーザU
Aはu
A:=g
tAを計算し、メッセージMes
1ID=(ID
A,r
A,u
A)をユーザU
Bに送る。
2. ユーザU
Bは一様ランダムにアドホック秘密鍵ESK
BID=t
B∈
RZ
pを選ぶ。このとき、ユーザU
Bはu
B:= g
tBを計算し、メッセージMes
2ID=(ID
A,r
B,u
B)をユーザU
Aに送る。
【0008】
3. ユーザU
Aは共有秘密情報を次のように計算する。
【0009】
z
1=(u
Br
By^(H
1(ID
B,r
B)))
tA+sA, z
2=u
BtA
と計算し、セッション鍵K
ID=H
2(z
1,z
2)を得る。ユーザU
Aはセッション鍵K
IDを出力し、セッションを終了する。
【0010】
ユーザUB は共有秘密情報を次のように計算する。
【0011】
z
1=(u
Ar
Ay^(H
1(ID
A,r
A)))
tB+sB; z
2=u
AtB
と計算し、セッション鍵K
ID=H
2(z
1,z
2)を得る。ユーザU
Bはセッション鍵K
IDを出力し、セッションを終了する。
【先行技術文献】
【非特許文献】
【0012】
【非特許文献1】Dario Fiore, Rosario Gennaro, “Identity-Based Key Exchange Protocols without Pairings”, Transactions on Computational Science 10, P.42-77, 2010
【発明の概要】
【発明が解決しようとする課題】
【0013】
しかしながら、背景技術に記載された技術では安全性を保証するために、ハッシュ関数が理想的に安全(ランダムオラクル)でなければならないという問題がある。ランダムオラクルは現実のハッシュ関数を用いては実現できないことが知られている。よって、ランダムオラクルを仮定せずに安全性証明が付く方式が望ましい。
【0014】
本発明はこのような点に鑑みてなされたものであり、ランダムオラクルに必ずしも依存しない情報共有システム及び方法、情報共有装置並びにプログラムを提供することを目的とする。
【課題を解決するための手段】
【0015】
本発明の一態様による情報共有システムは、第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有システムにおいて、所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessage
postとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPP
PKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSK
APKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPK
APKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSK
BPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPK
BPKIとし、所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、上記第一情報共有装置を表すビット列をU
Aとし、上記第一情報共有装置に関連する情報を表すビット列をID
Aとし、上記第一情報共有装置の署名をcert
A=Sign(sk,(ID
A,SPK
APKI))とし、上記第二情報共有装置を表すビット列をU
Bとし、上記第二情報共有装置に関連する情報を表すビット列をID
Bとし、上記第二情報共有装置の署名をcert
B=Sign(sk,(ID
B,SPK
BPKI))とし、上記第一情報共有装置は、アドホック秘密鍵ESK
APKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成部と、初期メッセージMes
1PKI=Message
post(PP
PKI,U
A,SSK
APKI,ESK
APKI)を生成しSPK
APKI,cert
Aと共に上記第二情報共有装置に送信する初期メッセージ生成部と、Ver(vk,(ID
B,SPK
BPKI),cert
B)に基づいて(ID
B,SPK
BPKI),cert
Bの検証を行う検証部と、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMes
iPKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成部と、情報K
PKI=SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成部と、を含み、上記第二情報共有装置は、アドホック秘密鍵ESK
BPKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成部と、Ver(vk,(ID
A,SPK
APKI),cert
A)に基づいて(ID
A,SPK
APKI),cert
Aの検証を行う検証部と、初期メッセージMes
2PKI=Message(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
BPKI,Mes
1PKI)を生成しSPK
BPKI,cert
Bと共に上記第一情報共有装置に送信する初期メッセージ生成部と、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMes
iPKI=Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成部と、情報K
PKI=SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成部と、を含む。
【0016】
本発明の一態様による情報共有システムは、第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有システムにおいて、所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessage
postとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPP
PKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSK
APKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPK
APKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSK
BPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPK
BPKIとし、所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、上記第一情報共有装置を表すビット列をU
Aとし、上記第一情報共有装置に関連する情報を表すビット列をID
Aとし、上記第一情報共有装置の署名をcert
A=Sign(sk,(ID
A,SPK
APKI))とし、上記第二情報共有装置を表すビット列をU
Bとし、上記第二情報共有装置に関連する情報を表すビット列をID
Bとし、上記第二情報共有装置の署名をcert
B=Sign(sk,(ID
B,SPK
BPKI))とし、上記第一情報共有装置は、アドホック秘密鍵ESK
APKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成部と、(SPK
APKI,cert
A)を上記第二情報共有装置に送信する送信部と、Ver(vk,(ID
B,SPK
BPKI),cert
B)に基づいて(ID
B,SPK
BPKI),cert
Bの検証を行う検証部と、初期メッセージMes
2PKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI)を生成し上記第二情報共有装置に送信する初期メッセージ生成部と、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMes
iPKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成部と、情報K
PKI=SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成部と、を含み、上記第二情報共有装置は、アドホック秘密鍵ESK
BPKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成部と、Ver(vk,(ID
A,SPK
APKI),cert
A)に基づいて(ID
A,SPK
APKI),cert
Aの検証を行う検証部と、初期メッセージMes
1PKI=Message
pre(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI)を生成しSPK
BPKI,cert
Bと共に上記第一情報共有装置に送信する初期メッセージ生成部と、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMes
iPKI=Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成部と、情報K
PKI=SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成部と、を含む。
【0017】
本発明の一態様による情報共有方法は、第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有方法において、所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessage
postとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPP
PKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSK
APKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPK
APKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSK
BPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPK
BPKIとし、所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、上記第一情報共有装置を表すビット列をU
Aとし、上記第一情報共有装置に関連する情報を表すビット列をID
Aとし、上記第一情報共有装置の署名をcert
A=Sign(sk,(ID
A,SPK
APKI))とし、上記第二情報共有装置を表すビット列をU
Bとし、上記第二情報共有装置に関連する情報を表すビット列をID
Bとし、上記第二情報共有装置の署名をcert
B=Sign(sk,(ID
B,SPK
BPKI))とし、上記第一情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESK
APKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成ステップと、上記第一情報共有装置の初期メッセージ生成部が、初期メッセージMes
1PKI=Message
post(PP
PKI,U
A,SSK
APKI,ESK
APKI)を生成しSPK
APKI,cert
Aと共に上記第二情報共有装置に送信する初期メッセージ生成ステップと、上記第二情報共有装置の検証部が、Ver(vk,(ID
A,SPK
APKI),cert
A)に基づいて(ID
A,SPK
APKI),cert
Aの検証を行う検証ステップと、
上記第二情報共有装置の初期メッセージ生成部が、初期メッセージMes
2PKI=Message(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
BPKI,Mes
1PKI)を生成しSPK
BPKI,cert
Bと共に上記第一情報共有装置に送信する初期メッセージ生成ステップと、上記第一情報共有装置の検証部が、Ver(vk,(ID
B,SPK
BPKI),cert
B)に基づいて(ID
B,SPK
BPKI),cert
Bの検証を行う検証ステップと、上記第一情報共有装置のメッセージ生成部が、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMes
iPKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成ステップと、上記第一情報共有装置の情報生成部が、情報K
PKI=SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成ステップと、上記第二情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESK
BPKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成ステップと、上記第二情報共有装置のメッセージ生成部が、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMes
iPKI=Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成ステップと、上記第二情報共有装置の情報生成部が、情報K
PKI=SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成ステップと、を含む。
【0018】
本発明の一態様による情報共有方法は、第一情報共有装置と第二情報共有装置との間で情報を共有する情報共有方法において、所定のPKI 認証鍵交換方式におけるアドホック秘密鍵生成アルゴリズムをEpheGenとし、上記PKI 認証鍵交換方式における初期メッセージ生成アルゴリズムをMessage
postとし、上記PKI 認証鍵交換方式におけるメッセージ生成アルゴリズムをMessageとし、上記PKI 認証鍵交換方式におけるセッション鍵生成アルゴリズムをSesKeyとし、上記PKI 認証鍵交換方式における公開パラメータをPP
PKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期秘密鍵をSSK
APKIとし、上記PKI 認証鍵交換方式における上記第一情報共有装置の長期公開鍵をSPK
APKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期秘密鍵をSSK
BPKIとし、上記PKI 認証鍵交換方式における上記第二情報共有装置の長期公開鍵をSPK
BPKIとし、所定の電子署名方式における署名検証アルゴリズムをVerとし、上記電子署名方式における署名生成アルゴリズムをSignとし、上記第一情報共有装置を表すビット列をU
Aとし、上記第一情報共有装置に関連する情報を表すビット列をID
Aとし、上記第一情報共有装置の署名をcert
A=Sign(sk,(ID
A,SPK
APKI))とし、上記第二情報共有装置を表すビット列をU
Bとし、上記第二情報共有装置に関連する情報を表すビット列をID
Bとし、上記第二情報共有装置の署名をcert
B=Sign(sk,(ID
B,SPK
BPKI))とし、上記第一情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESK
APKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成ステップと、上記第一情報共有装置の送信部が、(SPK
APKI,cert
A)を上記第二情報共有装置に送信する送信ステップと、上記第二情報共有装置のアドホック秘密鍵生成部が、アドホック秘密鍵ESK
BPKI=EpheGen(PP
PKI)を生成するアドホック秘密鍵生成ステップと、上記第二情報共有装置の検証部が、Ver(vk,(ID
A,SPK
APKI),cert
A)に基づいて(ID
A,SPK
APKI),cert
Aの検証を行う検証ステップと、上記第二情報共有装置の初期メッセージ生成部が、初期メッセージMes
1PKI=Message
pre(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI)を生成しSPK
BPKI,cert
Bと共に上記第一情報共有装置に送信する初期メッセージ生成ステップと、上記第一情報共有装置の検証部が、Ver(vk,(ID
B,SPK
BPKI),cert
B)に基づいて(ID
B,SPK
BPKI),cert
Bの検証を行う検証ステップと、上記第一情報共有装置の初期メッセージ生成部が、初期メッセージMes
2PKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI)を生成し上記第二情報共有装置に送信する初期メッセージ生成ステップと、上記第二情報共有装置のメッセージ生成部が、nが3以上の場合には、iを3以上n以下の各奇数として、メッセージMes
iPKI=Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第一情報共有装置に送信するメッセージ生成ステップと、上記第一情報共有装置のメッセージ生成部が、nが4以上の場合には、iを4以上n以下の各偶数として、メッセージMes
iPKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)を生成し上記第二情報共有装置に送信するメッセージ生成ステップと、上記第一情報共有装置の情報生成部が、情報K
PKI=SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成ステップと、上記第二情報共有装置の情報生成部が、情報K
PKI=SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)を生成する情報生成ステップと、を含む。
【0019】
本発明の一態様による情報共有装置は、上記情報共有システムの上記第一情報共有装置及び上記第二情報共有装置である。
【発明の効果】
【0020】
ランダムオラクルに必ずしも依存しない情報共有を実現することができる。
【図面の簡単な説明】
【0021】
【
図2】第一実施形態の第一情報共有装置及び第二情報共有装置の例の機能ブロック図。
【
図4】第二実施形態の第一情報共有装置及び第二情報共有装置の例の機能ブロック図。
【発明を実施するための形態】
【0022】
以下、本発明の各実施形態について説明する。
【0023】
[第一実施形態]
第一実施形態の情報共有システムでは、イニシエータが交換相手を事前に知らなくても最初のメッセージを計算することができる(事後指定可能)PKI 認証鍵交換方式を電子署名方式と組み合わせて情報共有(例えば、ID 認証鍵交換方式による認証鍵の共有)を行うものである。まず、部品であるPKI 認証鍵交換方式と電子署名方式について説明する。これらのPKI 認証鍵交換方式と電子署名方式は、例えばランダムオラクルに依存しないものとする。
【0024】
事後指定可能PKI 認証鍵交換は、以下のアルゴリズムからなる。
【0025】
・PP
PKI←Setup(1
κ):セットアップアルゴリズム
公開パラメータを生成する。κは、セキュリティパラメータであり任意の正の整数である。1
κは、κビットのビット列である。
【0026】
・(SPK
PPKI,SSK
PPKI)←StaticGen(PP
PKI):鍵登録アルゴリズム
長期秘密鍵SSK
PPKI及び対応する長期公開鍵SPK
PPKIを生成し、長期公開鍵SPK
PPKIをPKIに登録し公開する。パーティU
Pとは、情報を共有可能な2以上の情報共有装置の集合のことである。パーティU
Pに属する各情報共有装置が、StaticGenのアルゴリズムに基づいて長期秘密鍵及び長期公開鍵を生成する。
【0027】
・ESK
PPKI←EpheGen(PP
PKI):アドホック秘密鍵生成アルゴリズム
アドホック秘密鍵ESK
PPKIを生成する。
【0028】
・Mes
1PKI←Message
post(PP
PKI,U
A,SSK
APKI,ESK
APKI):初期メッセージ生成アルゴリズム
イニシエータU
Aは、長期秘密鍵SSK
APKIとアドホック秘密鍵ESK
APKIを用いて、初期メッセージMes
1PKIを生成する。第一実施形態の初期メッセージ生成アルゴリズムMessage
postでは、交換相手U
Bの長期公開鍵SPK
BPKIを必要としない。
【0029】
・Mes
iPKI←Message(PP
PKI,U
P,U
P-,SSK
PPKI,ESK
PPKI,SPK
P-PKI,Mes
1PKI,…,Mes
i-1PKI):第iメッセージ生成
SSK
PPKI,ESK
PPKI,SPK
PPKI,Mes
1PKI,…,Mes
i-1PKIを用いて、第iメッセージMes
iPKIを生成する。U
P-は、交換相手のことである。例えば、U
AとU
Bとの間で情報共有を行うときであって、U
P=U
Aの場合にはU
P-=U
Bであって、U
P=U
Bの場合にはU
P-=U
Aである。U
Pは、イニシエータU
Pを表すビット列である。例えば、U
Aはイニシエータである第一情報共有装置U
Aを表すビット列であり、U
Bはレスポンダである第二情報共有装置U
Bを表すビット列である。
【0030】
ただし、レスポンダU
Bが第一メッセージMes
1PKIを受け取る前に第二メッセージを生成可能な場合(同時実行可能)は、第二メッセージMes
2PKIはSSK
BPKI,ESK
BPKIだけを用いて生成することができる。すなわち、Mes
2PKI←Message
post(PP
PKI,U
B,SSK
BPKI,ESK
BPKI)とすることができる。これについては、第一実施形態の変形例で述べる。
【0031】
・K
PKI←SesKey(PP
PKI,U
P,U
P-,SSK
PPKI,ESK
PPKI,SPK
PPKI,Mes
1PKI,…,Mes
nPKI):セッション鍵生成アルゴリズム
SSK
PPKI,ESK
PPKI,SPK
PPKI,Mes
1PKI,…,Mes
iPKIを用いて、セッション鍵K
PKIを生成する。
【0032】
電子署名方式は、以下のアルゴリズムからなる。
【0033】
・(vk,sk)←SigGen(1
κ):鍵生成アルゴリズム
検証鍵vkと署名鍵skを生成する。
【0034】
・σ←Sign(sk,m):署名生成
平文mと署名鍵skを用いて、署名σを生成する。
【0035】
・1 or 0←Ver(vk,m,σ):署名検証
検証鍵vkを用いて、平文mと署名σを検証し、合格なら1、不合格なら0を出力する。
【0036】
図3に、これらのPKI 認証鍵交換方式と電子署名方式を用いた情報共有アルゴリズムの概要を例示する。
【0037】
以下、この情報共有アルゴリズムを実行する情報共有システムについて説明する。情報共有システムは、
図1に例示するように、管理者装置1と、2以上の情報共有装置2とを例えば備えている。
【0038】
管理者装置1は、PP
PKI←Setup(1
κ)の処理を行う(ステップS1)。すなわち、管理者装置1は、セキュリティパラメータκを用いて、PKI 認証鍵交換方式のセットアップアルゴリズムに基づいて公開パラメータPP
PKIを生成する。
【0039】
管理者装置1は、(vk,sk)←SigGen(1
κ)の処理を行う(ステップS2)。すなわち、管理者装置1は、セキュリティパラメータκを用いて、電子署名方式の鍵生成アルゴリズムSigGenに基づいて検証鍵vk及び署名鍵skを生成する。生成された署名鍵skは、マスタ秘密鍵MSK
IDとして管理者装置1内に秘密に保持される。生成された検証鍵vk及び公開パラメータPP
PKIは、マスタ公開鍵MPK
IDとして公開される。
【0040】
各情報共有装置2は、(SPK
PPKI,SSK
PPKI)←StaticGen(PP
PKI)の処理を行う(ステップS3)。すなわち、各情報共有装置2は、公開パラメータPP
PKIを用いて、PKI 認証鍵交換方式の鍵登録アルゴリズムStaticGenに基づいて長期秘密鍵SSK
PPKI及び長期公開鍵SPK
PPKIを生成する。生成された長期秘密鍵SSK
PPKIは、各情報共有装置2内に秘密に保持される。生成された長期公開鍵SPK
PPKIは公開される。
【0041】
各情報共有装置2は、cert
P←Sign(sk,(ID
P,SPK
PPKI))の処理を行う(ステップS31)。すなわち、各情報共有装置2は、sk,(ID
P,SPK
PPKI)を用いて、電子署名方式の署名生成アルゴリズムSignに基づいて署名cert
Pの生成を行う。ID
Pは、各情報共有装置2に関連する情報を表すビット列である。各情報共有装置2に関連する情報とは、例えば、各情報共有装置2のメールアドレスである。
【0042】
ステップS3及びステップS31の処理は、各情報共有装置2ごとに行われる。情報共有装置2の中の情報共有を実際に行う一組の情報共有装置を第一情報共有装置U
A及び第二情報共有装置U
Bとする。この場合、第一情報共有装置U
Aにより、長期秘密鍵SSK
APKI、長期公開鍵SPK
APKI及び署名cert
Aが生成され、長期秘密鍵SSK
AID=(SSK
APKI,SPK
APKI,cert
A)が第二情報共有装置U
B内に秘密に保持される。また、第二情報共有装置U
Bにより、長期秘密鍵SSK
BPKI、長期公開鍵SPK
BPKI及び署名cert
Bが生成され、長期秘密鍵SSK
BID=(SSK
BPKI,SPK
BPKI,cert
B)が第二情報共有装置U
B内に秘密に保持される。
【0043】
以上のステップS1からステップS31の処理は、以下に述べる情報共有の処理の前準備として事前に行われる。
【0044】
以下、2以上の情報共有装置2の中の第一情報共有装置U
Aと第二情報共有装置U
Bとの間で情報共有が行われる場合を例に挙げて説明する。第一情報共有装置U
Aと第二情報共有装置U
Bとは、情報共有装置2の中の任意の一組の情報共有装置である。第一情報共有装置U
Aがイニシエータとし、第二情報共有装置U
Bがレスポンダとして説明する。
【0045】
第一情報共有装置U
Aは、
図2に例示するように、アドホック鍵生成部U
A1、初期メッセージ生成部U
A2、検証部U
A3、メッセージ生成部U
A4及び情報生成部U
A5を備えている。第二情報共有装置U
Bは、
図2に例示するように、アドホック鍵生成部U
B1、初期メッセージ生成部U
B2、検証部U
B3、メッセージ生成部U
B4及び情報生成部U
B5を備えている。
【0046】
第一情報共有装置U
Aのアドホック鍵生成部U
A1は、ESK
APKI←EpheGen(PP
PKI)の処理を行う(ステップS4)。すなわち、第一情報共有装置U
Aのアドホック鍵生成部U
A1は、公開パラメータPP
PKIを用いて、PKI 認証鍵交換方式のアドホック秘密鍵生成アルゴリズムに基づいてアドホック鍵ESK
APKIを生成する。生成されたアドホック鍵ESK
APKIは、第一情報共有装置U
A内に秘密に保持される。
【0047】
第一情報共有装置U
Aの初期メッセージ生成部U
A2は、Mes
1PKI←Message
post(PP
PKI,U
A,SSK
APKI,ESK
APKI)の処理を行う(ステップS5)。すなわち、第一情報共有装置U
Aの初期メッセージ生成部U
A2は、PP
PKI,U
A,SSK
APKI,ESK
APKIを用いて、PKI 認証鍵交換方式の初期メッセージ生成アルゴリズムMessage
postに基づいて初期メッセージMes
1PKIの生成を行う。生成された初期メッセージMes
1PKIは、SPK
APKI,cert
Aと共に第二情報共有装置U
Bに送信される。すなわち、Mes
1ID=(Mes
1PK,SPK
APKI,cert
A)が第二情報共有装置U
Bに送信される。
【0048】
第二情報共有装置U
Bのアドホック鍵生成部U
B1は、ESK
BPKI←EpheGen(PP
PKI)の処理を行う(ステップS6)。すなわち、第二情報共有装置U
Bのアドホック鍵生成部U
B1は、公開パラメータPP
PKIを用いて、PKI 認証鍵交換方式のアドホック秘密鍵生成アルゴリズムEpheGenに基づいてアドホック鍵ESK
BPKIを生成する。生成されたアドホック鍵ESK
BPKIは、第二情報共有装置U
B内に秘密に保持される。
【0049】
この例では、第二情報共有装置U
BがMes
1ID=(Mes
1PKI,SPK
APKI,cert
A)を受け取る前にMes
2PKIの生成が不可能であるとする。すなわち、第二情報共有装置U
B によるMes
2PKIの生成は、第一情報共有装置U
Aから Mes
1ID=(Mes
1PKI,SPK
APKI,cert
A)を受け取った後に可能であるとする。第二情報共有装置U
BがMes
1ID=(Mes
1PKI,SPK
APKI,cert
A)を受け取る前にMes
2PKIの生成が不可能かどうかは、ベースとなるPKI 認証鍵交換方式に依存する。
【0050】
この場合、Mes
1ID=(Mes
1PKI,SPK
APKI,cert
A)を受け取った後に、第二情報共有装置U
Bの検証部U
B3は、1←
?Ver (vk,(ID
A,SPK
APKI),cert
A)の処理を行う(ステップS7)。すなわち、第二情報共有装置U
Bの検証部U
B3は、vk,(ID
A,SPK
APKI),cert
Aを用いて、電子署名方式の検証アルゴリズムVerに基づいて(ID
A,SPK
APKI),cert
Aの検証を行う。
【0051】
ステップS7の検証に合格した場合には、第二情報共有装置U
Bの初期メッセージ生成部U
B2は、Mes
2PKI←Message(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
BPKI,Mes
1PKI)の処理を行う(ステップS8)。すなわち、第二情報共有装置U
Bの初期メッセージ生成部U
B2は、PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
BPKI,Mes
1PKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessageに基づいて初期メッセージMes
2PKI=Message(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
BPKI,Mes
1PKI)を生成しSPK
BPKI,cert
Bと共に第一情報共有装置U
Aに送信する。すなわち、Mes
2ID=(Mes
2PKI,SPK
BPKI,cert
B)が、第一情報共有装置U
Aに送信される。
【0052】
ステップS7の検証に合格しなかった場合には、その後の処理は行われない。
【0053】
Mes
2ID=(Mes
2PKI,SPK
BPKI,cert
B)を受け取った後に、第一情報共有装置U
Aの検証部U
A3は、1←
?Ver (vk,(ID
B,SPK
BPKI),cert
B)の処理を行う(ステップS9)。すなわち、第一情報共有装置U
Aの検証部U
A3は、vk,(ID
B,SPK
BPKI),cert
Bを用いて、電子署名方式の検証アルゴリズムVerに基づいて(ID
B,SPK
BPKI),cert
Bの検証を行う。
【0054】
ステップS9の検証に合格した場合には、第一情報共有装置U
A及び第二情報共有装置U
Bは、以下に述べるようにメッセージMes
iPKIをi=3からi=nまで互いに送信し合う。なお、第一情報共有装置U
Aのメッセージ生成部U
A4は、nが3以上の場合のみ処理を行い、nが3未満の場合には処理を行わない。また、第二情報共有装置U
Bのメッセージ生成部U
B4は、nが4以上の場合のみ処理を行い、nが4未満の場合には処理を行わない。
【0055】
すなわち、第一情報共有装置U
Aのメッセージ生成部U
A4は、nが3以上の場合には、iを3以上n以下の各奇数として、Mes
iPKI←Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)の処理を行う(ステップS10)。言い換えれば、第一情報共有装置U
Aのメッセージ生成部U
A4は、nが3以上の場合には、iを3以上n以下の各奇数として、PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessageに基づいてメッセージMes
iPKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)を生成しMes
iIDとして第二情報共有装置U
Bに送信する。
【0056】
また、第二情報共有装置U
Bのメッセージ生成部U
B4は、nが4以上の場合には、iを4以上n以下の各偶数として、Mes
iPKI←Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)の処理を行う(ステップS11)。言い換えれば、第二情報共有装置U
Bのメッセージ生成部U
B4は、nが4以上の場合には、iを4以上n以下の各偶数として、PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessageに基づいてメッセージMes
iPKI=Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)を生成しMes
iIDとして第一情報共有装置U
Aに送信する。
【0057】
ステップS9の検証に合格しなかった場合には、その後の処理は行われない。
【0058】
その後、第一情報共有装置U
Aの情報生成部U
A5は、K
PKI←SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)の処理を行う(ステップS12)。すなわち、第一情報共有装置U
Aの情報生成部U
A5は、PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKIを用いて、PKI 認証鍵交換方式のセッション鍵生成アルゴリズムに基づいて情報K
PKI=SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)を生成する。情報共有の対象がID認証鍵である場合には、ID認証鍵K
ID=K
PKIとなる。
【0059】
また、第二情報共有装置U
Bの情報生成部U
B5は、K
PKI←SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)の処理を行う(ステップS13)。すなわち、第二情報共有装置U
Bの情報生成部U
B5は、PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKIを用いて、PKI 認証鍵交換方式のセッション鍵生成アルゴリズムに基づいて情報K
PKI=SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)を生成する。情報共有の対象がID認証鍵である場合には、ID認証鍵K
ID=K
PKIとなる。
【0060】
既存方式では、古典的なDH 鍵交換と一緒に、ID にSchnorr 署名を施したものを送ることで、署名の偽造不可能性によりID 認証を実現していた。本発明では、このような特定の方式をベースにするのではなく、任意のPKI 認証鍵交換方式と任意の電子署名方式を組み合わせて変換することで情報共有システム(例えば、ID 認証鍵交換システム)を構成した。ベースとなるPKI 認証鍵交換方式と電子署名方式が、ランダムオラクルに依存しない方式であれば、変換後の情報共有システムもランダムオラクルに依存しない方式となる。
【0061】
また、PKI 認証鍵交換方式と電子署名方式はDiffie-Hellman(DH)問題以外の様々な問題に基づく構成が知られているため、変換後の例えばID 認証鍵交換方式である情報共有システムもDH 問題以外の問題に基づいて安全性を保証できる。DH 問題とは、(g,g
a,g
b)が与えられた時に、g
abを求める問題である。例えば、格子問題は量子計算機が実現しても効率的に解くアルゴリズムは知られておらず、格子問題に基づくPKI 認証鍵交換方式と電子署名方式から変換した情報共有システムは量子計算機に対しても安全となる。格子問題に基づくPKI 認証鍵交換方式は例えば次の文献に記載されている。
【0062】
〔参考文献1〕Atsushi Fujioka, Koutarou Suzuki, Keita Xagawa, Kazuki Yoneyama, “Strongly Secure Authenticated Key Exchange from Factoring, Codes and Lattices”, Public Key Cryptography, 2012, P.467-484
格子問題に基づく電子署名は例えば次の文献に記載されている。
〔参考文献2〕Vadim Lyubashevsky, “Lattice Signatures without Trapdoors”, EURO-CRYPT 2012, P.738-755
【0063】
〈第一実施形態の変形例〉
この例では、第二情報共有装置U
BがMes
1ID=(Mes
1PK,SPK
APKI,cert
A)を受け取る前にMes
2PKIの生成が可能であるとする。第二情報共有装置U
BがMes
1ID=(Mes
1PK,SPK
APKI,cert
A)を受け取る前にMes
2PKIの生成が可能かどうかは、ベースとなるPKI 認証鍵交換方式に依存する。
【0064】
この場合、第二情報共有装置U
B は、ステップS7の処理に代えて、以下に説明するステップS7’の処理を行う。
【0065】
ステップS6の処理の後に、第二情報共有装置U
Bの初期メッセージ生成部U
B2は、Mes
2PKI←Message
post(PP
PKI,U
B,SSK
BPKI,ESK
BPKI)の処理を行う(ステップS7’)。すなわち、第二情報共有装置U
Bの初期メッセージ生成部U
B2は、PP
PKI,U
B,SSK
BPKI,ESK
BPKIを用いて、PKI 認証鍵交換方式の初期メッセージ生成アルゴリズムMessage
postに基づいて初期メッセージMes
2PKIの生成を行う。生成された初期メッセージMes
2PKIは、SPK
BPKI,cert
Bと共に第一情報共有装置U
Aに送信される。すなわち、Mes
2ID=(Mes
2PK,SPK
BPKI,cert
B)が第一情報共有装置U
Aに送信される。
【0066】
その後、ステップS8の処理が行われる。
【0067】
第一実施形態の変形例によっても、上記説明した第一実施形態と同様の効果を得ることができる。
【0068】
[第二実施形態]
第二実施形態では、イニシエータが交換相手の情報を用いて最初のメッセージを計算
する必要がある(事後指定不可)PKI 認証鍵交換方式を電子署名方式と組み合わせて情報共有(例えば、ID 認証鍵交換方式による認証鍵の共有)を行うものである。まず、部品であるPKI 認証鍵交換方式と電子署名方式について説明する。これらのPKI 認証鍵交換方式と電子署名方式は、例えばランダムオラクルに依存しないものとする。
【0069】
事後指定不可PKI認証鍵交換は以下のアルゴリズムからなる。
【0070】
・PP
PKI←Setup(1
κ):セットアップアルゴリズム
公開パラメータを生成する。κは、セキュリティパラメータであり任意の正の整数である。1
κは、κビットのビット列である。
【0071】
・(SPK
PPKI,SSK
PPKI)←StaticGen(PP
PKI):鍵登録アルゴリズム
長期秘密鍵SSK
PPKI及び対応する長期公開鍵SPK
PPKIを生成し、長期公開鍵SPK
PPKIをPKIに登録し公開する。パーティU
Pとは、情報を共有可能な2以上の情報共有装置の集合のことである。パーティU
Pに属する各情報共有装置が、StaticGenのアルゴリズムに基づいて長期秘密鍵及び長期公開鍵を生成する。
【0072】
・ESK
PPKI←EpheGen(PP
PKI):アドホック秘密鍵生成アルゴリズム
アドホック秘密鍵ESK
PPKIを生成する。
【0073】
・Mes
1PKI←Message
pre(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI):初期メッセージ生成アルゴリズム
ベースとなるPKI認証鍵交換では、イニシエータU
Aは、SSK
APKI,ESK
APKI,SPK
BPKIを用いて、初期メッセージMes
1PKIを生成する。第一実施形態の初期メッセージ生成アルゴリズムMessage
postと異なり、第二実施形態の初期メッセージ生成アルゴリズムMessage
preでは、交換相手U
Bの長期公開鍵SPK
BPKIを必要とする。
【0074】
以下に述べる情報共有アルゴリズムでは、イニシエータである第一情報共有装置U
Aではなく、レスポンダである第二情報共有装置U
Bが、初期メッセージ生成アルゴリズムMessage
preを用いて、初期メッセージMes
1PKI= Message
pre(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI)の生成を行う。
【0075】
・Mes
iPKI←Message(PP
PKI,U
P,U
P-,SSK
PPKI,ESK
PPKI,SPK
P-PKI,Mes
1PKI,…,Mes
i-1PKI):第iメッセージ生成
SSK
PPKI,ESK
PPKI,SPK
P-PKI,Mes
1PKI,…,Mes
i-1PKIを用いて、第iメッセージMes
iPKIを生成する。U
P-は、交換相手のことである。例えば、U
AとU
Bとの間で情報共有を行うときであって、U
P=U
Aの場合にはU
P-=U
Bであって、U
P=U
Bの場合にはU
P-=U
Aである。U
Pは、イニシエータU
Pを表すビット列である。例えば、U
Aはイニシエータである第一情報共有装置U
Aを表すビット列であり、U
Bはレスポンダである第二情報共有装置U
Bを表すビット列である。
【0076】
・K
PKI←SesKey(PP
PKI,U
P,U
P-,SSK
PPKI,ESK
PPKI,SPK
P-PKI,Mes
1PKI,…,Mes
nPKI):セッション鍵生成アルゴリズム
SSK
PPKI,ESK
PPKI,SPK
PPKI,Mes
1PKI,…,Mes
iPKIを用いて、セッション鍵K
PKIを生成する。
【0077】
電子署名方式は、以下のアルゴリズムからなる。
【0078】
・(vk,sk)←SigGen(1
κ):鍵生成アルゴリズム
検証鍵vkと署名鍵skを生成する。
【0079】
・σ←Sign(sk,m):署名生成
平文mと署名鍵skを用いて、署名σを生成する。
【0080】
・1 or 0←Ver(vk,m,σ):署名検証
検証鍵vkを用いて、平文mと署名σを検証し、合格なら1、不合格なら0を出力する。
【0081】
図5に、これらのPKI 認証鍵交換方式と電子署名方式を用いた情報共有アルゴリズムの概要を例示する。
【0082】
以下、この情報共有アルゴリズムを実行する情報共有システムについて説明する。情報共有システムは、
図1に例示するように、管理者装置1と、2以上の情報共有装置2とを例えば備えている。
【0083】
管理者装置1は、PP
PKI←Setup(1
κ)の処理を行う(ステップS1)。すなわち、管理者装置1は、セキュリティパラメータκを用いて、PKI 認証鍵交換方式のセットアップアルゴリズムに基づいて公開パラメータPP
PKIを生成する。
【0084】
管理者装置1は、(vk,sk)←SigGen(1
κ)の処理を行う(ステップS2)。すなわち、管理者装置1は、セキュリティパラメータκを用いて、電子署名方式の鍵生成アルゴリズムSigGenに基づいて検証鍵vk及び署名鍵skを生成する。生成された署名鍵skは、マスタ秘密鍵MSK
IDとして管理者装置1内に秘密に保持される。生成された検証鍵vk及び公開パラメータPP
PKIは、マスタ公開鍵MPK
IDとして公開される。
【0085】
各情報共有装置2は、(SPK
PPKI,SSK
PPKI)←StaticGen(PP
PKI)の処理を行う(ステップS3)。すなわち、各情報共有装置2は、公開パラメータPP
PKIを用いて、PKI 認証鍵交換方式の鍵登録アルゴリズムStaticGenに基づいて長期秘密鍵SSK
PPKI及び長期公開鍵SPK
PPKIを生成する。生成された長期秘密鍵SSK
PPKIは、各情報共有装置2内に秘密に保持される。生成された長期公開鍵SPK
PPKIは公開される。
【0086】
各情報共有装置2は、cert
P←Sign(sk,(ID
P,SPK
PPKI))の処理を行う(ステップS31)。すなわち、各情報共有装置2は、sk,(ID
P,SPK
PPKI)を用いて、電子署名方式の署名生成アルゴリズムSignに基づいて署名cert
Pの生成を行う。ID
Pは、各情報共有装置2に関連する情報を表すビット列である。各情報共有装置2に関連する情報とは、例えば、各情報共有装置2のメールアドレスである。
【0087】
ステップS3及びステップS31の処理は、各情報共有装置2ごとに行われる。情報共有装置2の中の情報共有を実際に行う一組の情報共有装置を第一情報共有装置U
A及び第二情報共有装置U
Bとする。この場合、第一情報共有装置U
Aにより、長期秘密鍵SSK
APKI、長期公開鍵SPK
APKI及び署名cert
Aが生成され、長期秘密鍵SSK
AID=(SSK
APKI,SPK
APKI,cert
A)が第二情報共有装置U
B内に秘密に保持される。また、第二情報共有装置U
Bにより、長期秘密鍵SSK
BPKI、長期公開鍵SPK
BPKI及び署名cert
Bが生成され、長期秘密鍵SSK
BID=(SSK
BPKI,SPK
BPKI,cert
B)が第二情報共有装置U
B内に秘密に保持される。
【0088】
以上のステップS1からステップS31の処理は、以下に述べる情報共有の処理の前準備として事前に行われる。
【0089】
以下、2以上の情報共有装置2の中の第一情報共有装置U
Aと第二情報共有装置U
Bとの間で情報共有が行われる場合を例に挙げて説明する。第一情報共有装置U
Aと第二情報共有装置U
Bとは、情報共有装置2の中の任意の一組の情報共有装置である。第一情報共有装置U
Aがイニシエータとし、第二情報共有装置U
Bがレスポンダとして説明する。
【0090】
第一情報共有装置U
Aは、
図4に例示するように、アドホック鍵生成部U
A1、初期メッセージ生成部U
A2、検証部U
A3、メッセージ生成部U
A4、情報生成部U
A5及び送信部U
A6を備えている。第二情報共有装置U
Bは、
図4に例示するように、アドホック鍵生成部U
B1、初期メッセージ生成部U
B2、検証部U
B3、メッセージ生成部U
B4及び情報生成部U
B5を備えている。
【0091】
第一情報共有装置U
Aのアドホック鍵生成部U
A1は、ESK
APKI←EpheGen(PP
PKI)の処理を行う(ステップS4)。すなわち、第一情報共有装置U
Aのアドホック鍵生成部U
A1は、公開パラメータPP
PKIを用いて、PKI 認証鍵交換方式のアドホック秘密鍵生成アルゴリズムに基づいてアドホック鍵ESK
APKIを生成する。生成されたアドホック鍵ESK
APKIは、第一情報共有装置U
A内に秘密に保持される。
【0092】
第一情報共有装置U
Aの送信部U
A6は、Mes
1ID=(SPK
APKI,cert
A)を第二情報共有装置U
Bに送信する。
【0093】
第二情報共有装置U
Bのアドホック鍵生成部U
B1は、ESK
BPKI←EpheGen(PP
PKI)の処理を行う(ステップS6)。すなわち、第二情報共有装置U
Bのアドホック鍵生成部U
B1は、公開パラメータPP
PKIを用いて、PKI 認証鍵交換方式のアドホック秘密鍵生成アルゴリズムEpheGenに基づいてアドホック鍵ESK
BPKIを生成する。生成されたアドホック鍵ESK
BPKIは、第二情報共有装置U
B内に秘密に保持される。
【0094】
第二情報共有装置U
AからMes
1ID=(SPK
APKI,cert
A)を受け取った後に、第二情報共有装置U
Bの検証部U
B3は、1←
?Ver (vk,(ID
A,SPK
APKI),cert
A)の処理を行う(ステップS7)。すなわち、第二情報共有装置U
Bの検証部U
B3は、vk,(ID
A,SPK
APKI),cert
Aを用いて、電子署名方式の検証アルゴリズムVerに基づいて(ID
A,SPK
APKI),cert
Aの検証を行う。
【0095】
ステップS7の検証に合格した場合には、第二情報共有装置U
Bの初期メッセージ生成部U
B2は、Mes
1PKI←Message
pre(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI)の処理を行う(ステップS14)。すなわち、第二情報共有装置U
Bの初期メッセージ生成部U
B2は、PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessage
preに基づいて初期メッセージMes
1PKI=Message
pre(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI)を生成しSPK
BPKI,cert
Bと共に第一情報共有装置U
Aに送信する。すなわち、Mes
2ID=(Mes
1PKI,SPK
BPKI,cert
B)が、第一情報共有装置U
Aに送信される。
【0096】
ステップS7の検証に合格しなかった場合には、その後の処理は行われない。
【0097】
Mes
1ID=(Mes
1PKI,SPK
BPKI,cert
B)を受け取った後に、第一情報共有装置U
Aの検証部U
B3は、1←
?Ver (vk,(ID
B,SPK
BPKI),cert
B)の処理を行う(ステップS9)。すなわち、第一情報共有装置U
Aの検証部U
B3は、vk,(ID
B,SPK
BPKI),cert
Bを用いて、電子署名方式の検証アルゴリズムVerに基づいて(ID
B,SPK
BPKI),cert
Bの検証を行う。
【0098】
ステップS9の検証に合格した場合には、以下の処理を行う。ステップS9の検証に合格しなかった場合には、以下の処理は行われない。
【0099】
この例では、第一情報共有装置U
AがMes
1ID=(Mes
1PKI,SPK
BPKI,cert
B)を受け取る前にMes
2PKIの生成が不可能であるとする。すなわち、第一情報共有装置U
AによるMes
2PKIの生成は、第二情報共有装置U
Bから Mes
1ID=(Mes
1PKI,SPK
BPKI,cert
B)を受け取った後に可能であるとする。第一情報共有装置U
AがMes
1ID=(Mes
1PKI,SPK
BPKI,cert
B)を受け取る前にMes
2PKIの生成が不可能かどうかは、ベースとなるPKI 認証鍵交換方式に依存する。
【0100】
この場合、第一情報共有装置U
Aの初期メッセージ生成部U
B2は、Mes
2PKI←Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI)の処理を行う(ステップS15)。言い換えれば、第一情報共有装置U
Aの初期メッセージ生成部U
A2は、PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessageに基づいて初期メッセージMes
2PKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI)を生成しMes
3IDとして第二情報共有装置U
Bに送信する。
【0101】
その後は、第一情報共有装置U
A及び第二情報共有装置U
Bは、以下に述べるようにメッセージMes
iPKIをi=3からi=nまで互いに送信し合う。なお、第二情報共有装置U
Bのメッセージ生成部U
B4は、nが3以上の場合のみ処理を行い、nが3未満の場合には処理を行わない。また、第一情報共有装置U
Aのメッセージ生成部U
A4は、nが4以上の場合のみ処理を行い、nが4未満の場合には処理を行わない。
【0102】
すなわち、第二情報共有装置U
Bのメッセージ生成部U
A4は、nが3以上の場合には、iを3以上n以下の各奇数として、Mes
iPKI←Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)の処理を行う(ステップS17)。言い換えれば、第二情報共有装置U
Bのメッセージ生成部U
B4は、nが3以上の場合には、iを3以上n以下の各奇数として、PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessageに基づいてメッセージMes
iPKI=Message(PP
PKI, U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
i-1PKI)を生成しMes
i+1IDとして第一情報共有装置U
Aに送信する。
【0103】
また、第一情報共有装置U
Aのメッセージ生成部U
A4は、nが4以上の場合には、iを4以上n以下の各偶数として、Mes
iPKI←Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)の処理を行う(ステップS16)。言い換えれば、第一情報共有装置U
Aのメッセージ生成部U
A4は、nが4以上の場合には、iを4以上n以下の各偶数として、PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKIを用いて、PKI 認証鍵交換方式のメッセージ生成アルゴリズムMessageに基づいてメッセージMes
iPKI=Message(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
i-1PKI)を生成しMes
i+1IDとして第二情報共有装置U
Bに送信する。
【0104】
その後、第一情報共有装置U
Aの情報生成部U
A5は、K
PKI←SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)の処理を行う(ステップS12)。すなわち、第一情報共有装置U
Aの情報生成部U
A5は、PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKIを用いて、PKI 認証鍵交換方式のセッション鍵生成アルゴリズムに基づいて情報K
PKI=SesKey(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI,Mes
1PKI,…,Mes
nPKI)を生成する。情報共有の対象がID認証鍵である場合には、ID認証鍵K
ID=K
PKIとなる。
【0105】
また、第二情報共有装置U
Bの情報生成部U
B5は、K
PKI←SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)の処理を行う(ステップS13)。すなわち、第二情報共有装置U
Bの情報生成部U
B5は、PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKIを用いて、PKI 認証鍵交換方式のセッション鍵生成アルゴリズムに基づいて情報K
PKI=SesKey(PP
PKI,U
B,U
A,SSK
BPKI,ESK
BPKI,SPK
APKI,Mes
1PKI,…,Mes
nPKI)を生成する。情報共有の対象がID認証鍵である場合には、ID認証鍵K
ID=K
PKIとなる。
【0106】
第二実施形態によっても、上記説明した第一実施形態と同様の効果を得ることができる。
【0107】
〈第二実施形態の変形例〉
この例では、第一情報共有装置U
AがMes
1ID=(Mes
1PKI,SPK
BPKI,cert
B)を受け取る前にMes
2PKIの生成が可能であるとする。第一情報共有装置U
AがMes
1ID=(Mes
1PKI,SPK
BPKI,cert
B)を受け取る前にMes
2PKIの生成が可能かどうかは、ベースとなるPKI 認証鍵交換方式に依存する。
【0108】
この場合、第一情報共有装置U
Aは、ステップS15の処理に代えて、以下に説明するステップS15’の処理を行う。
【0109】
ステップS9の検証に合格した後に、第一情報共有装置U
Aの初期メッセージ生成部U
B2は、Mes
2PKI←Message
pre(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI)の処理を行う(ステップS15’)。言い換えれば、第一情報共有装置U
Aの初期メッセージ生成部U
A2は、PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKIを用いて、PKI 認証鍵交換方式の初期メッセージ生成アルゴリズムMessage
preに基づいて初期メッセージMes
2PKI=Message
pre(PP
PKI,U
A,U
B,SSK
APKI,ESK
APKI,SPK
BPKI)を生成しMes
3IDとして第二情報共有装置U
Bに送信する。
【0110】
その後、ステップS16の処理が行われる。
【0111】
第二実施形態の変形例によっても、上記説明した第一実施形態と同様の効果を得ることができる。
【0112】
[変形例等]
上記装置及び方法において説明した処理は、記載の順にしたがって時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
【0113】
また、上記の実施形態及び変形例で説明した各装置における各種の処理機能をコンピュータによって実現してもよい。その場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
【0114】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
【0115】
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させてもよい。
【0116】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶部に格納する。そして、処理の実行時、このコンピュータは、自己の記憶部に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実施形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよい。さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、プログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
【0117】
また、コンピュータ上で所定のプログラムを実行させることにより、各装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。