JP2019144405A - 入力者装置、演算支援装置、装置、秘匿演算装置、及びプログラム - Google Patents
入力者装置、演算支援装置、装置、秘匿演算装置、及びプログラム Download PDFInfo
- Publication number
- JP2019144405A JP2019144405A JP2018028308A JP2018028308A JP2019144405A JP 2019144405 A JP2019144405 A JP 2019144405A JP 2018028308 A JP2018028308 A JP 2018028308A JP 2018028308 A JP2018028308 A JP 2018028308A JP 2019144405 A JP2019144405 A JP 2019144405A
- Authority
- JP
- Japan
- Prior art keywords
- secret
- integer
- secret information
- distributed
- value
- 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.)
- Granted
Links
Abstract
Description
< 第1の実施の形態>
まず、第1の実施の形態の構成を説明する。
図1に示すように、第1の実施の形態の秘密情報分散秘匿演算システムは、ネットワーク10を介して相互に接続された、入力者装置12、複数(N個)のマシン14N0〜14Nn−1を備えている。マシン14N0〜14Nn−1は、ニューラルネットワークマシン(NNマシン)である。なお、以下では、マシン14N0〜14Nn−1の各々を、マシン14Niで標記する場合もある。
(分散処理)
ユーザはs<pかつn<pの条件を満たす任意の素数pを選択する。
復元に用いる分散情報をWi(i=0、1、2、・・・、k−1)として、その分散情報に対応するサーバIDをxiとする。
従来の秘匿乗算はShamir法による分散値をそのまま用いて乗算するため多項式の次数が変化し、復元に必要な分散値の数が2k−1個に増加する。しかし、以下の文献1で提案されたTUS方式は、秘密情報に乱数を乗じて秘匿化秘密情報を生成し、それを秘密分散する。秘匿乗算を行う際には、秘匿化秘密情報を一時的に復元してスカラー量として扱い、他の分散値と乗算を行う。これにより、乗算した際に多項式の次数は増加しないので、閾値を変化させない秘匿乗算を行うことができる。ただし、秘匿乗算においては秘密情報が漏洩する可能性があるため、秘密情報a、bは0を含まず、乱数も0を含まない(秘匿乗算以外では秘密情報に0を含んでもよい)。TUS方式は秘密分散の処理も含めてすべての秘匿演算はpを法として行われる。
TUS方式は秘匿加減算と秘匿乗除算が別々に構成され、それら単独であれば安全であることが、上記文献2に示されている。しかし、秘匿乗算と秘匿加算を組み合わせて、f(x)=ab+cのような積和演算を行う場合安全でない。以下に、手順1〜5でTUS方式の秘匿乗算abを行い、手順6〜10で秘匿加算ab+cを行う場合を示す。なお、秘密情報a、b、cはa、b、c∈Z/pZであり、分散処理および秘匿加算で生成する乱数αj、βj、λj、γjもαj、βj、λj、γj∈Z/pZである(ただし、乗算において一旦復元されるaと乱数は0ではない)。以下において、
入力:
を収集し、一時的にαaのスカラー量を復元し、全サーバSiに送信する。
を計算する。
と
を収集し、αjとβjを復元し、αjβjを計算する。
を保持する。
と
を収集し、αjβjとλjを復元する。それから、k台のサーバSjは乱数γjを生成し、サーバS0にγj/αjβj、γj/λjを送信する。
を計算する。
を保持する。
手順a:復元者はK台のサーバよりk個の分散情報[ab+c]jを収集する。
からγ(ab+c)、γ0、・・・、γk−1を復元し、乱数
を計算する。
γ(ab+c)×γ−1=ab+c
[a]iは、マシン14Niが保持する値aに対する分散値を示す。
次に、図5を参照して、入力者装置12のCPU22における分散部42が実行する分散1を説明する。
β(b+1)=β×(b+1)
γ(c+1)=γ×(c+1)
次に、図6を参照して、マシン14N0〜14Nn−1の予め定められたk台以上のマシン(マシン14Ni(i=0,・・・,k−1)のCPU22における秘匿積和演算部44が実行する秘匿積和演算1を説明する。
ステップ72で、秘匿積和演算部44は、以下を計算する。
[δ(ab+c+1)]i=α(a+1)×β(b+1)×[δ/αβ]i−α(a+1)×[δ/α]i−β(b+1)×[δ/β]i+γ(c+1)×[δ/γ]i+[δ]i
図8には、マシン14N0〜14Nn−1の各々のCPU22における秘匿除算部46が実行する秘匿除算1のフローチャートが示されている。
[α’a]i=α(a+1)×[α′/α]i−[α′]i
次に、上記の場合において入力者装置12のCPU22における分散部42が実行する分散1′を、図9を参照して説明する。
φ=φ0×φ1×・・・×φk−1
λ=λ0×λ1×・・・×λk−1
η=η0×η1×・・・×ηk−1
μ=μ0×μ1×・・・×μk−1
ステップ116で、分散部42は、ε、φ、λ、η、μの分散値[ε]i、[φ]i、[λ]i、[η]i、[μ]iを計算する。
次に、マシン14N0〜14Nn−1の各々のCPU22における秘匿積和演算部44が実行する秘匿積和演算1’を、図10を参照して、説明する。
とは同じである。
[αβε(a+1)(b+1)]i=α(a+1)×β(b+1)×[ε]i
[αφ(a+1)]i=α(a+1)×[φ]i、[βλ(b+1)]i=β(b+1)×[λ]i、[γη(c+1)]i=γ(c+1)×[η]i
[δ(ab+c+1)]i=δ/αβε×[αβε(a+1)(b+1)]i−δ/αφ×[αφ(a+1)]i−δ/βλ×[βλ(b+1)]i+δ/γη×[γη(c+1)]i+δ/μ×[μ]i
第2の実施の形態の秘密情報分散秘匿演算システムは、第1の実施の形態と同様の構成であるので、同様の構成部分には同一の符号を付して、その説明を省略する。ただし、入力者装置12は、演算支援装置でもある。
まず、図13を参照して、入力者装置12のCPU22における分散部42が実行する分散2を説明する。
α(a+1)=α×(a+1)
β(b+1)=β×(b+1)
γ(c+1)=γ×(c+1)
[δ/αβ]1=δ1×[δ0/αβ]1
[δ/α]1=δ1×[δ0/α]1
[δ/β]1=δ1×[δ0/β]1
[δ/γ]1=δ1×[δ0/γ]1
ステップ164で、分散部42は、[δ0/αβ]0、[δ0/α]0、[δ0/β]0、[δ0/γ]0と[δ/αβ]1、[δ/α]1、[δ/β]1、[δ/γ]1をマシン14NNに送信する。
[δ0(ab+c)]0=α(a+1)×β(b+1)×[δ0/αβ]0−α(a+1)×[δ0/α]0−β(b+1)×[δ0/β]0+γ(c+1)×[δ0/γ]0
[δ(ab+c)]1=α(a+1)×β(b+1)×[δ/αβ]1−α(a+1)×[δ/α]1−β(b+1)×[δ/β]1+γ(c+1)×[δ/γ]1
[δ0(ab+c+1)]0=[δ0(ab+c+1)]0+[0]0+δ0
[δ(ab+c+1)]1=[δ(ab+c+1)]1+[0]1+δ
ここで、[0]0、[0]1は定数項0の分散値であり、事前に準備できる。
[α″/α]1=(α″/α′)[α′/α]1
[α″]1=(α″/α′)[α′]1
[α″a]1=α(a+1)×[α″/α]1−[α″]1
次に、第3の実施の形態を説明する。第3の実施の形態の構成は、第1の実施の形態の構成と同様の部分を有するので、同様の部分には、同様の符号を付してその詳細な説明を省略する。
入力者i(i=0,・・・,u−1)は乱数λi,0,・・・,λi,t−1,αi,0,・・・,αi,t−1,βi,0,・・・,βi,t−1,・・・,γi,0,・・・,γi,t−1を生成し、以下を計算する。
λi=λ,0×・・・×λi,t−1,αi=αi,0×・・・×αi,t−1,βi=βi,0×・・・×βi,t−1,・・・,γi=γi,0×・・・×γi,t−1
入力者iはk=t、n=ut(厳密にはn=u(k−1)+1以上)として、λiをShamir法を用いて秘密分散し、[λi]0,・・・,[λi]ut−1を得る。
[αiλi]t=αi×[λi]t,・・・,[αiλi]2t−1=αi×[λi]2t−1,
[βiλi]2t=βi×[λi]2t,・・・,[βiλi]3t−1=βi×[λi]3t−1,
:
[γiλi](u−1)t=γi×[λi](u−1)t,・・・,[γiλi]ut−1=γi×[λi]ut−1
入力者iは[λi]j,[αiλi]j+t,[βiλi]j+2t,・・・,[γiλi]j+(u−1)t,λi,j,αi,j,βi,j,・・・,γi,jをマシン14NjであるマシンSj(j=0,・・・,t−1)に送る。
Si(i=0,・・・,t−1)は以下を計算する。ただし、下記乗算は分散値同士の乗算であるので、乗算結果はk=u(t−1)+1、n=utとしたShamir法による分散値と等価である。
[λ0λ1・・・λ3]i=[λ0]i×[λ1]i×・・・×[λu−1]i,
[β0β1・・・β3λ0λ1・・・λ3]i+2t=[β0λ0]i+2t×[β1λ1]i+2t×・・・×[βu−1λu−1]i+2t
:
[γ0γ1・・・γ3λ0λ1・・・λ3]i+(u−1)t=[γ0λ0]i+(u−1)t×[γ1λ1]i+(u−1)t×・・・×[γu−1λu−1]i+(u−1)t
Si(i=0,・・・,t−1)はα0,i×α1,i・・・×αu−1,i,β0,i×β1,i・・・×βu−1,i,・・・,γ0,i×γ1,i・・・×γu−1,iを計算し、S0に送る。また、λ′i=λ0,i×λ1,i×λ2,i×・・・×λu−1,iを計算する。
[λ]i+t=[α0α1・・・α3λ0λ1・・・λ3]i+t/(α0α1・・・α3)
[λ]i+2t=[β0β1・・・β3λ0λ1・・・λ3]i+2t/(β0β1・・・β3)
:
[λ]i+(u−1)t=[γ0γ1・・・γ3λ0λ1・・・λ3]i+(u−1)t/(γ0γ1・・・γ3)
Si(i=0,・・・,t−1)は0をk=u(t−1)/2+1,n=ut/2としてShamir法を用いて秘密分散した[0i]jを計算し、以下を計算してRi,j,Ri,j+t,・・・,Ri,j+u‘tをSjに送る。ただし、h=0,・・・,2t−1,u’=u/4であり、ai,hは行列Aの各要素である。
Ri,h=ai,h×[λ]i+ai+t,h×[λ]i+t+ai+2t,h×[λ]i+2t+・・・+ai+(u−1)t,h×[λ]i+(u−1)t+[0i]h,
[λ]i=R0,i+・・・+Rt−1,i,[λ]i+u′=R0,i+u′+・・・+Rt−1,i+u′,,・・・,
(処理3′(1))
入力者0は乱数λ0,0,λ0,1,α0,0,α0,1,β0,0,β0,1,γ0,0,γ0,1を生成し、以下を計算する。
λ0=λ0,0×λ0,1,α0=α0,0×α0,1,β0=β0,0×β0,1,γ0=γ0,0×γ0,1
入力者0はλ0を(2,8)Shamir法で秘密分散し、[λ0]0,・・・,[λ0]7を得る。
入力者0は以下を計算する。
[α0λ0]2=α0×[λ0]2,[α0λ0]3=α0×[λ0]3
[β0λ0]4=β0×[λ0]4,[β0λ0]5=β0×[λ0]5
[γ0λ0]6=γ0×[λ0]6,[γ0λ0]7=γ0×[λ0]7
入力者0は[λ0]0,[α0λ0]2,[β0λ0]4,[γ0λ0]6,λ0,0,α0,0,β0,0,γ0,0をマシンS0に送る。
入力者0は[λ0]1,[α0λ0]3,[β0λ0]5,[γ0λ0]7,λ0,1,α0,1,β0,1,γ0,1をマシンS1に送る。
入力者1は乱数λ1,0,λ1,1,α1,0,α1,1,β1,0,β1,1,γ1,0,γ1,1を生成し、以下を計算する。
λ1=λ1,0×λ1,1,α1=α1,0×α1,1,β1=β1,0×β1,1,γ1=γ1,0×γ1,1
入力者1はλ1を(2,8)Shamir法で秘密分散し、[λ1]0,・・・,[λ1]7を得る。
入力者1は以下を計算する。
[α1λ1]2=α1×[λ1]2,[α1λ1]3=α1×[λ1]3
[β1λ1]4=β1×[λ1]4,[β1λ1]5=β1×[λ1]5
[γ1λ1]6=γ1×[λ1]6,[γ1λ1]7=γ1×[λ1]7
入力者1は[λ1]0,[α1λ1]2,[β1λ1]4,[γ1λ1]6,λ1,0,α1,0,β1,0,γ1,0をマシンS0に送る。
入力者1は[λ1]1,[α1λ1]3,[β1λ1]5,[γ1λ1]7,λ1,1,α1,1,β1,1,γ1,1をマシンS0に送る。
入力者2,3も同様の処理を行う。よって、S0は以下を保持する。
λ0,0,λ1,0λ2,0λ3,0,α0,0,α1,0,α2,0,α3,0,β0,0,β1,0,β2,0,β3,0,γ0,0,γ1,0,γ2,0,γ3,0
S1は以下を保持する。
λ0,1,λ1,1λ2,1λ3,1,α0,1,α1,1,α2,1,α3,1,β0,1,β1,1,β2,1,β3,1,γ0,1,γ1,1,γ2,1,γ3,1
S0は以下を計算する。乗算結果は(5,8)Shamir法による分散値と等価である。
[λ0λ1λ2λ3]0=[λ0]0×[λ1]0×[λ2]0×[λ3]0,
[α0α1α2α3λ0λ1λ2λ3]2=[α0λ0]2×[α1λ1]2×[α2λ2]2×[α3λ3]2
[β0β1β2β3λ0λ1λ2λ3]4=[β0λ0]4×[β1λ1]4×[β2λ2]4×[β3λ3]4
[γ0γ1γ2γ3λ0λ1λ2λ3]6=[γ0λ0]6×[γ1λ1]6×[γ2λ2]6×[γ3λ3]6
[λ0λ1λ2λ3]1=[λ0]1×[λ1]1×[λ2]1×[λ3]1,
[α0α1α2α3λ0λ1λ2λ3]3=[α0λ0]3×[α1λ1]3×[α2λ2]3×[α3λ3]3
[β0β1β2β3λ0λ1λ2λ3]5=[β0λ0]5×[β1λ1]5×[β2λ2]5×[β3λ3]5
[γ0γ1γ2γ3λ0λ1λ2λ3]7=[γ0λ0]7×[γ1λ1]7×[γ2λ2]7×[γ3λ3]7
S0は以下を計算し、S1に送る。
β0β1β2β3=β0,0β1,0β2,0β3,0×β0,1β1,1β2,1β3,1,
γ0γ1γ2γ3=γ0,0γ1,0γ2,0γ3,0×γ0,1γ1,1γ2,1γ3,1
(処理3′(19))
S0は以下を計算する。ただし、λ=λ0λ1λ2λ3とする。
S1は以下を計算する。
R0,0=a0,0×[λ]0+a2,0×[λ]2+a4,0×[λ]4+a6,0×[λ]6+[00]0,
R0,1=a0,1×[λ]0+a2,1×[λ]2+a4,1×[λ]4+a6,1×[λ]6+[00]1,
R0,2=a0,2×[λ]0+a2,2×[λ]2+a4,2×[λ]4+a6,2×[λ]6+[00]2,
R0,3=a0,3×[λ]0+a2,3×[λ]2+a4,3×[λ]4+a6,3×[λ]6+[00]3,
R1,1=a1,1×[λ]1+a3,1×[λ]3+a5,1×[λ]5+a7,1×[λ]7+[01]1,
R1,2=a1,2×[λ]1+a3,2×[λ]3+a5,2×[λ]5+a7,2×[λ]7+[01]2,
R1,3=a1,3×[λ]1+a3,3×[λ]3+a5,3×[λ]5+a7,3×[λ]7+[01]3,
S0は[λ]0=R0,0+R1,0,[λ]2=R0,2+R1,2を(3,4)Shamir法における分散値とし、(2,2)Shamir法で秘密分散した[00]jを計算して以下を計算する。S0はR′0,1をS1に送る。ただし、a′i,jは2次式を1次式に変換する行列A’における位置i,jにおける要素である。
R′0,0=a′0,0×[λ]0+a′2,0×[λ]2+[00]0,
R′0,1=a′0,1×[λ]0+a′2,1×[λ]2+[00]1,
R′1,0=a′1,0×[λ]1+a′3,0×[λ]3+[01]0,
R′1,1=a′1,1×[λ]1+a′3,1×[λ]3+[01]1,
S0は[λ]0=R′0,0+R′1,0を(2,2)Shamir法における分散値とし、{λ}0=([λ]0,λ′0)を変換用乱数とする。
S1は[λ]1=R′0,1+R′1,1を(2,2)Shamir法における分散値とし、{λ}1=([λ]1,λ′1)を変換用乱数とする。
が事前に準備されているとする。
[φωαβ(a+1)(b+1)]i=α(a+1)×β(b+1)×[φ]i
[εηα(a+1)]i=α(a+1)×[ε]i
[λμβ(b+1)]i=β(b+1)×[μ]i
[τργ(c+1)]i=γ(c+1)×[ρ]i
α(a+a1)=α×(a+a1)
β(b+b1)=β×(b+b1)
γ(c+c1)=γ×(c+c1)
[δ/αβ]1=δ1[δ0/αβ]1
[δb1/α]1=δ1[δ0b1/α]1
[δa1/β]1=δ1[δ0a1/β]1
[δ/γ]1=δ1[δ0/γ]1
次に、マシン14NNのCPU22における秘匿積和演算部44が実行する積和演算4を、図27を参照して説明する。
[δ0{(ab+c)−(a1b1−c1)}]0=α(a+a1)×β(b+b1)×[δ0/αβ]0−α(a+a1)×[δ0b1/α]0−β(b+b1)×[δ0a1/β]0+γ(c+c1)×[δ0/γ]0
[δ{(ab+c)−(a1b1−c1)}]1=α(a+1)×β(b+1)×[δ/αβ]1−α(a+1)×[δb1/α]1−β(b+1)×[δa1/β]1+γ(c+1)×[δ/γ]1
次に、演算支援装置16のCPU22における演算支援部が実行する演算支援4を、図28を参照して説明する。
[δ{(ab+c)−(a1b1−c1)]0=δ1[δ0{(ab+c)−(a1b1−c1)}]0
次に、演算支援装置16のCPU22における演算支援部254が実行する秘匿除算4を説明する。本実施の形態における秘匿除算4は、前述した秘匿除算2(図17)において、入力者装置12のCPU22における演算支援部150が実行した処理を、演算支援装置16のCPU22における演算支援部254が実行する点のみが異なるので、その説明を省略する。
次に、第5の実施の形態を説明する。
第5の実施の形態の構成は、第4の実施の形態の構成(図25参照)と同様であるので、その説明を省略する。
分散5を、入力者装置12Aの分散5のプログラムのフローチャート(図29A)、入力者装置12Bの分散5のプログラムのフローチャート(図29B)、入力者装置12Cの分散5のプログラムのフローチャート(図29C)、演算支援装置16の分散5のプログラムのフローチャート(図29D)、マシン14NNの分散5のプログラムのフローチャート(図29E)、及び分散5のシーケンス図(図29F)を参照して説明する。
入力者装置12Aは乱数α′0、α′1を生成して以下を計算してα′(a+1)をマシン14NNと演算支援装置16に送信し、マシン14NNにα′0を送信し、演算支援装置16にα′1を送信する(図29Aのステップ502A〜508A、図29Dのステップ512、図29Eのステップ552も参照)。
α′=α′0×α′1、 α′(a+1)=α′×(a+1)
β′=β′0×β′1、 β′(b+1)=β′×(b+1)
γ′=γ′0×γ′1、 γ′(c+1)=γ′×(c+1)
[χε]1=χ×[ε]1
[χτ]1=χ×[τ]1
[χφω]1=χ×[φ]1
[χλ]1=χ×[λ]1
[χκ]1=χ×[κ]1
[χζ]1=χ×[ζ]1
{ε}=([ε]0、[χε]1、ε0)
{ρ}=([ρ]0、[χρ]1、ρ0)
{ω}=([ω]0、[χω]1、ω0)
{μ}=([μ]0、[χμ]1、μ0)
{ν}=([ν]0、[χν]1、ν0)
{ζ}=([ζ]0、[χζ]1、ζ0)
[秘匿積和演算5]
次に、演算支援装置16のCPU22における演算支援部150が実行する演算支援処理5を、図32を参照して、説明する。
[δ{(ab+c)]0=δ1[δ0(ab+c)]0
14N0〜14Nn−1 マシン
Claims (18)
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、秘密情報に0でない値を加算した値に0でない値の乱数を乗ずる手段と、その乗算結果をそのまま秘匿演算に参加する全秘匿演算装置に送る手段と、を有することを特徴とする入力者装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、秘密情報に0でない値の第1の乱数を加算する手段と、その値に0でない値の第2の乱数を乗ずる手段と、その乗算結果をそのまま秘匿演算に参加する全秘匿演算装置に送る手段と、を有することを特徴とする演算支援装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、秘密情報に0でない値の乱数を秘匿加算する手段と、その秘匿加算結果をそのまま秘匿演算に参加する全秘匿演算装置に送る手段と、を有することを特徴とする演算支援装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、1個以上の第1の乱数を生成する手段と、第1の乱数の各々を秘密分散した分散値の各々にかける手段と、を有することを特徴とする装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、請求項4による異なる乱数がかかった分散値に請求項1〜請求項3の装置によって公開された秘匿化秘密情報を作用させる手段と、その手段の出力である同一の秘密情報に対して異なる乱数を作用させた分散値を用いて演算する手段を有することを特徴とする秘匿演算装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、用いる秘匿演算装置の数をt、入力数をuとしたとき、nをu(k−1)+1以上として秘密分散を行う手段と、その分散値をn/t個毎に分割して異なる乱数を乗算する手段と、その異なる乱数が乗じられた分散値n/t個から少なくとも1つの分散値を秘匿演算装置に配布する手段と、を有することを特徴とした入力者装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、分散値同士の乗算を行う手段と、乱数がかけられた分散値同士の積から乱数を削除する手段と、乱数が削除された分散値に対して次数変換処理を1回以上繰り返す手段と、を有することを特徴とする秘匿演算装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、請求項1〜3による秘匿化秘密情報から請求項1〜3で加算された定数を秘匿減算する手段と、その秘匿減算結果が0であるかを検証する手段と、0でないときに秘匿減算された値からその逆数を生成する手段と、を有する秘匿演算装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおいて、異なる乱数がかかった分散値を他の分散値と同じ乱数に変換する手段と、同じ乱数がかかった秘密情報を復元する、または秘匿演算装置が復元できるようにする手段と、を有する演算支援装置。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける入力者装置のコンピュータを、秘密情報に0でない値を加算した値に0でない値の乱数を乗ずる手段、及びその乗算結果をそのまま秘匿演算に参加する全秘匿演算装置に送る手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける演算支援装置のコンピュータを、秘密情報に0でない値の第1の乱数を加算する手段、及びその値に0でない値の第2の乱数を乗ずる手段と、その乗算結果をそのまま秘匿演算に参加する全秘匿演算装置に送る手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける演算支援装置のコンピュータを、秘密情報に0でない値の乱数を秘匿加算する手段、及びその秘匿加算結果をそのまま秘匿演算に参加する全秘匿演算装置に送る手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける装置のコンピュータを、1個以上の第1の乱数を生成する手段、及び第1の乱数の各々を秘密分散した分散値の各々にかける手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける秘匿演算装置のコンピュータを、請求項4による異なる乱数がかかった分散値に請求項1〜請求項3の装置によって公開された秘匿化秘密情報を作用させる手段、及びその手段の出力である同一の秘密情報に対して異なる乱数を作用させた分散値を用いて演算する手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける入力者装置のコンピュータを、用いる秘匿演算装置の数をt、入力数をuとしたとき、nをut以上として秘密分散を行う手段、その分散値をn/t個毎に分割して異なる乱数を乗算する手段、及びその異なる乱数が乗じられた分散値n/t個から少なくとも1つの分散値を秘匿演算装置に配布する手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける秘匿演算装置のコンピュータを、分散値同士の乗算を行う手段と、乱数がかけられた分散値同士の積から乱数を削除する手段、及び乱数が削除された分散値に対して次数変換処理を1回以上繰り返す手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける秘匿演算装置のコンピュータを、請求項1〜3による秘匿化秘密情報から請求項1〜3で加算された定数を秘匿減算する手段、及びその秘匿減算結果が0であるかを検証する手段と、0でないときに秘匿減算された値からその逆数を生成する手段として機能させるプログラム。
- nを2以上の整数、kを、最小値が2で最大値がnの整数、Lを1以上k以下の整数とし、秘密情報をn個に分散し、n個のうちk個の分散値を集めれば秘密情報を復元でき、k−L個以下では秘密情報を復元できない手段を用いて秘匿演算を行うシステムにおける演算支援装置のコンピュータを、異なる乱数がかかった分散値を他の分散値と同じ乱数に変換する手段、及び同じ乱数がかかった秘密情報を復元する、または秘匿演算装置が復元できるようにする手段として機能させるプログラム。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018028308A JP7041951B2 (ja) | 2018-02-20 | 2018-02-20 | 入力者装置、演算支援装置、及びプログラム |
JP2022010040A JP7240037B2 (ja) | 2018-02-20 | 2022-01-26 | 入力者装置、演算支援装置、装置、秘匿演算装置、及びプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018028308A JP7041951B2 (ja) | 2018-02-20 | 2018-02-20 | 入力者装置、演算支援装置、及びプログラム |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022010040A Division JP7240037B2 (ja) | 2018-02-20 | 2022-01-26 | 入力者装置、演算支援装置、装置、秘匿演算装置、及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2019144405A true JP2019144405A (ja) | 2019-08-29 |
JP7041951B2 JP7041951B2 (ja) | 2022-03-25 |
Family
ID=67773194
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2018028308A Active JP7041951B2 (ja) | 2018-02-20 | 2018-02-20 | 入力者装置、演算支援装置、及びプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP7041951B2 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111967038A (zh) * | 2019-09-30 | 2020-11-20 | 华控清交信息科技(北京)有限公司 | 数据处理系统、方法、设备、编辑器及存储介质 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012127572A1 (ja) * | 2011-03-18 | 2012-09-27 | 富士通株式会社 | 秘匿データ処理方法、プログラム及び装置 |
WO2016129363A1 (ja) * | 2015-02-12 | 2016-08-18 | 学校法人東京理科大学 | 秘密分散を用いた秘匿演算システムに関する計算装置 |
-
2018
- 2018-02-20 JP JP2018028308A patent/JP7041951B2/ja active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2012127572A1 (ja) * | 2011-03-18 | 2012-09-27 | 富士通株式会社 | 秘匿データ処理方法、プログラム及び装置 |
WO2016129363A1 (ja) * | 2015-02-12 | 2016-08-18 | 学校法人東京理科大学 | 秘密分散を用いた秘匿演算システムに関する計算装置 |
Non-Patent Citations (3)
Title |
---|
AHMAD AKMAL AMINUDDIN, M. K., 岩村恵市: "演算の連続に対して安全な秘密分散法を用いた秘匿計算", 情報処理学会研究報告, JPN6021047641, 7 July 2017 (2017-07-07), pages 1 - 8, ISSN: 0004649046 * |
神宮武志,岩村恵市: "除算を含む四則演算に適用可能な秘密分散法を用いた秘匿計算手法の提案", 電子情報通信学会技術研究報告, vol. 第115巻 第122号, JPN6021047638, 25 June 2015 (2015-06-25), pages 1 - 7, ISSN: 0004649044 * |
青井健,神宮武志,岩村惠市: "n<2k−1における秘匿計算の安全性検討及び非対称秘密分散との応用", 電子情報通信学会技術研究報告, vol. 第116巻 第129号, JPN6021047639, 7 July 2016 (2016-07-07), pages 237 - 243, ISSN: 0004649045 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111967038A (zh) * | 2019-09-30 | 2020-11-20 | 华控清交信息科技(北京)有限公司 | 数据处理系统、方法、设备、编辑器及存储介质 |
CN111967038B (zh) * | 2019-09-30 | 2023-12-15 | 华控清交信息科技(北京)有限公司 | 数据处理系统、方法、设备、编辑器及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
JP7041951B2 (ja) | 2022-03-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110557245B (zh) | 用于spdz的容错和安全多方计算的方法和系统 | |
EP3725023B1 (en) | Method for faster secure multiparty inner product with spdz | |
Gupta et al. | An efficient image encryption using non-dominated sorting genetic algorithm-III based 4-D chaotic maps: Image encryption | |
Kim et al. | Efficient privacy-preserving matrix factorization via fully homomorphic encryption | |
Kim et al. | Efficient privacy-preserving matrix factorization for recommendation via fully homomorphic encryption | |
CN110084063B (zh) | 一种保护隐私数据的梯度下降计算方法 | |
García-Martínez et al. | Pseudo-random bit generator based on multi-modal maps | |
CN110147681A (zh) | 一种支持灵活访问控制的隐私保护大数据处理方法及系统 | |
US20110060901A1 (en) | Cryptographic System for Performing Secure Iterative Matrix Inversions and Solving Systems of Linear Equations | |
EP3866142B1 (en) | Secure right shift computation system, secure division system, methods therefor, secure computation apparatus, and program | |
Catrina | Round-efficient protocols for secure multiparty fixed-point arithmetic | |
CN113434878B (zh) | 基于联邦学习的建模及应用方法、装置、设备及存储介质 | |
EP4184858A1 (en) | Secure multi-party computations without online communication | |
Shin et al. | Securing a local training dataset size in federated learning | |
Song et al. | pmpl: A robust multi-party learning framework with a privileged party | |
JPWO2017038761A1 (ja) | 秘密計算システム、秘密計算装置、および、秘密計算方法 | |
JP7041951B2 (ja) | 入力者装置、演算支援装置、及びプログラム | |
Aly et al. | Practically efficient secure distributed exponentiation without bit-decomposition | |
JP7240037B2 (ja) | 入力者装置、演算支援装置、装置、秘匿演算装置、及びプログラム | |
JP2023052580A (ja) | 入力者装置、演算支援装置、装置、秘匿演算装置、及びプログラム | |
Gao et al. | New image encryption algorithm based on hyperchaotic 3D-IHAL and a hybrid cryptosystem | |
EP4080488B1 (en) | Secret random number generation system, secret calculation device, secret random number generation method, and program | |
CN114817954A (zh) | 图像的处理方法、系统和装置 | |
Catrina | Optimization and tradeoffs in secure floating-point computation: products, powers, and polynomials | |
WO2023276740A1 (ja) | 第三者装置、秘匿計算システム、及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20210203 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210204 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20210203 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20211028 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20211130 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220126 |
|
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: 20220208 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220307 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7041951 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |