説明

耐量子コンピュータ性をもつ鍵共有方式

【課題】従来の鍵共有方式の安全性は、素因数分解問題や乗法群上の離散対数問題の計算量上の困難さに依存するものであり、量子コンピュータが実用化するといずれの問題も多項式時間で解読可能と予想されている。
【解決手段】鍵共有方式の安全性をNP完全問題の1つである高次多変数連立代数方程式の解法の困難さに依存する方式を採用することにより、耐量子コンピュータ性を持つ鍵共有方式を提供する。

【発明の詳細な説明】
【技術分野】
【0001】
この発明は高次多変数連立代数方程式を利用した、耐量子コンピュータ性をもつ鍵共有方式に関するものである。
【背景技術】
【0002】
通信者双方が秘密の鍵を共有する共通鍵暗号方式は、歴史も長く一般にも広く使われているが、その共通の鍵を初めに通信者同士が交換しなければならない。そこで共通鍵の交換に使われるのが、RSA暗号に代表される公開鍵暗号系である。RSA暗号は素因数分解の計算量的観点からの困難性を根拠にしているが、同じように計算量的困難性を根拠にしている暗号に、Diffie−Hellman問題(以下、DH問題という)(″New directions in cryptography″,W.Diffie and M.E.Hellman,IEEE Transactions on Information Theory,IT−22:644−654,1976)を利用した公開鍵暗号がある。
【0003】
西岡は素因数分解問題の困難性やDH問題の困難性を利用した共通鍵配送方法を発表している。西岡方式では、送信者は受信者の公開鍵を用いて送信者側装置内で暗号文を作成し,通信回線を介して受信者側装置に送信し,受信者は秘密鍵を用いて暗号文の復号化を行う公開鍵暗号による暗号通信方法であって,素因数分解問題の困難性を前提に選択平文攻撃に対して一方向であるRabin暗号と,Diffie−Hellman決定問題の困難性を前提に選択平文攻撃に対して強秘匿であるElGamal暗号の双方の安全性の特徴を併せ持つように,暗号化および復号化のための手順を構築している。さらに,共通鍵暗号の鍵配送に使用する目的の下で,真の平文空間を秘密にしながら,平文空間の大きさを小さくする。これにより、より困難な問題を前提に安全性の証明が可能であり,かつ,暗復号化のための計算において効率性の高い処理ができる公開鍵暗号方法とそれを用いた鍵共有方法を提供している。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特許出願2000−596694 公開鍵暗号及び鍵共有方法 株式会社日立製作所西岡 玄次 特願平11−21254、特願平11−239177
【非特許文献】
【0005】
【非特許文献1】W.Diffie and M.E.Hellman,″New directions in cryptography″,IEEE Transactions on Information Theory,IT−22:644−654,1976
【発明の概要】
【発明が解決しようとする課題】
【0006】
西岡方式の安全性は、素因数分解問題や乗法群上の離散対数問題の計算量上の困難さに依存することであり、量子コンピュータが実用化するといずれの問題も多項式時間で解読可能と予想されている。
【0007】
このように西岡方式等、従来の方式は、耐量子コンピュータ性がなく、量子コンピュータが実用化すると多項式時間で解読されてしまうと予想されている。本発明は、安全性をNP完全問題の1つである高次多変数連立代数方程式の解法の困難さに依存する方式を採用することにより、耐量子コンピュータ性を持つ鍵共有方式を提供することを目的とする。
【課題を解決するための手段】
【0008】
請求項1の発明によれば、システムセンタは奇素数qおよび3つの整数[d,r,m]を選び公開する。利用者Uは、システム加入時に、秘密鍵[A(i=1,..,m)]を選ぶ。ここで、A(i=1,..,m)をFq上の四元数環H上の任意のm個の要素とする。1つの要素AはFq上の4つの要素から成り立っている四元数であり、全てのAはFq上の四元数環H上で逆数A−1を持つ。利用者Uは公開されている3つのシステムパラメータ[d,r,m]と秘密鍵[A(i=1,..,m)]から、公開鍵である四元数環上の高次関数である暗号化関数F(X)を以下のように生成する。
【0009】
【数1】

【0010】
利用者Uは暗号化関数F(X)を展開して、展開式の各係数fje0e1e2e3を求め、その集合{fje0e1e2e3}をシステムセンタに利用者Uの公開鍵PKとして利用者Uの識別情報IDとともに送る。四元数F(X)の要素表現形式を(f,f,f,f)とすると、
【数2】

ここで、
X=(x,x,x,x)∈H,
∈Fq(i=0,..,3)
であり、また1+r+・・・+r=sとして、
,e,e,eは非負の整数でe+e+e+e=sを満足する。上式右辺のfje0e1e2e3の総数nは、
【数3】

となる。
【0011】
システムパラメータmの値はシステムセンタにて以下のように決定されている。
【数4】

【0012】
利用者Vは利用者Uと利用者V間の共通鍵Kv1,Kv2を以下のように生成する。
利用者Vは、四元数環H上の逆数をもつ任意のm個の要素R(i=1,..,m)を選ぶ。R(i=1,..,m)を利用者Vの一時秘密鍵TSKと呼ぶ。
【0013】
利用者Vは要素R(i=1,..,m)を用いて、Fq上の四元数環上の高次関数である一時暗号化関数T(X)を以下のように生成する。
【数5】

【0014】
利用者VはT(X)を展開して、展開式の各係数tje0e1e2e3を求め、その集合{tje0e1e2e3}を利用者Vの一時公開鍵TKとする。
四元数T(X)の要素表現形式を(t,t,t,t)とすると
【数6】

ここで、e,e1,,eは非負の整数でe+e+e+e=sを満足する。上記tje0e1e2e3の総数nは、
【数7】

となる。
【0015】
利用者Vは{tje0e1e2e3}を利用者Uに送る。
【0016】
利用者Vはシステムセンタの公開鍵管理簿から入手した利用者Uの公開鍵{fje0e1e2e3}と利用者Vの一時秘密鍵R(i=1,..,m)から共通鍵Kv1,Kv2を以下の手順で生成する。
【数8】


ここで、
=(Ri0,Ri1,Ri2,Ri3),(i=0,..,m)
である。
,e,e,eは非負整数でe+・・・+e=sを満足する.
RrとTv2ijを以下に定める。
【数9】

,e,e,eは非負整数でe+・・・+e=sを満足する.
Kv2を以下の式で与える。
【数10】

【0017】
一方、利用者Uは以下のように共通鍵Ku1,Ku2を生成する。
まず、Ku1,Ku2の要素表現を以下に定める。
Ku1=(Ku1,Ku1,Ku1,Ku1
Ku2=(Ku2,Ku2,Ku2,Ku2).
【0018】
Arの要素表現を用いてTu1ijを計算する。
【数11】

,e,e,eは非負整数でe+・・・+e=sを満足する.
Tu1ijを用いて、四元数演算を実行してKu1を求める。
【数12】

【0019】
Ku2は[数6]のtの式のx,x,x,xにAi0,Ai2,Ai3をそれぞれ代入して計算できる。
【数13】

,e,e,eは非負整数でe+・・・+e=sを満足する.
【0020】
Ku1=Kv1,
Ku2=Kv2
であることを以下に示す。
【数14】

同様にして
Ku2=Kv2.
が示せる。この証明は、発明者の論文(Masahiro Yagisawa,″Key Agreement Protocols Based on Multivariate Algebraic Equations on Quaternion Ring″,Cryptology ePrint Archive,Report2010/377,(2010−07).)に示されている。
【0021】
利用者Uと利用者Vの共通鍵は[Ku1,Ku2]となる。
【0022】
公開される集合{fje0e1e2e3}の値から秘密鍵[A(i=1,..,m)]を求めることが高次多変数連立代数方程式の解法に帰結される。この解法問題はNP完全問題の一つである。
【0023】
請求項2の発明によれば、システムセンタは奇素数qおよび2つの整数[d,m]を選び公開する。利用者Uは、システム加入時に、秘密鍵[Aij(i=1,..,m;j=1,..,d)]を選ぶ。ここで、Aij(i=1,..,m;j=1,..,d)をFq上の四元数環H上の任意のmd個の要素とする。1つの要素AijはFq上の4つの要素から成り立っている四元数である。利用者Aは公開されている3つのシステムパラメータ[q,d,m]と秘密鍵[Aij(i=1,..,m;j=1,..,d)]から、公開鍵である四元数環上の高次関数である暗号化関数F(X)を以下のように生成する。
【数15】

【0024】
利用者Uは暗号化関数F(X)を展開して、展開式の各係数fje10..ed3を求め、その集合{fje10..ed3}をシステムセンタに利用者Uの公開鍵として利用者Uの識別情報IDとともに送る。四元数F(X)の展開表現を(f,f,f,f)とすると、
【数16】

ij∈{0,1}(i=1,..,d;j=0,..,3)は
i0+..+ei3=1(i=1,..,d).
であり、
10+..+e13+・・・+ed0+..+ed3=d
を満足する。{fje10..ed3}はfje10..ed3.全てを含む集合とする。fje10..ed3の個数はnで与えられる。
【数17】

【0025】
システムパラメータmの値はシステムセンタにて以下のように決定されている。
【数18】

【0026】
利用者Vは利用者Uと利用者V間の共通鍵Kv1,Kv2を以下のように生成する。
利用者Vは、四元数環Hのmd個の任意の要素Bij(i=1,..,m;j=1,..,d)を選ぶ。Bij(i=1,..,m)を利用者Vの一時秘密鍵TSKと呼ぶ。
【0027】
利用者Vは要素Bij(i=1,..,m;j=1,..,d)を用いて、Fq上の四元数環上の高次関数である一時暗号化関数T(X,..,X)を以下のように生成する。
【数19】

【0028】
利用者VはT(X)を展開して、展開式の各係数tje10..ed3を求め、その集合{tje10..ed3}である一時公開鍵TKを求める。各係数tje10..ed3は以下のような形をしている。四元数T(X)の要素表現形式を(t,t,t,t)とすると
【数20】

ここで、eij∈{0,1}(i=1,..,d;j=0,..,3)は
i0+..+ei3=1(i=1,..,d).
であり、
10+..+e13+・・・+ed0+..+ed3=d
を満足する。{tje10..ed3}はtje10..ed3.全てを含む集合とする。tje10..ed3の個数はnで与えられる。
【数21】

【0029】
利用者Vは{tje10..ed3}を利用者Uに送る。
【0030】
利用者Vはシステムセンタの公開鍵管理簿から入手した利用者Uの公開鍵{fje10..ed3}と利用者Vの一時秘密鍵Bij(i=1,..,m;j=1,..,d)から共通鍵Kv1,Kv2を以下の手順で生成する。
【数22】

したがって、Kv1(j=0,..,3)は以下の形をしている。

(Vij0,Vij1,Vij2,Vij3)=Bij(i=1,..,m;j=1,..,d),
ij∈{0,1}(i=1,..,d;j=0,..,3)は
i0+・・・+ei3=1(i=1,..,d)
であり、
10+..+e13・・・+ed0+..+ed3=d
を満足する。
【数23】

したがって、Kv2(j=0,..,3)は以下の形をしている。

ここで、
(Vij0,Vij1,Vij2,Vij3)=Bij,(i=1,..,m;j=1,..,d).
係数f’je10..ed3はFqの要素である。
ij∈{0.1}(i=1,..,d;j=0,..,3)は
i0+・・・+ei3=1(i=1,..,d)
であり、
10+..+e13+・・・+ed0+..+ed3=d
を満足する。
【0031】
利用者Uは以下のように共通鍵Ku1,Ku2を計算する。
まず、Ku1,Ku2の要素表現を以下に定める。
【数24】

したがって、Kv1(j=0,..,3)は以下の形をしている。

ここで、(Uij0,Uij1,Uij2,Uij3)=Aij,(i=1,..,m;j=1,..,d),
係数t’je10..ed3はFqの要素である。
ij∈{0,1}(i=1,..,d;j=0,..,3)は
i0+・・・+ei3=1(i=1,..,d)
であり、
10+..+e13+・・・+ed0+..+ed3=d
を満足する。
【数25】

したがって、Kv2(j=0,..,3)は以下の形をしている。

ここで、(Uij0,Uij1,Uij2,Uij3)=Aij,(i=1,..,m;j=1,..,d),
ij∈{0,1}(i=1,..,d;j=0,..,3)は
i0+・・・+ei3=1(i=1,..,d)
であり、
10+..+e13+・・・+ed0+..ed3=d
を満足する。
【0032】
[数22]と[数24]から
Ku1=Kv1,
[数23]と[数25]から
Ku2=Kv2.
であることがわかる。
利用者Uと利用者Vの共通鍵KはK=[Ku1,Ku2]=[Kv1,Kv2]で与えられる。
【0033】
公開される利用者Uの公開鍵{fje10..ed3}の値から利用者Uの秘密鍵[Aij(i=1,..,m;j=1,..,d)]を求めることは高次多変数連立代数方程式の解法に帰結される。この解法問題はNP完全問題の一つである。
【0034】
請求項3の発明によれば、システムセンタは奇素数qおよび2つの整数[d,m]を選び公開する。利用者Uは、システム加入時に、利用者Uの秘密鍵SK=[A=(ai0,ai1,ai2,ai3)(i=1,..,m)]を選ぶ。ここで、A(i=1,..,m)をFq上の四元数環H上の任意のm個の要素とする。1つの要素AiはFq上の4つの要素から成り立っている四元数である。利用者Uは公開されている3つのシステムパラメータ[q,d,m]と秘密鍵SKから、公開鍵である四元数環上の高次関数である暗号化関数F(X)を以下のように生成する。
【数26】

【0035】
利用者Uは暗号化関数F(X)を展開して、展開式の各係数fje0e1e2e3を求め、その集合{fje0e1e2e3}をシステムセンタに利用者Uの公開鍵PKとして利用者Uの識別情報IDとともに送る。四元数F(X)の要素表現形式を(f,f,f,f)とすると、
【数27】

ここで、e,e,e,eは非負の整数でe+e+e+e=dを満足する。上式右辺のfje0e1e2e3(j=0,1,2,3)の総数nは、
【数28】

となる。
{fje0e1e2e3}はfje0e1e2e3全てを含む集合とする。
【0036】
システムパラメータmの値はシステムセンタにて以下のように決定されている。
【数29】

【0037】
利用者Vは利用者Uと利用者V間の共通鍵Kvを以下のように生成する。
利用者Vは、四元数環Hのm個の任意の要素B=(bi0,bi1,bi2,bi3)(i=1,..,m)を選ぶ。B(i=1,..,m)を利用者Vの一時秘密鍵TSKと呼ぶ。
【0038】
利用者Vは要素B(i=1,..,m)を用いて、Fq上の四元数環上の高次関数である一時暗号化関数T(X)を以下のように生成する。
【数30】

【0039】
利用者VはT(X)を展開して、展開式の各係数tje0e1e2e3を求め、その集合{tje0e1e2e3}を求める。
四元数T(X)の要素表現形式を(t,t,t,t)とすると
【数31】

【0040】
ここで、e,e,e,eは非負の整数でe+e+e+e=dを満足する。上記tje0e1e2e3総数nは、
【数32】

となる。
{tje0e1e2e3}はtje0e1e2e3全てを含む集合であり、利用者Vの一時公開鍵TKと呼ぶ。
【0041】
利用者Vは{tje0e1e2e3}を利用者Uに送る。
【0042】
利用者Vはシステムセンタの公開鍵管理簿から入手した利用者Uの公開鍵PKと利用者Vの一時秘密鍵B(i=1,..,m)から共通鍵Kvを以下の手順で生成する。
【数33】

Kv(j=0,1,2,3)は以下で与えられる。
【数34】

,e,e,eは非負整数でe+・・・+e=dを満足する.
【0043】
利用者Uは以下のように共通鍵Kuを計算する。まず、Kuの要素表現を以下に定める。
【数35】

【0044】
Ku(i=1,0,1,2,3)は以下で与えられる。
【数36】

,e,e,eは非負整数でe+・・・+e=dを満足する.
【0045】
[数33]、[数35]から
Ku=Kv,
であることが分かる。利用者Uと利用者Vの共通鍵はKuまたはKvである。
【0046】
公開される利用者Uの公開鍵{fje0e1e2e3}の値から利用者Uの秘密鍵[A(i=1,..,m)]を求めることは高次多変数連立代数方程式の解法に帰結される。この解法問題はNP完全問題の一つである。
【0047】
請求項4の発明によれば、システムセンタは素数qおよび3つの整数[d,m,n]を選び公開する。
利用者Uは、システム加入時に、利用者Uの秘密鍵SK=[k,aii(i=1,..,m;j=1,..,n)]を選ぶ。ここで、,kij(i=1,..,m;j=1,..,n)をFq上の任意の要素とする。利用者Uは公開されている3つのシステムパラメータ[q,d,m]と利用者Uの秘密鍵SKから、公開鍵であるn変数多項式環Fq[x,..,x]上の暗号化関数F(X)を以下のように生成する。
【数37】

ここで、
(X)=ai1+・・・+ain,(i=1,..,m)
変数;X=(X,..,X∈Fq[x,..,x
【0048】
利用者Uは暗号化関数F(X)を展開して、展開式の各係数fje0..enを求め、その集合{fje0..en}をシステムセンタに利用者Uの公開鍵PKとして利用者Uの識別情報IDとともに送る。各係数もfje0..enは以下のような形をしている。
【数38】

ここで、e,..,eは非負の整数でei1+..+ein=iを満足する。上式右辺のfiei1..ein数Nは、

となる。
{fiei1..ein}はfiei1..ein全てを含む集合とする。
【0049】
システムパラメータmの値はシステムセンタにて以下のように決定されている。
【数39】

【0050】
利用者Vは利用者Uと利用者V間の共通鍵Kv(X)を以下のように生成する。
利用者Vは、h,bij∈Fq,(i=1,..,m;j=1,..,n)を任意に選ぶ。[h,bij∈Fq,(i=1,..,m;j=1,..,n)]を利用者Vの一時秘密鍵TSKと呼ぶ。
【0051】
利用者Vは[h,bij∈Fq,(i=1,..,m;j=1,..,n)]を用いて、Fq上の一時暗号化関数T(X)を以下のように生成する。
【数40】

ここで、
(X)=bi1+・・・+bin,(i=1,..,m).
【0052】
利用者VはT(X)を展開して、展開式の各係数tiei1..einを求め、その集合{tiei1..ein}を求める。
【数41】

【0053】
ここで、e,..,eは非負の整数でei1+..+ein=iを満足する。tiei1..einの総数N’は、Nに等しい。
{tiei1..ein}はtiei1..einをすべて含む集合であり、利用者Vの一時公開鍵TKと呼ぶ。
【0054】
利用者Vは{tiei1..ein}を利用者Uに送る。
【0055】
利用者Vはシステムセンタの公開鍵管理簿から入手した利用者Uの公開鍵PKと利用者Vの一時秘密鍵TSKから共通鍵Kvを以下の手順で生成する。
【数42】

[数37]から
【数43】

また、[数38]から
【数44】

が得られる。
ここで、e,..,eは非負の整数でei1+..+ein=i(i=1,..,d)を満足する。
【0056】
一方、利用者Uは以下のように共通鍵Kuを計算する。
【数45】

[数40]から
【数46】

また、[数41]から
【数47】

が得られる。
ここで、e,..,eは非負の整数でei1+..+ein=i(i=1,..,d)を満足する。
【0057】
[数43]、[数46]から
【数48】

であることが分かる。利用者Uと利用者Vの共通鍵はKu(X)またはKv(X)である。
【0058】
公開される利用者Uの公開鍵{fiei1..ein}の値から秘密鍵[h,bi1∈Fq,(i=1,..,m;j=1,..,n)]を求めることは高次多変数連立代数方程式の解法に帰結される。この解法問題はNP完全問題の一つである。
【0059】
ところで、西岡方式の安全性は、乗法群や楕円曲線上の離散対数問題の困難さに依存する。
【0060】
一方、本発明方式の安全性は、有限体Fq上の高次多変数連立代数方程式の解法の困難さに依存する。次数を大きくし、変数の数を多くすることにより、耐量子コンピュータ性をもつ鍵共有方式である。
【発明の効果】
【0061】
西岡方式の安全性は、乗法群や楕円曲線上の離散対数問題の困難さに依存するので、量子コンピュータが出現すると、多項式時間で解読可能となる恐れがある。
【0062】
一方、請求項1、請求項2、請求項3および請求項4の発明において、有限体Fq上の高次多変数連立代数方程式の解法の困難さに依存する鍵共有方式では、高次多変数連立代数方程式の解法がNP完全問題の1つとなるので、量子コンピュータに耐えうる鍵共有方式を提供できる。
【0063】
従ってこの発明によれば安全性を高く保持するものとなる。
【0064】
なお、本発明は、上記において説明した実施形態に限定されるものではなく、その主旨を逸脱しない範囲において種々変更可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【図面の簡単な説明】
【0065】
【図1】本発明に係る鍵共有方法の実施形態例を示す概念図である。
【図2】図1中の利用者Uの通信装置の一例のブロック図である。
【図3】図1中の利用者Vの通信装置の一例のブロック図である。
【図4】図1中のシステムセンタの一例のブロック図である。
【符号の説明】
【0066】
100…システムセンタ
200…利用者Uの通信装置
300…利用者Vの通信装置
400…安全でない通信路
101…システムセンタ公開鍵管理簿
201…乱数発生器
202…暗号化関数F(X)
203…共通鍵生成器
204…記憶装置
205…結合器
301…乱数発生器
302…一時暗号化関数T(X)
303…共通鍵生成器
304…記憶装置
【発明を実施するための形態】
【実施例】
【0067】
請求項1の発明の一実施例について説明する。図1はこの発明の第1、第2、第3、第4の実施形態例を示す概念図である。利用者Uが事前にシステムセンタに登録しておいた利用者Uの公開鍵と利用者Vが発生する乱数をもとに生成する利用者Vの一時公開鍵を用いて、利用者Uと利用者Vがそれぞれ共通鍵を生成する場合を示している。
【0068】
図2に利用者Uの通信装置の一例を示す。まず、システムに加入した利用者Uは、システムセンタ100から入手したシステムパラメータと乱数発生器201から発生させた乱数である秘密鍵SKから暗号化関数F(X)を作成し、F(X)を展開してその係数の集合である公開鍵PKを生成し、公開鍵PKを利用者Uの識別情報IDと結合器にて対にして、システムセンタ100の公開鍵管理簿101に登録する。
【0069】
次に、利用者Uが共通鍵Kを生成する手順について説明する。利用者Uはシステムセンタ100から入手したシステムパラメータと利用者Uの秘密鍵SKと利用者Vから受信した利用者Vの一時公開鍵TKから共通鍵生成器により共通鍵Kuを生成する。
【0070】
図3に利用者Vの通信装置を示す。利用者Vは乱数生成器301を用いて乱数である一時秘密鍵TSKを発生し、一時秘密鍵TSKとシステムセンタ100から入手したシステムパラメータを用いて一時暗号関数T(X)を作成し、T(X)を展開して、その係数の集合である一時公開鍵TKとを利用者Uに送信する。利用者Vはシステムセンタにアクセスして利用者Uの公開鍵PKを入手して、利用者Vの一時秘密鍵TSKと利用者Uの公開鍵PKから共通鍵Kvを生成する。
【0071】
図4にシステムセンタの一例を示す。
まず、システムセンタはシステムパラメータを公開する。次に利用者Uの公開鍵PKとIDを受信して公開鍵管理簿に登録し公開する。
【0072】
なお、本発明は、上記において説明した実施形態に限定されるものではなく、その主旨を逸脱しない範囲において種々変更可能であり、それらも本発明の範囲内に包含されるものであることは言うまでもない。
【産業上の利用可能性】
【0073】
この発明は通信者同士がお互いに同一の秘密情報を持たずに共通鍵を確保できる鍵共有方式に関し、高次多変数連立代数方程式を利用して、特に安全性が高く、耐量子コンピュータ性をもつ鍵共有方式を提供するものである。

【特許請求の範囲】
【請求項1】
通信者同士がお互いに同一の秘密情報を持たずに共通鍵を確保できる鍵共有方式において、高次多変数連立代数方程式を利用して、特に安全性が高く、耐量子コンピュータ性をもつ鍵共有方式であって、システムセンタは奇素数qおよび3つの整数[d,r,m]を選んで公開し、利用者Uはシステム加入時に、Fq上の四元数環H上の逆数をもつ任意のm個の要素である秘密鍵[A(i=1,..,m)]を選び、利用者Uが公開されている3つのシステムパラメータ[d,r,m]と秘密鍵[A(i=1,..,m)]から、四元数環上の高次関数である暗号化関数F(X)=Σi=1Πj=0r^jr^jを生成し、利用者Uが暗号化関数F(X)を展開して、展開式の各係数fje0e1e2e3を求め、その集合{fje0e1e2e3}をシステムセンタに利用者Uの公開鍵PKとして利用者Uの識別情報IDとともに送り、利用者Vは、四元数環Hの逆数をもつ任意のm個の要素R(i=1,..,m)を選び、R(i=1,..,m)を利用者Vの一時秘密鍵として、利用者Vは要素R(i=1,..,m)を用いて、Fq上の四元数環上の高次関数である一時暗号化関数T(X)=Σi=1Πj=0r^jr^jを生成し、利用者VはT(X)を展開して、展開式の各係数tje0e1e2e3を求め、その集合{tje0e1e2e3}を利用者Vの一時公開鍵TKとして、利用者VはTKを利用者Uに送り、利用者Vはシステムセンタの公開鍵管理簿から入手した利用者Uの公開鍵PKと利用者Vの一時秘密鍵TSKから共通鍵Kv1,Kv2を生成し、利用者Uは利用者Vから送られてきた一時公開鍵TKと自分の秘密鍵SKから共通鍵Ku1,Ku2を生成することを特徴とする鍵共有方式。
【請求項2】
前記の暗号化関数F(X)をF(X)=Σi=1Πj=1ijとして、一時暗号化関数T(X)をT(X)=Σi=1Πj=1ijとすることを特徴とする請求項1記載の鍵共有方式。
【請求項3】
前記の暗号化関数F(X)をF(X)=Σi=1(ai0,ai1,ai2,x,ai3として、一時暗号化関数T(X)をT(X)=Σi=1(bi0,bi1,bi2,bi3とすることを特徴とする請求項1記載の鍵共有方式。
【請求項4】
システムセンタは素数qおよび3つの正整数[d,m,n]を選んで公開し、利用者Uはシステム加入時に、Fq上のk,aij(i=1,..,m;j=1,..,n)を選び、X=(x,・・・,x∈Fq[x,..,xを変数としてA(X)=ai1+・・・+ain(i=1,..,m)を用いて、n変数多項式環Fq[x,..,x]上の暗号化関数F(X)=Σi=1[A(X)+A(X)d−1+..+A(X)]を生成し、利用者Uは暗号化関数F(X)を展開して、展開式の各係数fje1...enを求め、その集合{fje1...en}をシステムセンタに利用者Uの公開鍵PKとして利用者Uの識別情報IDとともに送り、利用者Vは、Fq上のh,bij(i=1,..,m;j=1,..,n)を選び、B(X)=bi1+・・・+bin(i=1,..,m)を用いて、n変数多項式環Fq[x,..,x]上の一時暗号化関数T(X)=Σi=1[B(X)+B(X)d−1+..+B(X)]を生成し、利用者VはT(X)を展開して、展開式の各係数tje1...enを求め、その集合{tje1...en}を利用者Vの一時公開鍵TKとすることを特徴とする請求項1記載の鍵共有方式。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate


【公開番号】特開2012−129966(P2012−129966A)
【公開日】平成24年7月5日(2012.7.5)
【国際特許分類】
【出願番号】特願2010−294731(P2010−294731)
【出願日】平成22年12月16日(2010.12.16)
【新規性喪失の例外の表示】特許法第30条第1項適用申請有り 発明の掲載日 2010年7月4日、8月24日、10月7日 発明を掲載したホームページアドレス(URL) http://www.iacr.org/
【出願人】(510318055)
【Fターム(参考)】