JP5355263B2 - 鍵共有装置、鍵共有方法及びプログラム - Google Patents
鍵共有装置、鍵共有方法及びプログラム Download PDFInfo
- Publication number
- JP5355263B2 JP5355263B2 JP2009161663A JP2009161663A JP5355263B2 JP 5355263 B2 JP5355263 B2 JP 5355263B2 JP 2009161663 A JP2009161663 A JP 2009161663A JP 2009161663 A JP2009161663 A JP 2009161663A JP 5355263 B2 JP5355263 B2 JP 5355263B2
- Authority
- JP
- Japan
- Prior art keywords
- key
- arbitrary
- sharing
- value
- cyclic group
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Description
GをLビット(L≧1)の位数q(qは素数)の巡回群、gをGの生成元とする。H:{0,1}*→{0,1}Lを任意長のビット列をLビットのビット列に写すハッシュ関数とする。また、ID(algo)を、共有した鍵Kの使いかた(認証鍵、暗号化鍵など)を記述するアルゴリズム識別子とする。
識別子ID(1)と秘密鍵a(1)∈Zqと公開鍵A(1)=ga(1)∈Gをもつ装置PA(1)と、識別子ID(2)と秘密鍵a(2)∈Zqと公開鍵A(2)=ga(2)∈Gをもつ装置PA(2)とは、以下のようにして鍵Kを共有する。
φ(1)=gr(1)・r(2)∈G …(1)
φ(2)=ga(1)・a(2)∈G …(2)
となり、装置PA(1),PA(2)で同一の鍵Kが共有される。
まず、本形態の概要を説明する。
次に、本発明の第1実施形態を説明する。第1実施形態では、P=2であり、W(u)=w(u,1)・w(u,2)であり、w(u,p)がa(p)とr(p)との線形和である。また、第1鍵共有装置の記憶部が、少なくとも、秘密値a(i)と公開値A(j)=ga(j)∈Gとを格納し、第1鍵共有装置の共有元生成部が、少なくとも、秘密値a(i)と、公開値A(j)=ga(j)∈Gと、任意値r(i)と、第2任意元X(j)=gr(j)∈Gとを用い、巡回群Gの元gW(u)∈Gを共有元σ(u)として生成する。また、第2鍵共有装置の記憶部が、少なくとも、秘密値a(j)と公開値A(i)=ga(i)∈Gとを格納し、第2鍵共有装置の共有元生成部が、少なくとも、秘密値a(j)と、公開値A(i)=ga(i)∈Gと、任意値r(j)と、第1任意元X(i)=gr(i)∈Gとを用い、巡回群Gの元gW(u)∈Gを共有元σ(u)として生成する。
図2は、第1実施形態の鍵共有システム100の構成を説明するためのブロック図である。なお、図2では、鍵共有装置間で情報をやり取りするための手段であるネットワークや可搬型の記録媒体の記載は省略してある(他の図でも同様)。
第1実施形態では、以下を公開パラメータとする。
鍵共有処理の事前処理として以下の処理が実行される。
図4(A)は、鍵共有装置110−1の鍵共有処理を説明するためのフローチャートであり、図4(B)は、鍵共有装置110−2の鍵共有処理を説明するためのフローチャートである。
W(u)=w(u,1)・w(u,2)∈Zq …(3)
w(u,1)=(r(1)・s(u,1)+a(1)・t(u,1))∈Zq …(4)
w(u,2)=(r(2)・s(u,2)+a(2)・t(u,2))∈Zq …(5)
を満たすgW(u)∈Gが、共有元σ(u)として生成される。s(u,1),s(u,2),t(u,1),t(u,2)∈Zqはuごとに定まる定数又は変数である。s(u,1),s(u,2),t(u,1),t(u,2)∈Zq及びUの設定は任意でよいが、すべてのuについてs(u,1)とt(u,1)とや、s(u,2)とt(u,2)とが、必ず0となる設定は好ましくない。以下に、s(u,1),s(u,2),t(u,1),t(u,2)∈Zq及びUの設定例と、そのときのステップS116−1の処理とを例示する。
本形態では、
U=2 …(6)
s(1,1)=1, t(1,1)=1, s(1,2)=1, t(1,2)=d(2) …(7)
s(2,1)=1, t(2,1)=d(1), s(2,2)=1, t(2,2)=1 …(8)
としたステップS116−1の処理を例示する。すなわち、
σ(1)=g(r(1)+a(1))(r(2)+a(2)・d(2)) …(9)
σ(2)=g(r(1)+a(1)・d(1))(r(2)+a(2)) …(10)
とした場合の例を示す。
d(1)=F(X(1)) …(11)
を生成して出力する。また、ハッシュ演算部116c−1が、任意元X(2)を入力として、ハッシュ値(第2任意元X(j)に応じて値が定まる整数)
d(2)=F(X(2)) …(12)
を生成して出力する。
σ(1)=(X(2)・A(2)d(2))r(1)+a(1)∈G …(13)
=(gr(2)・ga(2)・d(2))r(1)+a(1)
=g(r(1)+a(1))(r(2)+a(2)・d(2))
を生成して出力する。共有元演算部116a−2−1は、ハッシュ値d(1)と、任意元X(2)=gr(2)∈Gと、秘密値a(1)と、公開値A(2)=ga(2)∈Gと、任意値r(1)∈Zqとを入力とし、共有元
σ(2)=(X(2)・A(2))r(1)+a(1)・d(1)∈G …(14)
=(gr(2)・ga(2))r(1)+a(1)・d(1)
=g(r(1)+a(1)・d(1))(r(2)+a(2))
を生成して出力する([ステップS116−1の例]の説明終わり)。
K=H(σ(1), σ(2), X(1), X(2), A(1), A(2), ID(1), ID(2), ID(prot)) …(14')
として生成し、生成した鍵Kを出力する。
本形態では、鍵共有装置110−1と同じ、前述の式(6)〜(10)を満たす共有元σ(u)を生成する。
d(1)=F(X(1)) …(15)
を生成して出力する。また、ハッシュ演算部116c−2が、任意元X(2)を入力として、ハッシュ値(第2任意元X(j)に応じて値が定まる整数)
d(2)=F(X(2)) …(16)
を生成して出力する。
σ(1)=(X(1)・A(1))r(2)+a(2)・d(2)∈G …(17)
=(gr(1)・ga(1))r(2)+a(2)・d(2)
=g(r(1)+a(1))(r(2)+a(2)・d(2))
を生成して出力する。また、共有元演算部116a−2−2は、ハッシュ値d(1)と、任意元X(1)=gr(1)∈Gと、秘密値a(2)と、公開値A(1)=ga(1)∈Gと、任意値r(2)∈Zqとを入力とし、共有元
σ(2)=(X(1)・A(1)d(1))r(2)+a(2)∈G …(18)
=(gr(1)・ga(1)・d(1))r(2)+a(2)
=g(r(1)+a(1)・d(1))(r(2)+a(2))
を生成して出力する([ステップS116−2の例]の説明終わり)。
K=H(σ(1), σ(2), X(1), X(2), A(1), A(2), ID(1), ID(2), ID(prot)) …(19)
として生成し、生成した鍵Kを出力する。
式(13)(14)(17)(18)の変形結果を見ればわかるように、鍵共有装置116−1,2でそれぞれ生成される共有元σ(1)は同一となり、かつ、鍵共有装置116−1,2でそれぞれ生成される共有元σ(2)は同一となる。そして、式(14')(19)を比べれば分かるように、鍵共有装置116−1,2でそれぞれ生成される鍵Kは同一となる。
第1実施形態の変形例1は、ステップS116−1,2の共有元σ(u)の生成処理の変形例である。第1実施形態の変形例1では、式(7)〜(10)の代わりに、
s(1,1)=1, t(1,1)=1, s(1,2)=1, t(1,2)=1 …(19')
s(2,1)=1, t(2,1)=d(1), s(2,2)=1, t(2,2)=d(2) …(20)
とする。すなわち、
σ(1)=g(r(1)+a(1))(r(2)+a(2)) …(21)
σ(2)=g(r(1)+a(1)・d(1))(r(2)+a(2)・d(2)) …(22)
を満たす共有元σ(u)を生成する。
σ(1)=(X(2)・A(2))r(1)+a(1)∈G …(23)
=g(r(1)+a(1))(r(2)+a(2))
σ(2)=(X(2)・A(2)d(2))r(1)+a(1)・d(1)∈G …(24)
=g(r(1)+a(1)・d(1))(r(2)+a(2)・d(2))
を生成して出力する。
σ(1)=(X(1)・A(1))r(2)+a(2)∈G …(25)
=g(r(1)+a(1))(r(2)+a(2))
σ(2)=(X(1)・A(1)d(1))r(2)+a(2)・d(2)∈G …(26)
=g(r(1)+a(1)・d(1))(r(2)+a(2)・d(2))
を生成して出力する。その他は第1実施形態と同様である。
s(1,1)=1, t(1,1)=d(1), s(1,2)=1, t(1,2)=d(2)
、すなわち、
σ(1)=g(r(1)+a(1)・d(1))(r(2)+a(2)・d(2))
を満たす共有元σ(u)を生成する構成でもよい。その他、U≧3の構成、ハッシュ値d(1)又はd(2)の一方のみを用いて共有元σ(u)を生成する構成、任意元X(1)と任意元X(2)の両方に依存するハッシュ値d(3)を用いて共有元σ(u)を生成する構成、ハッシュ値d(1),d(2)を用いずに共有元σ(u)を生成する構成なども可能である。また、d(p)は、ハッシュ値に限定されず、任意元X(1)及び/又は任意元X(2)に応じて値が定まる整数であればよい。例えば、任意元X(1)や任意元X(2)の一部のビットをd(p)としてもよいし、任意元X(1)と任意元X(2)とのビット結合値の一部をd(p)としてもよい。また、
r(i)=F’(r’(i),a(i))
としてもよい。なお、F’は、ハッシュ関数F’:{0,1}*→Zqであり、r’(i)は乱数である。r(j)についても同様な変形を行ってもよい。これによってU=1の場合でも高い安全性を確保できる。その他、本発明の趣旨を遺脱しない範囲で共有元σ(u)の生成方法を変形可能である。
第1実施形態の変形例2は、ステップS117−1,2の鍵生成処理の変形例である。すなわち、第1実施形態では、式(14')(19)によって鍵Kを生成したが、鍵Kは共有元σ(u)に基づいて値が定まればよい。例えば、式(14')(19)のハッシュ関数Hへの入力値となるσ(u),X(1),X(2),A(1),A(2),ID(1),ID(2),ID(prot)のビット結合の順序には制限はない。また、X(1),X(2),A(1),A(2),ID(1),ID(2),ID(prot)の少なくとも一部が省略されてもよく、アルゴリズム識別子ID(algo)、セッション識別子ID(sess)などの他の情報がビット結合対象に加えられてもよい。例えば、
K=H(σ(1), σ(2), X(1), X(2), A(1), A(2), ID(1), ID(2))
K=H(σ(1), σ(2))
K=H(σ(1), σ(2), X(1), X(2), A(1), A(2), ID(1), ID(2), ID(prot), ID(algo))
K=H(σ(1), σ(2) , X(1), X(2), ID(sess))
などを共有する鍵としてもよい。また、例えば、鍵Kの生成に識別子ID(1),ID(2)を用いない場合、ステップS114−1,2で鍵共有装置110−1,2が識別子ID(1),ID(2)を出力せず、ステップS115−1,2で鍵共有装置110−1,2に識別子ID(1),ID(2)が入力されなくてもよい。また、ハッシュ関数Hの代わりに他の関数が用いられてもよいし、ハッシュ関数を用いずに、共有元σ(u)を含む値のビット結合値をそのまま鍵Kとしてもよい。ただし、ステップS117−1,2の鍵生成のための演算は同一でなければならない。
次に、本発明の第2実施形態を説明する。第2実施形態では、P=3、i=1、j∈{2,3}であり、W(u)=w(u,1)・w(u,2)・w(u,3)であり、w(u,p)はa(p)とr(p)との線形和である。第2実施形態では、3つの鍵共有装置で鍵の共有を行う。鍵共有装置の記憶部が、少なくとも、秘密値a(i)とA(j)=ga(j)∈Gとを格納し、鍵共有装置の共有元生成部が、少なくとも、秘密値a(i)と、2つの公開値A(j)=ga(j)∈Gと、任意値r(i)と、2つの第2任意元X(j)=gr(j)∈Gと、巡回群Gの2つの元を巡回群GTの1つの元に写像する双線形関数である関数eとを用い、巡回群GTの元gT W(u)=e(g,g)W(u)∈GTを共有元σ(u)として生成する。
図5〜7は、第2実施形態の鍵共有システム200の構成を説明するためのブロック図である。なお、第1実施形態と共通する部分については、第1実施形態と同じ符号を用いて説明を簡略化する。
第2実施形態では、以下を公開パラメータとする。
[非退化性]すべてのα,β∈Gを巡回群GTの単位元に写す関数ではない。
鍵共有処理の事前処理として以下の処理が実行される。
図10(A)は、鍵共有装置210−1の鍵共有処理を説明するためのフローチャートであり、図10(B)は、鍵共有装置210−2の鍵共有処理を説明するためのフローチャートである。また、図11は、鍵共有装置210−3の鍵共有処理を説明するためのフローチャートである。
W(u)=w(u,1)・w(u,2)・w(u,3)∈Zq …(28)
w(u,1)=(r(1)・s(u,1)+a(1)・t(u,1))∈Zq …(29)
w(u,2)=(r(2)・s(u,2)+a(2)・t(u,2))∈Zq …(30)
w(u,3)=(r(3)・s(u,3)+a(3)・t(u,3))∈Zq …(31)
を満たすgT W(u)∈GTが、共有元σ(u)として生成される。s(u,1),s(u,2),s(u,3),t(u,1),t(u,2),t(u,3)∈Zqはuごとに定まる定数又は変数である。s(u,1),s(u,2),s(u,3),t(u,1),t(u,2),t(u,3)∈Zq及びUの設定は任意でよいが、すべてのuについて、s(u,1)とt(u,1)とや、s(u,2)とt(u,2)とや、s(u,3)とt(u,3)とが、必ず0となる設定は好ましくない。以下に、s(u,1),s(u,2),s(u,3),t(u,1),t(u,2),t(u,3)∈Zq及びUの設定例と、そのときのステップS216−1の処理とを例示する。
本形態では、
U=4 …(32)
s(1,1)=1, t(1,1)=d(1), s(1,2)=1, t(1,2)=1, s(1,3)=1, t(1,3)=1 …(33)
s(2,1)=1, t(2,1)=1, s(2,2)=1, t(2,2)=d(2), s(2,3)=1, t(2,3)=1 …(34)
s(3,1)=1, t(3,1)=1, s(3,2)=1, t(3,2)=1, s(3,3)=1, t(3,3)=d(3) …(35)
s(4,1)=1, t(4,1)=d(1), s(4,2)=1, t(4,2)=d(2), s(4,3)=1, t(4,3)=d(3) …(36)
としたステップS216−1の処理を例示する。すなわち、
σ(1)=g(r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)) …(37)
σ(2)=g(r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)) …(38)
σ(3)=g(r(1)+a(1))(r(2)+a(2))(r(3)+a(3)・d(3)) …(39)
σ(4)=g(r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3)) …(40)
とした場合の例を示す。
d(1)=F(X(1)) …(41)
d(2)=F(X(2)) …(42)
を生成して出力する。また、ハッシュ演算部216d−1が、任意元X(3)を入力として、ハッシュ値(第2任意元X(j)に応じて値が定まる整数)
d(3)=F(X(3)) …(43)
を生成して出力する。
σ(1)=e(X(2)・A(2),X(3)・A(3))r(1)+a(1)・d(1)∈G …(44)
=e(gr(2)・ga(2),gr(3)・ga(3))r(1)+a(1)・d(1)
=e(g,g)(r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)) (式(27)より)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)) (gT=e(g,g)より)
を生成して出力する。
σ(2)=e(X(2)・A(2)d(2),X(3)・A(3))r(1)+a(1)∈G …(45)
=e(gr(2)・ga(2)・d(2),gr(3)・ga(3))r(1)+a(1)
=e(g,g)(r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)) (式(27)より)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)) (gT=e(g,g)より)
を生成して出力する。
σ(3)=e(X(2)・A(2),X(3)・A(3)d(3))r(1)+a(1)∈G …(46)
=e(gr(2)・ga(2),gr(3)・ga(3)・d(3))r(1)+a(1)
=e(g,g)(r(1)+a(1))(r(2)+a(2))(r(3)+a(3)・d(3)) (式(27)より)
=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3)・d(3)) (gT=e(g,g)より)
を生成して出力する。
σ(4)=e(X(2)・A(2)d(2),X(3)・A(3)d(3))r(1)+a(1)・d(1)∈G …(47)
=e(gr(2)・ga(2)・d(2),gr(3)・ga(3)・d(3))r(1)+a(1)・d(1)
=e(g,g)(r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3)) (式(27)より)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3)) (gT=e(g,g)より)
を生成して出力する([ステップS216−1の例]の説明終わり)。
K=H(σ(1), σ(2), σ(3), σ(4), X(1), X(2), X(3), A(1), A(2), A(3), ID(1), ID(2), ID(3), ID(prot)) …(48)
として生成し、生成した鍵Kを出力する。
本形態では、前述の式(32)〜(40)を満たす共有元σ(u)を生成する。
d(1)=F(X(1)) …(49)
d(2)=F(X(2)) …(50)
d(3)=F(X(3)) …(51)
を生成して出力する。
σ(1)=e(X(3)・A(3),X(1)・A(1)d(1))r(2)+a(2)∈G …(52)
=e(gr(3)・ga(3),gr(1)・ga(1)・d(1))r(2)+a(2)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3))
を生成して出力する。
σ(2)=e(X(3)・A(3),X(1)・A(1))r(2)+a(2)・d(2)∈G …(53)
=e(gr(3)・ga(3),gr(1)・ga(1))r(2)+a(2)・d(2)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3))
を生成して出力する。
σ(3)=e(X(3)・A(3)d(3),X(1)・A(1))r(2)+a(2)∈G …(54)
=e(gr(3)・ga(3)・d(3),gr(1)・ga(1))r(2)+a(2)
=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3)・d(3))
を生成して出力する。
σ(4)=e(X(3)・A(3)d(3),X(1)・A(1)d(1))r(2)+a(2)・d(2)∈G …(55)
=e(gr(3)・ga(3)・d(3),gr(1)・ga(1)・d(1))r(2)+a(2)・d(2)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3))
を生成して出力する([ステップS216−2の例]の説明終わり)。
K=H(σ(1), σ(2), σ(3), σ(4), X(1), X(2), X(3), A(1), A(2), A(3), ID(1), ID(2), ID(3), ID(prot)) …(56)
として生成し、生成した鍵Kを出力する。
本形態では、前述の式(32)〜(40)を満たす共有元σ(u)を生成する。
d(1)=F(X(1)) …(57)
d(2)=F(X(2)) …(58)
d(3)=F(X(3)) …(59)
を生成して出力する。
σ(1)=e(X(1)・A(1)d(1),X(2)・A(2))r(3)+a(3)∈G …(60)
=e(gr(1)・ga(1)・d(1),gr(2)・ga(2))r(3)+a(3)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3))
を生成して出力する。
σ(2)=e(X(1)・A(1),X(2)・A(2)d(2))r(3)+a(3)∈G …(61)
=e(gr(1)・ga(1),gr(2)・ga(2)・d(2))r(3)+a(3)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3))
を生成して出力する。
σ(3)=e(X(1)・A(1),X(2)・A(2))r(3)+a(3)・d(3)∈G …(62)
=e(gr(1)・ga(1),gr(2)・ga(2))r(3)+a(3)・d(3)
=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3)・d(3))
を生成して出力する。
σ(4)=e(X(1)・A(1)d(1),X(2)・A(2)d(2))r(3)+a(3)・d(3)∈G …(63)
=e(gr(1)・ga(1)・d(1),gr(2)・ga(2)・d(2))r(3)+a(3)・d(3)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3))
を生成して出力する([ステップS216−3の例]の説明終わり)。
K=H(σ(1), σ(2), σ(3), σ(4), X(1), X(2), X(3), A(1), A(2), A(3), ID(1), ID(2), ID(3), ID(prot)) …(64)
として生成し、生成した鍵Kを出力する。
式(44)〜(47)(52)〜(55)(60)〜(63)の変形結果を見ればわかるように、鍵共有装置216−1,2,3でそれぞれ生成される共有元σ(1)は同一となり、鍵共有装置216−1,2,3でそれぞれ生成される共有元σ(2)は同一となり、鍵共有装置216−1,2,3でそれぞれ生成される共有元σ(3)は同一となり、鍵共有装置216−1,2,3でそれぞれ生成される共有元σ(4)は同一となる。そして、式(48)(56)(64)を比べれば分かるように、鍵共有装置216−1,2,3でそれぞれ生成される鍵Kは同一となる。
第2実施形態の変形例1は、ステップS216−1,2,3の共有元σ(u)の生成処理の変形例である。第2実施形態の変形例1では、式(33)〜(40)の代わりに、
s(1,1)=1, t(1,1)=1, s(1,2)=1, t(1,2)=d(2), s(1,3)=1, t(1,3)=d(3) …(64')
s(2,1)=1, t(2,1)=d(1), s(2,2)=1, t(2,2)=1, s(2,3)=1, t(2,3)=d(3) …(65)
s(3,1)=1, t(3,1)=d(1), s(3,2)=1, t(3,2)=d(2), s(3,3)=1, t(3,3)=1 …(66)
s(4,1)=1, t(4,1)=1, s(4,2)=1, t(4,2)=1, s(4,3)=1, t(4,3)=1 …(67)
、すなわち、
σ(1)=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3)) …(68)
σ(2)=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)・d(3)) …(69)
σ(3)=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)) …(70)
σ(4)=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3)) …(71)
を満たす共有元σ(u)を生成する。
σ(1)=e(X(2)・A(2)d(2),X(3)・A(3)d(3))r(1)+a(1)∈G …(72)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3))
σ(2)=e(X(2)・A(2),X(3)・A(3)d(3))r(1)+a(1)・d(1)∈G …(73)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)・d(3))
σ(3)=e(X(2)・A(2)d(2),X(3)・A(3))r(1)+a(1)・d(1)∈G …(74)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3))
σ(4)=e(X(2)・A(2),X(3)・A(3))r(1)+a(1)∈G …(75)
=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3))
を生成して出力する。
σ(1)=e(X(3)・A(3)d(3),X(1)・A(1))r(2)+a(2)・d(2)∈G …(76)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3))
σ(2)=eT(X(3)・A(3)d(3),X(1)・A(1)d(1))r(2)+a(2)∈G …(77)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)・d(3))
σ(3)=e(X(3)・A(3),X(1)・A(1)・d(1))r(2)+a(2)・d(2)∈G …(78)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3))
σ(4)=e(X(3)・A(3),X(1)・A(1))r(2)+a(2)∈G …(79)
=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3))
を生成して出力する。
σ(1)=e(X(1)・A(1),X(2)・A(2)d(2))r(3)+a(3)・d(3)∈G …(80)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3))
σ(2)=e(X(1)・A(1)d(1),X(2)・A(2))r(3)+a(3)・d(3)∈G …(81)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))(r(3)+a(3)・d(3))
σ(3)=e(X(1)・A(1)・d(1),X(2)・A(2)d(2))r(3)+a(3)∈G …(82)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3))
σ(4)=e(X(1)・A(1),X(2)・A(2))r(3)+a(3)∈G …(83)
=gT (r(1)+a(1))(r(2)+a(2))(r(3)+a(3))
を生成して出力する。
σ(1)=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))(r(3)+a(3)・d(3))
としてもよい。その他、U=2,3やU≧5の構成、ハッシュ値d(1)〜d(3)の一部のみを用いて共有元σ(u)を生成する構成、複数の任意元X(1),X(2),X(3)に依存するハッシュ値を用いて共有元σ(u)を生成する構成、ハッシュ値d(1)〜d(3)を用いずに共有元σ(u)を生成する構成なども可能である。また、d(p)は、ハッシュ値に限定されず、任意元X(1)及び/又は任意元X(2)及び/又は任意元X(3)に応じて値が定まる整数であればよい。例えば、任意元X(1)や任意元X(2)や任意元X(3)の一部のビットをd(p)としてもよいし、これらの任意元の一部をビット結合したビット列の一部をd(p)としてもよい。また、
r(i)=F’(r’(i),a(i))
としてもよい。なお、F’は、ハッシュ関数F’:{0,1}*→Zqであり、r’(i)は乱数である。r(j)についても同様な変形を行ってもよい。これによってU=1の場合でも高い安全性を確保できる。その他、本発明の趣旨を遺脱しない範囲で共有元σ(u)の生成方法を変形可能である。
第1実施形態の変形例2と同様、第2実施形態でも、鍵Kは共有元σ(u)に基づいて値が定まればよく、第1実施形態の変形例2で述べたように鍵Kの生成方法を変形してもよい。
次に、本発明の第3実施形態を説明する。第3実施形態では、IDベース暗号方式を応用した形態であり、P=2であり、W(u)=w(u,1)・w(u,2)・MSKであり、w(u,p)はa(p)とr(p)との線形和である。第1鍵共有装置の記憶部が、少なくとも、元Z(i)=ga(i)・MSK∈Gと、公開値A(j)=ga(j)∈Gと、巡回群Gの元MPK=gMSK∈Gとを格納し、第1鍵共有装置の共有元生成部が、少なくとも、元Z(i)=ga(i)・MSK∈Gと、公開値A(j)=ga(j)∈Gと、任意値r(i)と、任意元X(j)=gr(j)∈Gと、MPK=gMSK∈Gと、巡回群Gの2つの元を巡回群GTの1つの元に写像する双線形関数である関数eとを用い、巡回群GTの元gT W(u)=e(g,g)W(u)∈GTを共有元σ(u)として生成する。また、第2鍵共有装置の記憶部が、少なくとも、元Z(j)=ga(j)・MSK∈Gと、公開値A(i)=ga(i)∈Gと、巡回群Gの元MPK=gMSK∈Gとを格納し、第2鍵共有装置の共有元生成部が、少なくとも、元Z(j)=ga(j)・MSK∈Gと、公開値A(i)=ga(i)∈Gと、任意値r(j)と、任意元X(i)=gr(i)∈Gと、MPK=gMSK∈Gと、巡回群Gの2つの元を巡回群GTの1つの元に写像する双線形関数である関数eとを用い、巡回群GTの元gT W(u)=e(g,g)W(u)∈GTを共有元σ(u)として生成する。
図12,13は、第3実施形態の鍵共有システム300の構成を説明するためのブロック図である。なお、第1実施形態と共通する部分については、第1実施形態と同じ符号を用いて説明を簡略化する。
第3実施形態では、以下を公開パラメータとする。
鍵生成装置330の記憶部にはマスタ秘密鍵MSK∈Zqが安全に格納されている。鍵生成装置330は、鍵共有装置310−1の識別子ID(1)を用い、鍵共有装置310−1の秘密鍵
Z(1)=Y(ID(1))MSK∈G …(84)
を生成する。ここで、
A(1)=Y(ID(1))=ga(1)∈G …(85)
とおくと、式(84)は、
Z(1)=ga(1)・MSK∈G …(86)
となる。秘密鍵Z(1)は、鍵共有装置310−1に送られ、その記憶部311−1に安全に格納される。
Z(2)=Y(ID(2))MSK∈G …(87)
を生成する。ここで、
A(2)=Y(ID(2))=ga(2)∈G …(88)
とおくと、式(87)は、
Z(2)=ga(2)・MSK∈G …(89)
となる。秘密鍵Z(2)は、鍵共有装置310−2に送られ、その記憶部311−2に安全に格納される。
図15(A)は、鍵共有装置310−1の鍵共有処理を説明するためのフローチャートであり、図15(B)は、鍵共有装置310−2の鍵共有処理を説明するためのフローチャートである。
W(u)=w(u,1)・w(u,2)・MSK∈Zq …(90)
w(u,1)=(r(1)・s(u,1)+a(1)・t(u,1))∈Zq …(91)
w(u,2)=(r(2)・s(u,2)+a(2)・t(u,2))∈Zq …(92)
を満たすgT W(u)∈GTが、共有元σ(u)として生成される。s(u,1),s(u,2),t(u,1),t(u,2)∈Zqはuごとに定まる定数又は変数であり、第1実施形態と同様に設定すればよい。
本形態では、まず、第1実施形態の式(6)〜(10)を満たす共有元σ(u)を生成する。この場合、まず、第1実施形態と同様に、ハッシュ演算部116b−1,116c−1(図14(A))が、式(11)(12)のハッシュ値d(1),d(2)を生成して出力する。
σ(1)=e(MPKr(1)・Z(1),X(2)・A(2)d(2))∈GT …(93)
=e(gMSK・r(1)・ga(1)・MSK, gr(2)・ga(2)・d(2))(MPK=gMSK∈Gより)
=e(g,g)(r(1)+a(1))(r(2)+a(2)・d(2))MSK(式(27)より)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))MSK (gT=e(g,g)より)
を生成して出力する。共有元演算部316a−2−1は、ハッシュ値d(1)と、任意元X(2)=gr(2)∈Gと、秘密鍵Z(1)=ga(1)・MSK∈G、マスタ公開鍵MPK=gMSK∈Gと、公開値A(2)=ga(2)∈Gと、任意値r(1)∈Zqとを入力とし、共有元
σ(2)=e(MPKr(1)・Z(1)d(1), X(2)・A(2))∈GT …(94)
=e(gMSK・r(1)・ga(1)・MSK・d(1), gr(2)・ga(2))(MPK=gMSK∈Gより)
=e(g,g)(r(1)+a(1)・d(1))(r(2)+a(2))MSK(式(27)より)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))MSK(gT=e(g,g)より)
を生成して出力する([ステップS316a−1の例]の説明終わり)。
σ(3)=X(2)r(1)∈G …(95)
=gr(2)・r(1)
を生成する(ステップS316b−1)。なお、本形態はU=2の例である。
K=H(σ(1), σ(2), σ(3), X(1), X(2), A(1), A(2), ID(1), ID(2), ID(prot))…(96)
として生成し、生成した鍵Kを出力する。
本形態では、まず、第1実施形態の式(6)〜(10)を満たす共有元σ(u)を生成する。この場合、まず、第1実施形態と同様に、ハッシュ演算部116b−2,116c−2(図14(B))が、式(15)(16)のハッシュ値d(1),d(2)を生成して出力する。
σ(1)=e(X(1)・A(1),MPKr(2)・Z(2)d(2))∈GT …(97)
=e(gr(1)・ga(1),g MSK・r(2)・ga(2)・MSK・d(2))(MPK=gMSK∈Gより)
=e(g,g)(r(1)+a(1))(r(2)+a(2)・d(2))MSK(式(27)より)
=gT (r(1)+a(1))(r(2)+a(2)・d(2))MSK (gT=e(g,g)より)
を生成して出力する。共有元演算部316a−2−2は、ハッシュ値d(1)と、任意元X(1)=gr(1)∈Gと、秘密鍵Z(2)=ga(2)・MSK∈G、マスタ公開鍵MPK=gMSK∈Gと、公開値A(1)=ga(1)∈Gと、任意値r(2)∈Zqとを入力とし、共有元
σ(2)=e(X(1)・A(1)d(1),MPKr(2)・Z(2))∈GT …(98)
=e(gr(1)・ga(1)・d(1),gMSK・r(2)・ga(2)・MSK)(MPK=gMSK∈Gより)
=e(g,g)(r(1)+a(1)・d(1))(r(2)+a(2))MSK(式(27)より)
=gT (r(1)+a(1)・d(1))(r(2)+a(2))MSK(gT=e(g,g)より)
を生成して出力する([ステップS316a−2の例]の説明終わり)。
σ(3)=X(1)r(2)∈G …(99)
=gr(1)・r(2)
を生成する(ステップS316b−2)。なお、本形態はU=2の例である。
K=H(σ(1), σ(2), σ(3), X(1), X(2), A(1), A(2), ID(1), ID(2), ID(prot))…(100)
として生成し、生成した鍵Kを出力する。
式(93)〜(95)(97)〜(99)の変形結果を見ればわかるように、鍵共有装置316−1,2でそれぞれ生成される共有元σ(1)は同一となり、鍵共有装置316−1,2でそれぞれ生成される共有元σ(2)は同一となり、鍵共有装置316−1,2でそれぞれ生成される共有元σ(3)は同一となる。そして、式(96)(100)を比べれば分かるように、鍵共有装置316−1,2でそれぞれ生成される鍵Kは同一となる。
第3実施形態の変形例1は、ステップS316a−1,2、S316b−1,2の共有元σ(u)の生成処理の変形例である。第3実施形態の変形例1では、式(7)〜(10)の代わりに、式(19')〜(22)を満たす共有元σ(u)を生成し、共有元σ(3)は生成しない。
σ(1)=e(MPKr(1)・Z(1),X(2)・A(2))∈GT …(101)
=gT (r(1)+a(1))(r(2)+a(2))MSK
σ(2)=e(MPKr(1)・Z(1)d(1), X(2)・A(2)d(1))∈GT …(102)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))MSK
を生成して出力する。
σ(1)=e(X(1)・A(1),MPKr(2)・Z(2))∈GT …(103)
=gT (r(1)+a(1))(r(2)+a(2))MSK
σ(2)=e(X(1)・A(1)d(1),MPKr(2)・Z(2)d(2))∈GT …(104)
=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))MSK
を生成して出力する。また、この変形例では、共有元σ(3)は生成されない。その他は第3実施形態と同様である。
σ(1)=gT (r(1)+a(1)・d(1))(r(2)+a(2)・d(2))MSK
を生成してもよい。また、例えば、第1実施形態の変形例1で説明したようなs(1,1),t(1,1),s(1,2),t(1,2),s(2,1),t(2,1),s(2,2),t(2,2)やUやd(p)に関する変形を行ってもよい。また、
r(i)=F’(r’(i),a(i))
としてもよい。なお、F’は、ハッシュ関数F’:{0,1}*→Zqであり、r’(i)は乱数である。r(j)についても同様な変形を行ってもよい。これによってU=1の場合でも高い安全性を確保できる。その他、本発明の趣旨を遺脱しない範囲で共有元σ(u)の生成方法を変形可能である。
第1実施形態の変形例2と同様、第3実施形態でも、鍵Kは共有元σ(u)に基づいて値が定まればよく、第1実施形態の変形例2で述べたように鍵Kの生成方法を変形してもよい。
なお、本発明は上述の実施の形態に限定されるものではない。例えば、上述の各実施形態では、位数qを素数としたが、位数qが素数でなく合成数であってもよい。また、上述の各実施形態では、任意値r(i),r(j)等を法qについての整数の剰余環Zqの元としたが、各実施形態で法qについての整数の剰余環Zqの元として扱った各値が整数集合の元であってもよい。
10−10〜P,110−110〜P,210−210〜P,310−310〜P 鍵共有装置
Claims (9)
- 他の装置と鍵を共有する鍵共有装置であって、
前記他の装置の公開値が巡回群Gの元であるA(2)=ga(2)∈Gであり、gは巡回群Gの生成元であり、MSK及びa(2)は整数又は位数qのZ q の元であり、
整数又はZ q の元である任意値r(1)を生成する任意値生成部と、
前記任意値r(1)を用い、第1任意元X(1)=gr(1)∈Gを生成する任意元生成部と、
前記第1任意元X(1)を出力する出力部と、
第2任意元X(2)=gr(2)∈G〔r(2)は整数又はZ q の元〕が入力される入力部と、
少なくとも、巡回群Gの元Z(1)=ga(1)・MSK∈Gと、前記公開値A(2)と、前記任意値r(1)と、前記第2任意元X(2)と、巡回群Gの元MPK=g MSK ∈Gと、前記巡回群Gの2つの元を巡回群G T の元に写像する双線形関数eとを用い、巡回群Gの元g T W(u) =e(g,g) W(u) ∈G T 〔a(1)は整数又はZ q の元であり、W(u)=w(u,1)・w(u,2)・MSKであり、w(u,p)はa(p)とr(p)との線形和、p∈{1,2}、u∈{1,...,U}、Uは1以上の整数定数、gT は巡回群GT の生成元〕を共有元σ(u)として生成する共有元生成部と、
少なくとも前記共有元σ(u)に基づいて値が定まる鍵Kを生成し、当該鍵Kを出力する鍵生成部と、
を有する鍵共有装置。 - 請求項1の鍵共有装置であって、
U≧2であり、
前記共有元生成部は、複数種類の前記共有元σ(1),...σ(U)を生成する、
ことを特徴とする鍵共有装置。 - 他の装置と鍵を共有する鍵共有装置であって、
前記他の装置の公開値が巡回群Gの元であるA(j)=g a(j) ∈Gであり、i,j∈{1,...,P}、j≠i、Pは2以上の整数定数、gは巡回群Gの生成元であり、MSK及びa(j)は整数又は位数qのZ q の元であり、
整数又はZ q の元である任意値r(i)を生成する任意値生成部と、
前記任意値r(i)を用い、第1任意元X(i)=g r(i) ∈Gを生成する任意元生成部と、
前記第1任意元X(i)を出力する出力部と、
第2任意元X(j)=g r(j) ∈G〔r(j)は整数又はZ q の元〕が入力される入力部と、
少なくとも、整数若しくはZ q の元である秘密値a(i)又は巡回群Gの元Z(i)=g a(i)・MSK ∈Gと、前記公開値A(j)と、前記任意値r(i)と、前記第2任意元X(j)とを用い、巡回群Gの元g W(u) ∈G〔W(u)はw(u,1),...,w(u,P)を含むP個以上の整数の積、前記w(u,p)はa(p)とr(p)とを含む複数の整数又はZ q の元の線形和、p∈{1,...,P}、u∈{1,...,U}、Uは1以上の整数定数〕を共有元σ(u)として生成するか、又は、さらに巡回群Gの元を巡回群G T の元に写像する関数eを用い、巡回群G T の元g T W(u) ∈G T 〔g T は巡回群G T の生成元〕を共有元σ(u)として生成する共有元生成部と、
少なくとも前記共有元σ(u)に基づいて値が定まる鍵Kを生成し、当該鍵Kを出力する鍵生成部と、を有し、
r(i)=F’(r’(i),a(i))、r(j)=F”(r’(j),a(j))であり、F’およびF”がハッシュ関数であり、r’(i)およびr’(j)が乱数である、鍵共有装置。 - 他の装置と鍵を共有する鍵共有装置であって、
前記他の装置の公開値が巡回群Gの元であるA(j)=g a(j) ∈Gであり、i,j∈{1,...,P}、j≠i、Pは2以上の整数定数、gは巡回群Gの生成元であり、MSK及びa(j)は整数又は位数qのZ q の元であり、
整数又はZ q の元である任意値r(i)を生成する任意値生成部と、
前記任意値r(i)を用い、第1任意元X(i)=g r(i) ∈Gを生成する任意元生成部と、
前記第1任意元X(i)を出力する出力部と、
第2任意元X(j)=g r(j) ∈G〔r(j)は整数又はZ q の元〕が入力される入力部と、
少なくとも、整数若しくはZ q の元である秘密値a(i)又は巡回群Gの元Z(i)=g a(i)・MSK ∈Gと、前記公開値A(j)と、前記任意値r(i)と、前記第2任意元X(j)とを用い、巡回群Gの元g W(u) ∈G〔W(u)はw(u,1),...,w(u,P)を含むP個以上の整数の積、前記w(u,p)はa(p)とr(p)とを含む複数の整数又はZ q の元の線形和、p∈{1,...,P}、u∈{1,...,U}、Uは3以上の整数定数〕を共有元σ(u)として生成するか、又は、さらに巡回群Gの元を巡回群G T の元に写像する関数eを用い、巡回群G T の元g T W(u) ∈G T 〔g T は巡回群G T の生成元〕を共有元σ(u)として生成する共有元生成部と、
少なくとも複数種類の前記共有元σ(1),...σ(U)に基づいて値が定まる鍵Kを生成し、当該鍵Kを出力する鍵生成部と、
を有する鍵共有装置。 - 他の装置と鍵を共有する鍵共有装置の鍵共有方法であって、
前記他の装置の公開値が巡回群Gの元であるA(2)=g a(2) ∈Gであり、gは巡回群Gの生成元であり、MSK及びa(2)は整数又は位数qのZ q の元であり、
任意値生成部で、整数又はZ q の元である任意値r(1)を生成する任意値生成ステップと、
任意元生成部で、前記任意値r(1)を用い、第1任意元X(1)=g r(1) ∈Gを生成する任意元生成ステップと、
出力部から前記第1任意元X(1)を出力する出力ステップと、
第2任意元X(2)=g r(2) ∈G〔r(2)は整数又はZ q の元〕が入力部に入力される入力ステップと、
共有元生成部で、少なくとも、巡回群Gの元Z(1)=g a(1)・MSK ∈Gと、前記公開値A(2)と、前記任意値r(1)と、前記第2任意元X(2)と、巡回群Gの元MPK=g MSK ∈Gと、前記巡回群Gの2つの元を巡回群G T の元に写像する双線形関数eとを用い、巡回群Gの元g T W(u) =e(g,g) W(u) ∈G T 〔a(1)は整数又はZ q の元であり、W(u)=w(u,1)・w(u,2)・MSKであり、w(u,p)はa(p)とr(p)との線形和、p∈{1,2}、u∈{1,...,U}、Uは1以上の整数定数、g T は巡回群G T の生成元〕を共有元σ(u)として生成する共有元生成ステップと、
鍵生成部で、少なくとも前記共有元σ(u)に基づいて値が定まる鍵Kを生成し、当該鍵Kを出力する鍵生成ステップと、
を有する鍵共有方法。 - 請求項5の鍵共有方法であって、
U≧2であり、
前記共有元生成ステップは、複数種類の前記共有元σ(1),...σ(U)を生成するステップである、
ことを特徴とする鍵共有方法。 - 他の装置と鍵を共有する鍵共有装置の鍵共有方法であって、
前記他の装置の公開値が巡回群Gの元であるA(j)=g a(j) ∈Gであり、i,j∈{1,...,P}、j≠i、Pは2以上の整数定数、gは巡回群Gの生成元であり、MSK及びa(j)は整数又は位数qのZ q の元であり、
任意値生成部で、整数又はZ q の元である任意値r(i)を生成する任意値生成ステップと、
任意元生成部で、前記任意値r(i)を用い、第1任意元X(i)=g r(i) ∈Gを生成する任意元生成ステップと、
出力部から前記第1任意元X(i)を出力する出力ステップと、
第2任意元X(j)=g r(j) ∈G〔r(j)は整数又はZ q の元〕が入力部に入力される入力ステップと、
共有元生成部で、少なくとも、整数若しくはZ q の元である秘密値a(i)又は巡回群Gの元Z(i)=g a(i)・MSK ∈Gと、前記公開値A(j)と、前記任意値r(i)と、前記第2任意元X(j)とを用い、巡回群Gの元g W(u) ∈G〔W(u)はw(u,1),...,w(u,P)を含むP個以上の整数の積、前記w(u,p)はa(p)とr(p)とを含む複数の整数又はZ q の元の線形和、p∈{1,...,P}、u∈{1,...,U}、Uは1以上の整数定数〕を共有元σ(u)として生成するか、又は、さらに巡回群Gの元を巡回群G T の元に写像する関数eを用い、巡回群G T の元g T W(u) ∈G T 〔g T は巡回群G T の生成元〕を共有元σ(u)として生成する共有元生成ステップと、
鍵生成部で、少なくとも前記共有元σ(u)に基づいて値が定まる鍵Kを生成し、当該鍵Kを出力する鍵生成ステップと、を有し、
r(i)=F’(r’(i),a(i))、r(j)=F”(r’(j),a(j))であり、F’およびF”がハッシュ関数であり、r’(i)およびr’(j)が乱数である、鍵共有方法。 - 他の装置と鍵を共有する鍵共有装置の鍵共有方法であって、
前記他の装置の公開値が巡回群Gの元であるA(j)=g a(j) ∈Gであり、i,j∈{1,...,P}、j≠i、Pは2以上の整数定数、gは巡回群Gの生成元であり、MSK及びa(j)は整数又は位数qのZ q の元であり、
任意値生成部で、整数又はZ q の元である任意値r(i)を生成する任意値生成ステップと、
任意元生成部で、前記任意値r(i)を用い、第1任意元X(i)=g r(i) ∈Gを生成する任意元生成ステップと、
出力部から前記第1任意元X(i)を出力する出力ステップと、
第2任意元X(j)=g r(j) ∈G〔r(j)は整数又はZ q の元〕が入力部に入力される入力ステップと、
共有元生成部で、少なくとも、整数若しくはZ q の元である秘密値a(i)又は巡回群Gの元Z(i)=g a(i)・MSK ∈Gと、前記公開値A(j)と、前記任意値r(i)と、前記第2任意元X(j)とを用い、巡回群Gの元g W(u) ∈G〔W(u)はw(u,1),...,w(u,P)を含むP個以上の整数の積、前記w(u,p)はa(p)とr(p)とを含む複数の整数又はZ q の元の線形和、p∈{1,...,P}、u∈{1,...,U}、Uは3以上の整数定数〕を共有元σ(u)として生成するか、又は、さらに巡回群Gの元を巡回群G T の元に写像する関数eを用い、巡回群G T の元g T W(u) ∈G T 〔g T は巡回群G T の生成元〕を共有元σ(u)として生成する共有元生成ステップと、
鍵生成部で、少なくとも複数種類の前記共有元σ(1),...σ(U)に基づいて値が定まる鍵Kを生成し、当該鍵Kを出力する鍵生成ステップと、
を有する鍵共有方法。 - 請求項1から4の何れかの鍵共有装置としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009161663A JP5355263B2 (ja) | 2009-07-08 | 2009-07-08 | 鍵共有装置、鍵共有方法及びプログラム |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2009161663A JP5355263B2 (ja) | 2009-07-08 | 2009-07-08 | 鍵共有装置、鍵共有方法及びプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP2011019042A JP2011019042A (ja) | 2011-01-27 |
| JP5355263B2 true JP5355263B2 (ja) | 2013-11-27 |
Family
ID=43596509
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2009161663A Active JP5355263B2 (ja) | 2009-07-08 | 2009-07-08 | 鍵共有装置、鍵共有方法及びプログラム |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JP5355263B2 (ja) |
Families Citing this family (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP5651611B2 (ja) * | 2012-01-27 | 2015-01-14 | 日本電信電話株式会社 | 鍵交換装置、鍵交換システム、鍵交換方法、プログラム |
Family Cites Families (1)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE602004028670D1 (de) * | 2004-10-29 | 2010-09-23 | Thomson Licensing | Sicherer authentifizierter kanal |
-
2009
- 2009-07-08 JP JP2009161663A patent/JP5355263B2/ja active Active
Also Published As
| Publication number | Publication date |
|---|---|
| JP2011019042A (ja) | 2011-01-27 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| Qiqieh et al. | DNA cryptography based security framework for health-cloud data | |
| CN112930660B (zh) | 用于分配数字签名数据份额的计算机实现的系统和方法 | |
| JP6095792B2 (ja) | 秘密ビット分解装置、秘密モジュラス変換装置、秘密ビット分解方法、秘密モジュラス変換方法、プログラム | |
| US8280039B2 (en) | Signature generating device, signature generating method and signature generating program | |
| Sokouti et al. | Medical image encryption: an application for improved padding based GGH encryption algorithm | |
| CN105339995B (zh) | 解密装置、解密能力提供装置、其方法、以及记录介质 | |
| JP7238977B2 (ja) | 匿名署名システム及び匿名署名方法 | |
| Gupta et al. | Session key based novel lightweight image encryption algorithm using a hybrid of Chebyshev chaotic map and crossover | |
| KR101602361B1 (ko) | 타원 곡선상의 점의 부호화 | |
| JP2018036418A (ja) | 暗号システム、暗号方法及び暗号プログラム | |
| Reyad et al. | Image encryption using koblitz’s encoding and new mapping method based on elliptic curve random number generator | |
| Liu et al. | Image Encryption Technology Based on Fractional Two‐Dimensional Triangle Function Combination Discrete Chaotic Map Coupled with Menezes‐Vanstone Elliptic Curve Cryptosystem | |
| Barman et al. | An efficient hybrid elliptic curve cryptography system with DNA encoding | |
| Ali et al. | DNA-Based elliptic curve cryptography for data security in IoT | |
| Moosavi et al. | End-to-end security scheme for e-Health systems using DNA-based ECC | |
| JP2011019042A (ja) | 鍵共有装置、鍵共有システム、鍵共有方法及びプログラム | |
| Nayak et al. | A study of securing healthcare big data using DNA encoding based ECC | |
| JP2009128773A (ja) | 暗号通信方法、暗号化装置、復号装置、及びそれらのプログラム | |
| JP4922139B2 (ja) | 鍵共有方法、第1装置、第2装置、及び、それらのプログラム | |
| Vijay et al. | Quantum-resistant cryptographic algorithms for secure communication | |
| JP4685621B2 (ja) | 鍵生成装置、暗号化装置、復号化装置、乗法型ナップザック暗号システム、乗法型ナップザック暗号復号方法およびプログラム | |
| JP4861369B2 (ja) | リカバリ署名システム、署名生成装置、署名検証装置、それらの方法、及びプログラム | |
| Sasikaladevi et al. | SNAP-compressive lossless sensitive image authentication and protection scheme based on Genus-2 hyper elliptic curve | |
| JPWO2008013154A1 (ja) | 暗号化/復号化プログラム、暗号化/復号化装置及び拡大体の乗算装置 | |
| Mihailescu et al. | Blockchain search using searchable encryption based on elliptic curves |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20110720 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110922 |
|
| A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130509 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20130604 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20130730 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130820 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130827 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 5355263 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |