JP4664615B2 - 秘密分散システム - Google Patents
秘密分散システム Download PDFInfo
- Publication number
- JP4664615B2 JP4664615B2 JP2004117134A JP2004117134A JP4664615B2 JP 4664615 B2 JP4664615 B2 JP 4664615B2 JP 2004117134 A JP2004117134 A JP 2004117134A JP 2004117134 A JP2004117134 A JP 2004117134A JP 4664615 B2 JP4664615 B2 JP 4664615B2
- Authority
- JP
- Japan
- Prior art keywords
- partial
- engine
- information
- secret key
- signature
- 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.)
- Expired - Lifetime
Links
Images
Description
この種の技術としては、(t,l)型を用いた(t,lm)型の秘密分散方式がある(S. R. Blackburm, M. Burmester, Y. Desmedt and P. R. Wild, “Efficient multiplicative sharing schemes”, Advances in Cryptology-EURO-CRYPT ’96, pp. 107-118, 1996.(以下、文献[BBDW96]という))。但し、文献[BBDW96]の方式は、正の整数mに対し、次の(1)式を満たすlに関するものである。
t=3 b≧3 → l≧3
t=4 b≧6 → l≧6
となり、t≧4ではt<lとなる。すなわち、t≧4では、(t,t)型を用いた(t,n)型の秘密分散方式を構築不可能となっている。
=d1,0+d1,1+d1,2 (2回目)
=d2,0+d2,1+d2,2 (3回目)
=d3,0+d3,1+d3,2 (4回目) …(3)
また、f(x)=a0+a1X (mod 3)とする。
f2(x)=1 (mod 3)
f3(x)=2 (mod 3)
f4(x)=0+X (mod 3)
f5(x)=1+X (mod 3)
f6(x)=2+X (mod 3)
f7(x)=0+2X (mod 3)
f8(x)=1+2X (mod 3)
f9(x)=2+2X (mod 3)
各機関fjは(d0,fj(∞),d1,fj(0),d2,fj(1),d3,fj(2))を持つ。具体的に各機関に保管される部分情報の集合は図12に示す通りであり、機関の組合せと対象の部分情報は図13に示す通りである。
文献[BBDW96]の方式では、t=3におけるn>32の場合とt≧4の場合には(t,lm)型の秘密分散の構築が不可であるため、(2,n)型の秘密分散の構築手法が一般化されていない。
a2=(a1L2−1)/e
M=C1 a1(C2 a2)-1 (mod N)
さらに、第4の発明は、第3の発明において、前記復号対象データC2に代えて、署名対象データS2(=M)を用い、前記復号結果C1に代えて、署名結果S1(=MdL^2(mod N)、^はべき乗を示す記号)を用い、前記最終復号結果Mを求める手段に代えて、前記署名結果S1(=(Md)e)、前記署名対象データS2(=(Md)L^2)及び下記式に基づいて、演算処理を実行し、最終署名結果Mdを求める手段とを備えた秘密分散システムである。
a2=(a1L2−1)/e
Md=S1 a1(S2 a2)-1 (mod N)
また、第5の発明は、公開鍵及び秘密鍵dを用いるRSA暗号系に適用され、互いにネットワークを介して接続されたn個の機関及びユーザ装置を備え、n個の機関に前記秘密鍵dの部分最終情報が分散されたとき、その中の任意のt個の機関により、前記秘密鍵dを算出せずに復号結果又は署名結果を生成可能な(t,n)型の秘密分散システムに使用されるコンピュータ読み取り可能な記憶媒体であって、前記n個の各機関内のコンピュータに、前記公開鍵及び前記秘密鍵dを生成する手段と、この秘密鍵dに基づいて生成された(n,n)型の1個の部分情報di(0≦i≦n)を保持する手段と、tを底としたnの対数logtn以上の最小の整数をrとしたとき、前記部分情報diを(t,n)型のt(r+1)個の部分乱数とし、そのうちのr+1個の部分乱数を前記各機関の識別番号のt進表示(tj桁目の値k、0≦k≦t−1、0≦j≦r)に基づいて、それぞれ各機関に分散する手段と、前記各機関から分散されたn(r+1)個の部分乱数をt進表示の桁tj毎にまとめてr+1個の部分最終情報dj,kを得る手段、前記ユーザ装置から受けた処理対象データを前記部分最終情報dj,kに基づいて演算処理し、得られた部分出力を前記ユーザ装置に返信する手段、を実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
a2=(a1L2−1)/e
M=C1 a1(C2 a2)-1 (mod N)
また、第7の発明は、第6の発明において、前記復号対象データC2に代えて、署名対象データS2(=M)を用い、前記復号結果C1に代えて、署名結果S1(=MdL^2(mod N)、^はべき乗を示す記号)を用い、前記最終復号結果Mを求める手段に代えて、前記署名結果S1(=(Md)e)、前記署名対象データS2(=(Md)L^2)及び下記式に基づいて、演算処理を実行し、最終署名結果Mdを求める手段とを実現させるためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体である。
a2=(a1L2−1)/e
Md=S1 a1(S2 a2)-1 (mod N)
(作用)
従って、第1,2,5の発明は以上のような手段を講じたことにより、n個の各機関が、公開鍵及び秘密鍵dを生成し、この秘密鍵dに基づいて生成された(n,n)型の1個の部分情報di(0≦i≦n)を保持し、tを底としたnの対数logtn以上の最小の整数をrとしたとき、この部分情報diを(t,n)型のt(r+1)個の部分乱数とし、そのうちのr+1個の部分乱数を各機関の識別番号のt進表示(tj桁目の値k、0≦k≦t−1、0≦j≦r)に基づいて、それぞれ各機関に分散し、各機関から分散されたn(r+1)個の部分乱数をt進表示の桁tj毎にまとめてr+1個の部分最終情報dj,kを得る。
本実施形態は、文献[BF97]における(2,2)型から(2,n)型の秘密分散を構築する方式を一般化した(t,n)型の秘密分散システムである。
具体的には、文献[BF97]の方式を用いて各機関Piが秘密鍵dの(n,n)型の部分情報diを保持すると、全ての機関P1〜Pnがそれぞれ部分情報diを(t,n)型の部分乱数情報として分配し、各機関P1〜Pnが部分乱数情報を桁毎にまとめて複数の部分情報dj,kを得る(t,n)型の秘密分散システムとなっている。
((t,n)型の秘密分散)
各機関P1〜Pnは、公開鍵(e,N)及び秘密鍵dを生成すると、文献[BF97]の方式に基づいて、秘密鍵dを(2,n)型の部分情報とし、そのうちのr+1個の部分情報をそれぞれ各機関P1〜Pnに分散する。
次に、全ての各機関Piは、自己の部分情報diのディーラーとして機能する。すなわち、全ての各機関Piは、(9)式に示すように、自己の部分情報diを示す(t,n)型の部分乱数情報Sj,l(0≦j≦r,0≦l≦t−2)を生成する(ST2)。但し、r=「logt n」である。
=S1,0+S1,1+…+S1,t-2+S1,t-1
= …
=Sj,0+Sj,1+…+Sj,t-2+Sj,t-1
= …
=Sr,0+Sr,1+…+Sr,t-2+Sr,t-1
次に、全ての各機関Piは、識別番号をzとしたとき、以下のステップST3〜ST4に示すように、各機関Pz(1≦z≦n)と互いに部分乱数情報Sj,lを分散しあう。
すなわち、機関Pzの識別番号zを(10)式に示すように、t進数に変換する(ST3)。
z=βr,ztr+βr-1,ztr-1+…+βj,ztj+…+β0,z …(10)
簡単のため、(10)式を(11)式のように表記する。
z(t)=βr,z βr-1,z … βj,z … β0,z …(11)
但し、t進値βr,z∈{0,…,t-1}
また、各機関Piは、z(t)における各桁tj毎のt進値βに基づいて、次に示すr+1個の部分乱数情報を含む集合Sを機関Pzに送信する(ST4)。
d=d0,0+d0,1+…+d0,t-1 (t0桁目)
=d1,0+d1,1+…+d1,t-1 (t1桁目)
= … ( … )
=dr,0+dr,1+…+dr,t-1 (tr桁目) …(13)
例えば、(3,27)型の秘密分散における機関z=20の保管情報は、以下の通りである。
20=0×33+2×32+0×31+2×30
20(3)=0202 (3進表示)
よって、機関P20は、次の(14)式に示す全ての部分情報のうち、識別番号zの3進表示(0202)に対応する部分情報(d3,0,d2,2,d1,0,d0,2)を保管する。
=d2,0+d2,1+d2,2 (32桁目)
=d1,0+d1,1+d1,2 (31桁目)
=d0,0+d0,1+d0,2 (30桁目) (14)
(分散復号化)
n個の機関P1〜Pnのうち、任意のt個の機関Tz(この集合をΛとする)は、ユーザ装置Uからの復号依頼により、ユーザ装置Uの公開鍵(e,N)で暗号化されたデータC=Me(mod N)を図4のステップST11〜ST16に示すように分散復号化する。
続いて、ユーザ装置Uは、t個の機関Ta,Tb∈Λ(a≠b)におけるt進表示の各桁tj(0≦j≦r)毎に、t進表示の値βが全て異なる(βj,a ≠ βj,b)という条件を満たす桁tjが有るか否かを判定する(ST12)。
上述したように本実施形態によれば、n個の各機関P1〜Pnが、公開鍵及び秘密鍵dを生成し、この秘密鍵dに基づいて生成された(n,n)型の1個の部分情報di(0≦i≦n)を保持し、tを底としたnの対数logtn以上の最小の整数をrとしたとき、この部分情報diを(t,n)型のt(r+1)個の部分乱数Sjとし、そのうちのr+1個の部分乱数Sjを各機関Piの識別番号zのt進表示(tj桁目の値k、0≦k≦t−1、0≦j≦r)に基づいて、それぞれ各機関P1〜Pnに分散し、これら分散されたn(r+1)個の部分乱数をt進表示の桁tj毎にまとめてr+1個の部分情報dj,kを得る。
=d2,0+d2,1+d2,2 (32桁目)
=d1,0+d1,1+d1,2 (31桁目)
=d0,0+d0,1+d0,2 (30桁目)
まず、分散復号が可能な場合を示す。27個の機関のうち、機関P20,P23,P26が分散復号プロトコルに介入するとき、復号操作Cd=Med=Mは成功する。ここで、各機関P20,P23,P26の3進表示は、P20=0202,P23=0212,P26=0222であり、それぞれの保管情報は図6に示す通りとなっている。ここで、31桁に注目すると、(17)式に示すように、d=d1,0+d1,1+d1,2からdによる復号化処理が可能となる。
Cd1,0・Cd1,1・Cd1,2=Med
=M (mod N) …(17)
ところが、P23に代えてP11を用いた各機関P20,P23,P11では、復号操作は失敗する。すなわち、各機関の3進表示は、P20=0202,P23=0212,P11=0102であり、それぞれの保管情報は図7に示す通りである。
ここで、機関の総数nが大きく、t個以上の機関を比較的自由に選択可能な場合、本実施形態の(t,n)型の秘密分散が適している。すなわち、機関の総数nが大きいときには復号不能となっても、t個の機関Pを再編成して分散復号プロトコルをし直せばよい。
しかしながら、文献[Ped91b]の方式では、衝突の可能性はないものの、機関の総数nに比例して関係式の数が膨大になってしまう。よって、衝突の可能性の低い範囲で、独立多項式を最小限に抑えることが好ましい。
次に、本発明の第2の実施形態について説明するが、その前に本実施形態の前提となるRSA共通法誤用プロトコルについて述べる。
C2=Me2 (mod N) …(20)
ここで、異なる公開指数e1,e2の最大公約数gcd(e1,e2)=1である場合、以下のステップSTc1〜STc3を行うと、2つの暗号文C1,C2からメッセージMを復元できる(D. R. Stinson, “CRYPTOGRAPHY : Theory and Practice”, CRC Press, Inc. Boca Raton, Florida, U.S.A., 1995.(以下、文献[Sti95]という))。
(ステップSTc2)a2=(a1e1−1)/e2
(ステップSTc3)M=C1 a1(C2 a2)-1 (mod N)
また、上記処理(Step c1〜c3)を次のように表記する。
以上のように、RSA暗号系においては、所定の条件を満たすとき、メッセージMを復元可能なプロトコルが存在する。このプロトコルがRSA共通法誤用プロトコルと呼ばれている。
(a)メッセージMが同じである。
(b)法Nが共通する。
(c)互いに異なる公開指数(e1,e2)の最大公約数gcd(e1,e2)=1である。
但し、以下の説明では、公開指数(e1,e2)を(L2,e)と表記している。また、公開指数L2の元となるLは、L=n!に代えて、L=(n−1)!としてもよい。
また、ユーザ装置及び各機関は、ハードウェア的な構成に関しては図1及び図2に示した通りとし、機能に関しては第1実施形態とは異なるので、以下に説明する。
機関Piは、[FMY98]の方式に基づいて、法Nの部分情報(pj,qj)を作成する機能と、これら部分情報pj,qjをそれぞれ各機関P1〜Pnに分散する機能と、各機関Pjの(pj,qj)を基に、公開鍵(e,N)を生成する機能と、秘密鍵dから(t,n)型の部分情報sjを得る機能と、夫々部分情報(pj,qj)及びsjを保持する機能と、ユーザから受けた暗号文C(=C2=Me (mod N))を復号処理して得られた部分出力Zjをユーザ装置Uに返信する機能とをもっている。
((t,n)型の秘密分散)
各機関は互いに、文献[FMY98]の方式に基づいて、秘密鍵dを(t,n)型の部分情報とし、対応する部分情報sjを個別にn個の機関P1〜Pnに分散する。
次に、各機関Pjは、(n,n)型の秘密鍵dをSum-to-Polyの技術により、(t,n)型の秘密鍵dに変換する((t,n)型秘密分散完了)。
f(x)=d+b1x+b2x2+…+bt-1xt-1 …(21)
この式は、y切片を秘密鍵dとしたk−1次の多項式であり、ラグランジュの補間法により、k個の座標点(j,f(j))から一意に定まる性質をもっている。但し、k−1個の座標点からは一意に定まらず、任意のy切片が可能となり、秘密鍵dを得られない性質もある。
n個の機関のうち、任意のt個の機関Tz(この集合をΛとする)は、ユーザ装置Uからの復号依頼により、ユーザ装置Uの公開鍵(e,N)で暗号化されたデータC=Me(mod N)を図8のステップST21〜ST24に示すように分散復号化する。ここで、L=n!かつ最大公約数gcd(e,L2)=1とする。
各機関Tjは、次の(22)式〜(24)式の通り、それぞれ自己の部分情報sjを用いて部分出力Zjを算出し、得られた部分出力Zjをユーザ装置Uに返信する(ST22)。
(分散署名)
なお、ユーザ装置Uは、分散復号に限らず、t個の機関Tzに分散署名を行わせてもよい。
この場合、ユーザ装置Uは、図9に示すように、復号対象の暗号文Cに代えて、署名対象データS1(=M)を用い(ST21a)、復号結果の暗号文ML2に代えて、署名結果S2(=(Md)L^2(mod N)、^はべき乗を示す記号)を用いる(ST23a)。
a2=(a1L2−1)/e
M=C1 a1(C2 a2)-1 (mod N)
ここで、RSA共通法誤用プロトコルは、(27)式に示すように、健全性を有している。
=Md(mod N) …(27)
(分散署名の変形例)
なお、上述した分散署名は、図10に示すように変形してもよい。すなわち、ステップST23aの後、ユーザ装置Uは、この署名対象データS1及び署名結果S2の組を図示しない相手先の署名検証装置に送信する(ST25a)。
署名検証装置は、署名対象データS1及び第1公開鍵(e,N)から第1比較データD1(=Me (mod N))を算出し、署名結果S2及び第2公開鍵(e,N)から第2比較データD2(=ML^2 (mod N))を算出する(ST26a)。
a2=(a1L2−1)/e …(29)
M=D1 a1(D2 a2)-1 (mod N) …(30)
ここで、出力Mと署名対象データS1とが一致するとき、署名検証装置は、ユーザ装置Uの署名を正当と認める(ST28a)。
上述したように本実施形態によれば、RSA共通法誤用プロトコルを適用可能な条件のRSA暗号系において、n個の機関P1〜Pnに秘密鍵dの部分情報sjが分散されたとき、ユーザ装置Uが、t個の機関Tzを選択して暗号化データC1を送信し、t個の各機関Tzが、暗号化データC1(=Me (mod N))を演算処理して得られた部分出力Zjをユーザ装置に返信し、ユーザ装置Uが、t個の部分出力Zjを合成して復号結果C2(=ML^2 (mod N))を得ると共に、復号結果C2、処理対象データC1及びRSA共通法誤用プロトコルに基づいて、演算処理を実行し、最終復号結果Mを求める。
すなわち、本実施形態によれば、所定の条件で公開鍵を作成することにより、t個の機関の組合せとは無関係に、確実に復号処理・署名処理を実行することができる。
その他、本発明はその要旨を逸脱しない範囲で種々変形して実施できる。
Claims (1)
- 素因数分解問題に基づく暗号系に用いられ、秘密鍵を生成して分配する分配者が無い環境で、互いに送受信可能なn個の機関装置及びユーザ装置を備え、n個の機関装置に秘密鍵の部分最終情報が分散され、且つ、いずれの機関装置も自己の部分最終情報だけでは前記秘密鍵を算出不可能な環境にあるとき、前記n個の機関装置のうち、任意のt個の機関装置により、前記秘密鍵を算出せずに、公開鍵に基づく暗号化データから復号結果を生成可能で署名対象データから署名結果を生成可能な(t,n)型の秘密分散システムであって、
前記n個の各機関装置は、
前記公開鍵及び前記秘密鍵を生成する手段と、
前記秘密鍵の(n,n)型の部分情報を保持する手段と、
前記部分情報を(t,n)型の部分乱数情報として当該各機関装置の識別番号のt進表示に基づいて当該各機関装置と互いに分配しあう手段と、
前記分配しあった部分乱数情報を前記t進表示の桁毎にまとめて複数の部分最終情報を得る手段と、
前記ユーザ装置から受けた前記暗号化データ又は前記署名対象データである処理対象データを前記部分最終情報に基づいて演算処理し、得られた部分出力を前記ユーザ装置に返信する手段とを有し、
前記ユーザ装置は、
前記t個の機関装置を選択し、この選択したt個の各機関装置に前記処理対象データを送信する手段と、
前記t個の各機関装置から受信した部分出力を合成して前記復号結果又は署名結果を得る手段とを備えたことを特徴とする秘密分散システム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004117134A JP4664615B2 (ja) | 2004-04-12 | 2004-04-12 | 秘密分散システム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2004117134A JP4664615B2 (ja) | 2004-04-12 | 2004-04-12 | 秘密分散システム |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20989199A Division JP3560860B2 (ja) | 1999-07-23 | 1999-07-23 | 秘密分散システム、装置及び記憶媒体 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004246377A JP2004246377A (ja) | 2004-09-02 |
JP4664615B2 true JP4664615B2 (ja) | 2011-04-06 |
Family
ID=33028590
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2004117134A Expired - Lifetime JP4664615B2 (ja) | 2004-04-12 | 2004-04-12 | 秘密分散システム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4664615B2 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5063777B2 (ja) | 2008-03-10 | 2012-10-31 | 三菱電機株式会社 | 秘密情報管理装置及び情報処理装置及び秘密情報管理システム |
JP5669204B2 (ja) * | 2011-03-17 | 2015-02-12 | Necソリューションイノベータ株式会社 | 分散情報管理システム、分散情報管理方法、および分散情報管理プログラム |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP3027988B2 (ja) * | 1991-01-31 | 2000-04-04 | 松下電器産業株式会社 | 識別情報に基づく秘密鍵生成方法 |
-
2004
- 2004-04-12 JP JP2004117134A patent/JP4664615B2/ja not_active Expired - Lifetime
Also Published As
Publication number | Publication date |
---|---|
JP2004246377A (ja) | 2004-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3560860B2 (ja) | 秘密分散システム、装置及び記憶媒体 | |
Ostrovsky et al. | A survey of single-database private information retrieval: Techniques and applications | |
US8559631B1 (en) | Systems and methods for efficient decryption of attribute-based encryption | |
May | Using LLL-reduction for solving RSA and factorization problems | |
US5146500A (en) | Public key cryptographic system using elliptic curves over rings | |
US8520854B2 (en) | Sharing a secret using polynomials over polynomials | |
Dartois et al. | SQISignHD: new dimensions in cryptography | |
EP0936776B1 (en) | A network system using a threshold secret sharing method | |
US6731755B1 (en) | Split-key cryptographic system and method | |
Joux et al. | The past, evolving present, and future of the discrete logarithm | |
Frikken | Practical private DNA string searching and matching through efficient oblivious automata evaluation | |
CN108718231A (zh) | 一种全同态加密方法、装置和计算机可读存储介质 | |
Jayapandian et al. | Secure and efficient online data storage and sharing over cloud environment using probabilistic with homomorphic encryption | |
CN110750797B (zh) | 基于组合加密的云数据库加密方法 | |
De Santis et al. | Efficient provably-secure hierarchical key assignment schemes | |
Hui-Min et al. | A cryptographic implementation for dynamic access control in a user hierarchy | |
Mohan et al. | Homomorphic encryption-state of the art | |
Andreevich et al. | Pseudo-probabilistic block ciphers and their randomization | |
JP4664615B2 (ja) | 秘密分散システム | |
Koç et al. | Development of Cryptography since Shannon | |
JP4528114B2 (ja) | 鍵生成装置、暗号化装置、検査装置、復号化装置並びに鍵生成プログラム、暗号化プログラム、検査プログラム、復号化プログラム | |
Fuchsbauer | An introduction to probabilistic encryption | |
Blass et al. | Epic: Efficient privacy-preserving counting for mapreduce | |
JP2002023626A (ja) | 公開鍵暗号方法および公開鍵暗号を用いた通信システム | |
Katti et al. | Nonce Generation For The Digital Signature Standard. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20060721 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20091208 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100122 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100921 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20101117 |
|
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: 20101214 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20110107 |
|
R151 | Written notification of patent or utility model registration |
Ref document number: 4664615 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R151 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140114 Year of fee payment: 3 |
|
EXPY | Cancellation because of completion of term |