JP6040320B2 - 秘密並列処理装置、秘密並列処理方法、プログラム - Google Patents
秘密並列処理装置、秘密並列処理方法、プログラム Download PDFInfo
- Publication number
- JP6040320B2 JP6040320B2 JP2015541550A JP2015541550A JP6040320B2 JP 6040320 B2 JP6040320 B2 JP 6040320B2 JP 2015541550 A JP2015541550 A JP 2015541550A JP 2015541550 A JP2015541550 A JP 2015541550A JP 6040320 B2 JP6040320 B2 JP 6040320B2
- Authority
- JP
- Japan
- Prior art keywords
- sequence
- parallel processing
- secret
- unit
- function
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G09—EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
- G09C—CIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
- G09C1/00—Apparatus or methods whereby a given sequence of signs, e.g. an intelligible text, is transformed into an unintelligible sequence of signs by transposing the signs or groups of signs or by replacing them by others according to a predetermined system
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/08—Randomization, e.g. dummy operations or using noise
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Description
以下、本明細書において共通で使用される記法について説明する。
平文空間をRとする。
関数f:R→R′に対して、fN:RN→R′Nをfの並列実行、すなわち
fN(a0,…,aN-1)=(f(a0),…,f(aN-1))とする。
環Rに対して0RをRの零元とする。
Xを任意の集合とし、mおよびm′を任意の整数とする。Xmの元xに対して、iを任意の整数とし、i番目の要素をxiと表記する。
x∈Xm,y∈Xm′ に対して、結合
(x0,…,xm-1,y0,…,ym′-1)∈Xm+m′
をx||yと表記する。
x∈(Xm)N,y∈(Xm′)Nに対して、垂直結合
(x0||y0,…,xN-1||yN-1)
をx||Vyと表記する。
[x]は値xを秘密分散で秘匿した値、また集合Xに対して、[X]はXの元を秘匿した値の集合とする。
以下、図1を参照して、本実施例の秘密並列処理装置の概要について説明する。図1は、本実施例の秘密並列処理装置1の構成を示すブロック図である。図1に示すように、本実施例の秘密並列処理装置1は、ランダム化部11と、計算部12と、正当性証明部13を含む構成である。ランダム化部11、計算部12には、入力列(非ランダム化系列と呼ぶ)が入力される。正当性証明部13は、最終検証結果を出力する。秘密並列処理装置1は、複数台でグループを構成し、グループで以下の処理を実行することにより、秘密並列処理を実現する。
以下、図2を参照して、本実施例の秘密並列処理方法の概要について説明する。図2は、本実施例の秘密並列処理装置1の動作を示すフローチャートである。図2に示すように、本実施例の秘密並列処理方法は、ランダム化ステップ(ステップS11、スキーム1)、計算ステップ(ステップS12、スキーム2)、正当性証明ステップ(ステップS13、スキーム3)の3ステップに分かれて順に行われる。ランダム化部11は、ランダム化ステップを実行し、計算部12は、計算ステップを実行し、正当性証明部13は、正当性証明ステップを実行するものとする。
以下、図3、図4を参照してランダム化部11、およびランダム化部11が実行するランダム化ステップ(S11、スキーム1)の詳細について説明する。図3は本実施例の秘密並列処理装置1のランダム化部11の構成を示すブロック図である。図4は本実施例の秘密並列処理装置1のランダム化部11の動作を示すフローチャートである。図3に示すように、ランダム化部11は、ダミーレコード列作成部111と、ダミーレコード秘匿部112と、結合部113と、ランダム置換部114を含む。
(参考非特許文献1)S. Laur, J. Willemson, and B. Zhang. Round-efficient oblivious database manipulation.In X. Lai, J. Zhou, and H. Li eds., ISC, Vol. 7001 of Lecture Notes in Computer Science, pp. 262-277. Springer, 2011.
(参考非特許文献2)濱田浩気、五十嵐大、千田浩司、高橋克巳、「3パーティ秘匿関数計算のランダム置換プロトコル」、情報処理学会シンポジウム論文集、2010年10月12日、2010巻、第9号、pp561-566
1)秘密分散では通常乱数を生成するが、この乱数を全て0などの定数とする。
2)入力をx、乱数を上記の定数として秘密分散アルゴリズムによりn個のシェアを得る。
3)n個のうち自分の持ち分のシェアのみを出力する。
パラメータ:計算すべきm入力μ出力関数F(m、μをそれぞれ計算すべき出力関数Fの入力数、出力数とする)、レコード数N、挿入するダミーレコード数|D|、ランダム化系列数ν∈E(Eは任意の自然数の集合)
入力:非ランダム化系列[A]∈([R]m)N
出力:秘匿済みランダム置換データ[π0],…,[πν-1]∈[ΠN+|D|]ランダム化系列[B0]=[π0(A||D)],…,[Bν-1]=[πν-1(A||D)]∈([R]μ)N+|D|,ダミーレコード列D∈(Rm)|D|、ただし、Πは秘匿済みランダム置換データの集合を表す。
ダミーレコード列作成部111は、公開値から成るダミーレコード列D∈(Rm)|D|を作成して出力する(S111)。内容はF|D|の定義域内で任意である。
ダミーレコード秘匿部112は、ダミーレコード列Dを、正当性を持つ方法で秘匿し、秘匿済みダミーレコード列[D]∈([R]m)|D|を取得する(S112)。
結合部113は、入力(非ランダム化系列[A])に秘匿されたダミーレコード列[D]を結合し、結合結果[A||D]:=[A]||[D]を取得する(S113)。
<ステップS114>
ランダム置換部114は、結合結果[A||D]に正当性をもつランダム置換処理を施してランダム化系列[Bi]:=[πi(A||D)]を取得し、当該ランダム化系列と、利用された秘匿済みランダム置換データ[πi]∈[Π]を出力する(S114)。
以下、図5、図6を参照して計算部12、および計算部12が実行する計算ステップ(S12、スキーム2)の詳細について説明する。図5は本実施例の秘密並列処理装置1の計算部12の構成を示すブロック図である。図6は本実施例の秘密並列処理装置1の計算部12の動作を示すフローチャートである。図5に示すように、計算部12は、チェックサム初期値定義部121と、関数計算部122と、チェックサム更新部123と、関数処理後系列定義部124と、関数処理後ダミーレコード秘匿部125と、出力チェックサム生成部126を含む。
パラメータ:計算すべきm入力μ出力関数F、レコード数N、挿入するダミーレコード数|D|,ランダム化系列数ν∈E(Eは任意の自然数の集合)
入力:非ランダム化系列[A]∈([R]m)N,ランダム化系列[B0],…,[Bν-1]∈([R]μ)N+|D|,ダミーレコード列D∈(Rm)|D|
出力:出力[FN(A)]∈([R]μ)N,ν+2個のチェックサム[CA],[CB0],…,[CBν-1],[CD]
チェックサム初期値定義部121は、非ランダム化系列、ランダム化系列、ダミーレコード列のチェックサムの初期値をそれぞれ[CA]:=0→∈([R]0)N,[CB0]:=0→∈([R]0)N+|D|,…,[CBν-1]:=0→∈([R]0)N+|D|,[CD]:=0→∈([R]0)|D|と定義する(S121)。ただし0→は空ベクトルである。
関数計算部122は、非ランダム化系列[A],ランダム化系列[B0],…,[Bν-1]のν+1系列に対してsemi−honestの秘密計算を施し、ダミーレコード列Dに対して平文の計算を施して、所望の関数Fを、サブプロトコルfi:[R]mi→[R]μiごとに計算し、[FN(A)]∈([R]μ)Nを出力する(S122)。ただしmi,μiはそれぞれサブプロトコルfiの入力数、出力数である。
チェックサム更新部123は、前述したサブプロトコルfi:[R]mi→[R]μiごとにチェックサムを更新する(S123)。
関数処理後系列定義部124は、サブプロトコルfiへのν+2系列の各出力を、関数処理後非ランダム化系列[A′]∈([R]μi)N,関数処理後ランダム化系列[B′0],…,[B′ν-1]∈([R]μi)N+|D|,関数処理後ダミーレコード列D′∈(Rμi)|D|と定義する(S124)。
関数処理後ダミーレコード秘匿部125は、関数処理後ダミーレコード列D′を、正当性を持つ方法で秘匿し、秘匿済み関数処理後ダミーレコード列[D′]を取得する(S125)。
出力チェックサム生成部126は、非ランダム化系列のチェックサム[CA]と関数処理後非ランダム化系列[A′]を垂直結合して非ランダム化系列の出力チェックサム([CA]:=[CA]||V[A′])を生成して出力する(S126)。出力チェックサム生成部126は、i<νを充たすすべてのiについてランダム化系列のチェックサム[CBi]と関数処理後ランダム化系列[B′i]を垂直結合してランダム化系列の出力チェックサム([CBi]:=[CBi]||V[B′i])を生成して出力する(S126)。出力チェックサム生成部126は、ダミーレコード列のチェックサム[CD]と秘匿済み関数処理後ダミーレコード列[D′]を垂直結合してダミーレコード列の出力チェックサム([CD]:=[CD]||V[D′])を生成して出力する(S126)。
以下、図7、図8を参照して正当性証明部13、および正当性証明部13が実行する正当性証明ステップ(S13、スキーム3)の詳細について説明する。図7は本実施例の秘密並列処理装置1の正当性証明部13の構成を示すブロック図である。図8は本実施例の秘密並列処理装置1の正当性証明部13の動作を示すフローチャートである。図7に示すように、正当性証明部13は、第1データ受信信号送受信部130と、ランダム置換公開部131と、差分値計算部132と、垂直分割部133と、乱数分散値生成部134と、積和部135と、第2データ受信信号送受信部136と、積和値公開部137と、検証結果送受信部138と、最終検証結果出力部139を含む。
パラメータ:計算すべきm入力μ出力関数F,レコード数N,挿入するダミーレコード数|D|,ランダム化系列数ν∈E(Eは任意の自然数の集合),分割単位σ∈E
入力:出力チェックサム[CA],[CB0],…,[CBν-1],[CD],秘匿済みランダム置換データ[π0],…,[πν-1]∈[ΠN+|D|]
出力:改ざんがあれば改ざんがあったことを示す最終検証結果┴、改ざんがなければ改ざんがなかったことを示す最終検証結果┬
第1データ受信信号送受信部130は、前述のSYNC処理を実行する(S130)。具体的には、第1データ受信信号送受信部130は、ステップS130までに受信すべき全データを受信したことを伝える信号であるデータ受信信号をグループ内の他の全装置に送信し、またグループ内の他の全装置からの当該信号を受信する(S130)。
<ステップS131>
ランダム置換公開部131は、秘匿済みランダム置換データ[πi]を公開し、その復号値πiを取得する(S131)。
差分値計算部132は、ランダム化系列の出力チェックサム[CBi]から非ランダム化系列の出力チェックサム[CA]とダミーレコード列の出力チェックサム[CD]の結合([CA]||[CD])を差し引いた差分値[ζi]を計算する(S132)。すなわち、差分値計算部132は、差分値[ζi]:=[CBi]-([CA]||[CD])∈([R]M)N+|D|を計算する(S132)。なおMは[CA](または[CBi]、どちらでも等しい)の1レコード当たりの要素数とする。
垂直分割部133は、差分値[ζi]の各レコードを、分割単位σ要素ごとに垂直分割する(S133)。垂直分割部133は、([R]σ)N+|D|の要素をM′=┌M/σ┐個取得する。なお最後の分割に端数が現れる場合、垂直分割部133は、σ要素に満たない部分を0パディングする。垂直分割部133は、差分分割値[ζ′i]∈([R]σ)(N+|D|)M′を取得する(S133)。
乱数分散値生成部134は、乱数の分散値[ρi]∈([R]σ)(N+|D|)M′を生成する(S134)。
第2データ受信信号送受信部136は、SYNC処理を実行する(S136)。具体的には、第2データ受信信号送受信部136は、ステップS136までに受信すべき全データを受信したことを伝える信号であるデータ受信信号をグループ内の他の全装置に送信し、またグループ内の他の全装置からの当該信号を受信する(S136)。
積和値公開部137は、積和値[φ]を公開してその復号値φを取得する(S137)。
検証結果送受信部138は、積和値の復号値φ=0を確認し、真ならば┬、偽ならば┴となる検証結果をグループ内の他の全装置に送信し、グループ内の他の全装置から検証結果を受信する(S138)。
最終検証結果出力部139は、グループ内の他の全装置からの検証結果に┴が存在すれば┴、そうでなければ┬となる最終検証結果を出力する(S139)。
本実施例の秘密並列処理装置1によれば、秘密並列処理において通信量を削減することができる。具体的には、データ並列数Nの計算を行う際に通信量O(┌κ/logN┐C)ビットとすることができ、通信量に関し、従来法よりもlogN改善される。
従来処理結果の正当性を保証するためには代数的構造である体の性質が用いられてきた。しかしこの方針ではセキュリティパラメータκはおよそ体のビット長と同程度となる。本発明ではランダム置換処理を用いてデータ並列数Nをセキュリティ強度に組み込むことができた。ダミーレコードは、中身は何でもよいにも関わらず、ダミーレコード無しではセキュリティが達成されない点もポイントである。
Claims (9)
- 入力列である非ランダム化系列を取得して、前記非ランダム化系列と公開値からなるダミーレコード列とを結合してランダム置換処理したランダム化系列と、利用されたランダム置換データを秘匿した秘匿済みランダム置換データを出力するランダム化部と、
前記非ランダム化系列と、前記ランダム化系列と、前記ダミーレコード列を取得して、これらに所定の関数を施して、当該関数を施す処理における計算過程のデータを用いて各系列の出力チェックサムを生成する計算部と、
前記各系列の出力チェックサムと、前記秘匿済みランダム置換データを取得して、前記各系列の出力チェックサムを評価して、前記非ランダム化系列に前記所定の関数が正しく施されたか否かの最終検証結果を出力する正当性証明部と、
を含む秘密並列処理装置。 - 請求項1に記載の秘密並列処理装置であって、
平文空間をRとし、
関数f:R→R′に対して、fN:RN→R′Nをfの並列実行、すなわち
fN(a0,…,aN-1)=(f(a0),…,f(aN-1))とし、
環Rに対して0RをRの零元とし、
Xを任意の集合とし、
mおよびm′を任意の整数とし、
iを任意の整数とし、
Xmの元xに対して、i番目の要素をxiと表記し、
x∈Xm,y∈Xm′ に対して、結合
(x0,…,xm-1,y0,…,ym′-1)∈Xm+m′
をx||yと表記し、
x∈(Xm)N,y∈(Xm′)Nに対して、垂直結合
(x0||y0,…,xN-1||yN-1)
をx||Vyと表記し、
[x]を値xを秘密分散で秘匿した値とし、
集合Xに対して[X]をXの元を秘匿した値の集合とし、
m、μをそれぞれ計算すべき出力関数Fの入力数、出力数とし、
レコード数をN、挿入するダミーレコード数を|D|、ランダム化系列数をν∈Eとし、
Πは秘密分散されたランダム置換データの集合を表すものとし、
前記ランダム化部が、
公開値から成るダミーレコード列D∈(Rm)|D|を作成して出力するダミーレコード列作成部と、
前記ダミーレコード列Dを、正当性を持つ方法で秘匿し、秘匿済みダミーレコード列[D]∈([R]m)|D|を取得するダミーレコード秘匿部と、
前記非ランダム化系列[A]に前記秘匿されたダミーレコード列[D]を結合し、結合結果[A||D]:=[A]||[D]を取得する結合部と、
i<νを充たすすべてのiについて、前記結合結果[A||D]に正当性をもつランダム置換処理を施して前記ランダム化系列[Bi]:=[πi(A||D)]を取得し、当該ランダム化系列と、利用された秘匿済みランダム置換データ[πi]∈[Π]を出力するランダム置換部と、
をさらに含む秘密並列処理装置。 - 請求項2に記載の秘密並列処理装置であって、
0→は空ベクトルを表すものとし、
前記計算部が、
前記非ランダム化系列、前記ランダム化系列、前記ダミーレコード列のチェックサムの初期値をそれぞれ[CA]:=0→∈([R]0)N,[CB0]:=0→∈([R]0)N+|D|,…,[CBν-1]:=0→∈([R]0)N+|D|,[CD]:=0→∈([R]0)|D|と定義するチェックサム初期値定義部と、
mi,μiをそれぞれサブプロトコルfiの入力数、出力数とし、
前記非ランダム化系列[A],前記ランダム化系列[B0],…,[Bν-1]のν+1系列に対してsemi−honestの秘密計算を施し、前記ダミーレコード列Dに対して平文の計算を施して、所望の関数Fを、サブプロトコルfi:[R]mi→[R]μiごとに計算する関数計算部と、
前記サブプロトコルfi:[R]mi→[R]μiごとにチェックサムを更新するチェックサム更新部と、
前記サブプロトコルfiへのν+2系列の各出力を、関数処理後非ランダム化系列[A′]∈([R]μi)N,関数処理後ランダム化系列[B′0],…,[B′ν-1]∈([R]μi)N+|D|,関数処理後ダミーレコード列D′∈(Rμi)|D|と定義する関数処理後系列定義部と、
前記関数処理後ダミーレコード列D′を、正当性を持つ方法で秘匿し、秘匿済み関数処理後ダミーレコード列[D′]を取得する関数処理後ダミーレコード秘匿部と、
前記非ランダム化系列の出力チェックサム[CA]:=[CA]||V[A′]と、i<νを充たすすべてのiについての前記ランダム化系列の出力チェックサム[CBi]:=[CBi]||V[B′i]と、前記ダミーレコード列の出力チェックサム[CD]:=[CD]||V[D′]を出力する出力チェックサム生成部と、
をさらに含む秘密並列処理装置。 - 請求項3に記載の秘密並列処理装置であって、
前記正当性証明部が、
受信すべき全データを受信したことを伝える信号であるデータ受信信号を、グループを構成する他の全秘密並列処理装置に送信し、前記グループを構成する他の全秘密並列処理装置からの当該信号を受信する第1データ受信信号送受信部と、
i<νを充たすすべてのiについて、
前記秘匿済みランダム置換データ[πi]を公開し、その復号値πiを取得するランダム置換公開部と、
i<νを充たすすべてのiについて、
Mを前記非ランダム化系列の出力チェックサム[CA]、または前記ランダム化系列の出力チェックサム[CBi]の1レコード当たりの要素数とし、差分値[ζi]:=[CBi]-([CA]||[CD])∈([R]M)N+|D|を計算する差分値計算部と、
i<νを充たすすべてのiについて、
前記差分値[ζi]の各レコードを、分割単位σ要素ごとに垂直分割し、差分分割値[ζ′i]∈([R]σ)(N+|D|)M′を取得する垂直分割部と、
i<νを充たすすべてのiについて、
乱数の分散値[ρi]∈([R]σ)(N+|D|)M′を生成する乱数分散値生成部と、
積和プロトコルにより積和値
を計算する積和部と、
受信すべき全データを受信したことを伝える信号であるデータ受信信号を、前記グループを構成する他の全秘密並列処理装置に送信し、前記グループを構成する他の全秘密並列処理装置からの当該信号を受信する第2データ受信信号送受信部と、
前記積和値[φ]を公開してその復号値φを取得する積和値公開部と、
前記積和値の復号値φ=0を確認し、真ならば┬、偽ならば┴となる検証結果を前記グループを構成する他の全秘密並列処理装置に送信し、前記グループを構成する他の全秘密並列処理装置から前記検証結果を受信する検証結果送受信部と、
前記グループを構成する他の全秘密並列処理装置からの検証結果に┴が存在すれば┴、そうでなければ┬となる最終検証結果を出力する最終検証結果出力部と、
をさらに含む秘密並列処理装置。 - 秘密並列処理装置が実行する秘密並列処理方法であって、
前記秘密並列処理装置のランダム化部が、入力列である非ランダム化系列を取得して、前記非ランダム化系列と公開値からなるダミーレコード列とを結合してランダム置換処理したランダム化系列と、利用されたランダム置換データを秘匿した秘匿済みランダム置換データを出力するランダム化ステップを実行し、
前記秘密並列処理装置の計算部が、前記非ランダム化系列と、前記ランダム化系列と、前記ダミーレコード列を取得して、これらに所定の関数を施して、当該関数を施す処理における計算過程のデータを用いて各系列の出力チェックサムを生成する計算ステップを実行し、
前記秘密並列処理装置の正当性証明部が、前記各系列の出力チェックサムと、前記秘匿済みランダム置換データを取得して、前記各系列の出力チェックサムを評価して、前記非ランダム化系列に前記所定の関数が正しく施されたか否かの最終検証結果を出力する正当性証明ステップを実行する
秘密並列処理方法。 - 請求項5に記載の秘密並列処理方法であって、
平文空間をRとし、
関数f:R→R′に対して、fN:RN→R′Nをfの並列実行、すなわち
fN(a0,…,aN-1)=(f(a0),…,f(aN-1))とし、
環Rに対して0RをRの零元とし、
Xを任意の集合とし、
mおよびm′を任意の整数とし、
iを任意の整数とし、
Xmの元xに対して、i番目の要素をxiと表記し、
x∈Xm,y∈Xm′に対して、結合
(x0,…,xm-1,y0,…,ym′-1)∈Xm+m′
をx||yと表記し、
x∈(Xm)N,y∈(Xm′)Nに対して、垂直結合
(x0||y0,…,xN-1||yN-1)
をx||Vyと表記し、
[x]を値xを秘密分散で秘匿した値とし、
集合Xに対して[X]をXの元を秘匿した値の集合とし、
m、μをそれぞれ計算すべき出力関数Fの入力数、出力数とし、
レコード数をN、挿入するダミーレコード数を|D|、ランダム化系列数をν∈Eとし、
Πは秘密分散されたランダム置換データの集合を表すものとし、
前記ランダム化ステップが、
公開値から成るダミーレコード列D∈(Rm)|D|を作成して出力するダミーレコード列作成ステップと、
前記ダミーレコード列Dを、正当性を持つ方法で秘匿し、秘匿済みダミーレコード列[D]∈([R]m)|D|を取得するダミーレコード秘匿ステップと、
前記非ランダム化系列[A]に前記秘匿されたダミーレコード列[D]を結合し、結合結果[A||D]:=[A]||[D]を取得する結合ステップと、
i<νを充たすすべてのiについて、前記結合結果[A||D]に正当性をもつランダム置換処理を施して前記ランダム化系列[Bi]:=[πi(A||D)]を取得し、当該ランダム化系列と、利用された秘匿済みランダム置換データ[πi]∈[Π]を出力するランダム置換ステップと、
をさらに含む秘密並列処理方法。 - 請求項6に記載の秘密並列処理方法であって、 0→は空ベクトルを表すものとし、
前記計算ステップが、
前記非ランダム化系列、前記ランダム化系列、前記ダミーレコード列のチェックサムの初期値をそれぞれ[CA]:=0→∈([R]0)N,[CB0]:=0→∈([R]0)N+|D|,…,[CBν-1]:=0→∈([R]0)N+|D|,[CD]:=0→∈([R]0)|D|と定義するチェックサム初期値定義ステップと、
mi,μiをそれぞれサブプロトコルfiの入力数、出力数とし、
前記非ランダム化系列[A],前記ランダム化系列[B0],…,[Bν-1]のν+1系列に対してsemi−honestの秘密計算を施し、前記ダミーレコード列Dに対して平文の計算を施して、所望の関数Fを、サブプロトコルfi:[R]mi→[R]μiごとに計算する関数計算ステップと、
前記サブプロトコルfi:[R]mi→[R]μiごとにチェックサムを更新するチェックサム更新ステップと、
前記サブプロトコルfiへのν+2系列の各出力を、関数処理後非ランダム化系列[A′]∈([R]μi)N,関数処理後ランダム化系列[B′0],…,[B′ν-1]∈([R]μi)N+|D|,関数処理後ダミーレコード列D′∈(Rμi)|D|と定義する関数処理後系列定義ステップと、
前記関数処理後ダミーレコード列D′を、正当性を持つ方法で秘匿し、秘匿済み関数処理後ダミーレコード列[D′]を取得する関数処理後ダミーレコード秘匿ステップと、
前記非ランダム化系列の出力チェックサム[CA]:=[CA]||V[A′]と、i<νを充たすすべてのiについての前記ランダム化系列の出力チェックサム[CBi]:=[CBi]||V[B′i]と、前記ダミーレコード列の出力チェックサム[CD]:=[CD]||V[D′]を出力する出力チェックサム生成ステップと、
をさらに含む秘密並列処理方法。 - 請求項7に記載の秘密並列処理方法であって、
前記正当性証明ステップが、
受信すべき全データを受信したことを伝える信号であるデータ受信信号を、グループを構成する他の全秘密並列処理装置に送信し、前記グループを構成する他の全秘密並列処理装置からの当該信号を受信する第1データ受信信号送受信ステップと、
i<νを充たすすべてのiについて、
前記秘匿済みランダム置換データ[πi]を公開し、その復号値πiを取得するランダム置換公開ステップと、
i<νを充たすすべてのiについて、
Mを前記非ランダム化系列の出力チェックサム[CA]、または前記ランダム化系列の出力チェックサム[CBi]の1レコード当たりの要素数とし、差分値[ζi]:=[CBi]-([CA]||[CD])∈([R]M)N+|D|を計算する差分値計算ステップと、
i<νを充たすすべてのiについて、
前記差分値[ζi]の各レコードを、分割単位σ要素ごとに垂直分割し、差分分割値[ζ′i]∈([R]σ)(N+|D|)M′を取得する垂直分割ステップと、
i<νを充たすすべてのiについて、
乱数の分散値[ρi]∈([R]σ)(N+|D|)M′を生成する乱数分散値生成ステップと、
積和プロトコルにより積和値
を計算する積和ステップと、
受信すべき全データを受信したことを伝える信号であるデータ受信信号を、前記グループを構成する他の全秘密並列処理装置に送信し、前記グループを構成する他の全秘密並列処理装置からの当該信号を受信する第2データ受信信号送受信ステップと、
前記積和値[φ]を公開してその復号値φを取得する積和値公開ステップと、
前記積和値の復号値φ=0を確認し、真ならば┬、偽ならば┴となる検証結果を前記グループを構成する他の全秘密並列処理装置に送信し、前記グループを構成する他の全秘密並列処理装置から前記検証結果を受信する検証結果送受信ステップと、
前記グループを構成する他の全秘密並列処理装置からの検証結果に┴が存在すれば┴、そうでなければ┬となる最終検証結果を出力する最終検証結果出力ステップと、
をさらに含む秘密並列処理方法。 - コンピュータを、請求項1から4のいずれかに記載の秘密並列処理装置として機能させるためのプログラム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2013213026 | 2013-10-10 | ||
| JP2013213026 | 2013-10-10 | ||
| PCT/JP2014/076531 WO2015053184A1 (ja) | 2013-10-10 | 2014-10-03 | 秘密並列処理装置、秘密並列処理方法、プログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JP6040320B2 true JP6040320B2 (ja) | 2016-12-07 |
| JPWO2015053184A1 JPWO2015053184A1 (ja) | 2017-03-09 |
Family
ID=52813000
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2015541550A Active JP6040320B2 (ja) | 2013-10-10 | 2014-10-03 | 秘密並列処理装置、秘密並列処理方法、プログラム |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US10083314B2 (ja) |
| EP (2) | EP3057079A4 (ja) |
| JP (1) | JP6040320B2 (ja) |
| CN (1) | CN105593918B (ja) |
| WO (1) | WO2015053184A1 (ja) |
Families Citing this family (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN109478381B (zh) * | 2016-07-06 | 2021-12-14 | 日本电信电话株式会社 | 秘密计算系统、秘密计算装置、秘密计算方法以及程序 |
| JP6534778B2 (ja) * | 2016-07-06 | 2019-06-26 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム |
| WO2019009180A1 (ja) * | 2017-07-05 | 2019-01-10 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
| US11818254B2 (en) * | 2017-08-22 | 2023-11-14 | Nippon Telegraph And Telephone Corporation | Share generating device, reconstructing device, secure computation system, share generation method, reconstruction method, program, and recording medium |
| JP6881588B2 (ja) | 2017-08-22 | 2021-06-02 | 日本電信電話株式会社 | 秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
| CN111183469B (zh) * | 2017-10-13 | 2023-02-28 | 日本电信电话株式会社 | 隐匿分类系统以及方法 |
| EP3767609A4 (en) * | 2018-03-12 | 2021-12-08 | Nippon Telegraph And Telephone Corporation | SECRET TABLE REFERENCE SYSTEM, METHOD, DEVICE AND PROGRAM FOR SECRET CALCULATION |
| JP7017178B2 (ja) * | 2018-05-17 | 2022-02-08 | 日本電信電話株式会社 | 秘密クロス集計システム、秘密計算装置、秘密クロス集計方法、およびプログラム |
| WO2020184126A1 (ja) * | 2019-03-11 | 2020-09-17 | 日本電信電話株式会社 | データ置換装置、データ置換方法、プログラム |
| CN111666063B (zh) * | 2020-04-22 | 2023-09-26 | 南京惟心光电系统有限公司 | 一种基于随机计算的增函数实现装置 |
| CN114218616B (zh) * | 2021-11-17 | 2024-06-21 | 鹏城实验室 | 一种归一化指数函数安全计算方法及系统 |
| CN117591526B (zh) * | 2023-11-29 | 2025-10-14 | 天翼云科技有限公司 | 一种面向不确定环境的高性能随机化一致性方法 |
Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6772339B1 (en) * | 2000-03-13 | 2004-08-03 | Lucent Technologies Inc. | Mix and match: a new approach to secure multiparty computation |
| WO2005071640A1 (ja) * | 2004-01-26 | 2005-08-04 | Nec Corporation | 多数の入力から関数を計算する方法および装置 |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4991107A (en) * | 1988-12-15 | 1991-02-05 | Schlumberger Technologies Limited | Vibration control system |
| JPH08505275A (ja) * | 1992-12-30 | 1996-06-04 | テルストラ・コーポレイション・リミテッド | 暗号ストリームを発生させるための装置及び方法 |
| JP2000089666A (ja) * | 1998-09-16 | 2000-03-31 | Nippon Telegr & Teleph Corp <Ntt> | 暗号化/復号化装置 |
| US6408075B1 (en) * | 1998-11-30 | 2002-06-18 | Hitachi, Ltd. | Information processing equipment and IC card |
| US7062696B2 (en) * | 2000-01-14 | 2006-06-13 | National Semiconductor | Algorithmic test pattern generator, with built-in-self-test (BIST) capabilities, for functional testing of a circuit |
| US6862594B1 (en) * | 2000-05-09 | 2005-03-01 | Sun Microsystems, Inc. | Method and apparatus to discover services using flexible search criteria |
| KR101309797B1 (ko) * | 2006-12-01 | 2013-09-23 | 삼성전자주식회사 | 성긴 w-NAF 키 생성방법,이를 이용한 연산 방법 및암호화 방법 |
| US9787475B2 (en) * | 2013-03-04 | 2017-10-10 | Nec Corporation | Device, method, and program for message authentication tag generation |
-
2014
- 2014-10-03 EP EP14852876.3A patent/EP3057079A4/en not_active Ceased
- 2014-10-03 WO PCT/JP2014/076531 patent/WO2015053184A1/ja not_active Ceased
- 2014-10-03 CN CN201480054280.2A patent/CN105593918B/zh active Active
- 2014-10-03 JP JP2015541550A patent/JP6040320B2/ja active Active
- 2014-10-03 EP EP21171879.6A patent/EP3893229B1/en active Active
- 2014-10-03 US US15/025,486 patent/US10083314B2/en active Active
Patent Citations (2)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US6772339B1 (en) * | 2000-03-13 | 2004-08-03 | Lucent Technologies Inc. | Mix and match: a new approach to secure multiparty computation |
| WO2005071640A1 (ja) * | 2004-01-26 | 2005-08-04 | Nec Corporation | 多数の入力から関数を計算する方法および装置 |
Non-Patent Citations (1)
| Title |
|---|
| JPN6016029650; 五十嵐大 他: 2013年 暗号と情報セキュリティシンポジウム講演論文集 , 20130122, p.1-8 * |
Also Published As
| Publication number | Publication date |
|---|---|
| EP3893229B1 (en) | 2024-06-19 |
| CN105593918B (zh) | 2019-06-14 |
| WO2015053184A1 (ja) | 2015-04-16 |
| EP3893229A1 (en) | 2021-10-13 |
| EP3057079A1 (en) | 2016-08-17 |
| EP3057079A4 (en) | 2017-06-07 |
| JPWO2015053184A1 (ja) | 2017-03-09 |
| US10083314B2 (en) | 2018-09-25 |
| US20160210472A1 (en) | 2016-07-21 |
| CN105593918A (zh) | 2016-05-18 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6040320B2 (ja) | 秘密並列処理装置、秘密並列処理方法、プログラム | |
| JP6016948B2 (ja) | 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム | |
| WO2018015325A1 (en) | Device and method for performing obfuscated arithmetic | |
| JPWO2015107951A1 (ja) | 秘密計算方法、秘密計算システム、ソート装置及びプログラム | |
| JP5506704B2 (ja) | 復号システム、鍵装置、復号方法、及びプログラム | |
| WO2016104476A1 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
| JP6583970B2 (ja) | 秘密乱数合成装置、秘密乱数合成方法、およびプログラム | |
| WO2019110399A1 (en) | Two-party signature device and method | |
| JP6585846B2 (ja) | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム | |
| CN113645022B (zh) | 一种确定隐私集合交集方法、装置、电子设备及存储介质 | |
| JP6053238B2 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
| JP5732429B2 (ja) | 秘密分散システム、データ分散装置、データ復元装置、秘密分散方法、およびプログラム | |
| WO2020260151A1 (en) | Zero-knowledge contingent payments protocol for granting access to encrypted assets | |
| CN110622232B (zh) | 秘密篡改探测系统、秘密篡改探测装置、秘密篡改探测方法以及程序 | |
| JP5964460B2 (ja) | データの暗号化記憶システム | |
| JP6467063B2 (ja) | 秘密認証符号付加装置、秘密認証符号付加方法、およびプログラム | |
| JP6881588B2 (ja) | 秘密計算装置、秘密計算方法、プログラム、および記録媒体 | |
| WO2013153628A1 (ja) | 演算処理システムおよび演算結果認証方法 | |
| JP5227201B2 (ja) | ビットコミットメントシステム、ビットコミットメント方法、ビットコミットメント送信装置、ビットコミットメント受信装置、ビットコミットメント送信方法、ビットコミットメント受信方法、ビットコミットメントプログラム | |
| JP2015135380A (ja) | シェア変換システム、シェア変換方法、プログラム | |
| JP2009267470A (ja) | 開示制限処理装置及びデータ処理システム及びプログラム |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20161005 |
|
| 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: 20161101 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20161107 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6040320 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| 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 |