JP7067625B2 - 秘密結合システム、この方法、秘密計算装置及びプログラム - Google Patents
秘密結合システム、この方法、秘密計算装置及びプログラム Download PDFInfo
- Publication number
- JP7067625B2 JP7067625B2 JP2020537440A JP2020537440A JP7067625B2 JP 7067625 B2 JP7067625 B2 JP 7067625B2 JP 2020537440 A JP2020537440 A JP 2020537440A JP 2020537440 A JP2020537440 A JP 2020537440A JP 7067625 B2 JP7067625 B2 JP 7067625B2
- Authority
- JP
- Japan
- Prior art keywords
- vector
- share
- generate
- elements
- modified
- 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
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/60—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
- G06F7/72—Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers using residue arithmetic
- G06F7/724—Finite field arithmetic
- G06F7/726—Inversion; Reciprocal calculation; Division of elements of a finite field
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/766—Generation of all possible permutations
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/768—Data position reversal, e.g. bit reversal, byte swapping
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F7/00—Methods or arrangements for processing data by operating upon the order or content of the data handled
- G06F7/76—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data
- G06F7/78—Arrangements for rearranging, permuting or selecting data according to predetermined rules, independently of the content of the data for changing the order of data flow, e.g. matrix transposition or LIFO buffers; Overflow or underflow handling therefor
-
- 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)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Mathematical Physics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Optimization (AREA)
- Mathematical Analysis (AREA)
- Computational Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- Complex Calculations (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
図1を参照して、実施形態の秘密強写像計算システムの構成例を説明する。秘密強写像計算システムは、N(≧2)台の秘密計算装置11,…,1Nを含む。本形態では、秘密計算装置11, …, 1Nはそれぞれ通信網2へ接続されている。通信網2は、接続される各装置が相互に通信可能なように構成された回線交換方式もしくはパケット交換方式の通信網であり、例えばインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などである。なお、各装置は必ずしも通信網2を介してオンラインで通信可能である必要はない。例えば、秘密計算装置11, …, 1Nへ入力する情報を磁気テープやUSBメモリなどの可搬型記録媒体に記憶し、その可搬型記録媒体から秘密計算装置11, …,1Nへオフラインで入力するように構成してもよい。
第一ベクトル結合部111,…,11Nに、ベクトルrのシェア[r]及びベクトルxのシェア[x]が入力される。
第一置換計算部121,…,12Nに、シェア[k]が入力される。
〔参考文献1〕五十嵐大、濱田浩気、菊池亮、千田浩司、「超高速秘密計算ソートの設計と実装:秘密計算がスクリプト言語に並ぶ日」、CSS2017、2017
第一ベクトル生成部131,…,13Nに、ベクトルdのシェア[d]とuとが入力される。
第二ベクトル結合部141,…,14Nに、シェア[d']が入力される。
第一置換適用部151,…,15Nに、シェア[v]及びシェア[σ]が入力される。
第二ベクトル生成部161,…,16Nに、シェア[σ(v)]が入力される。
第一逆置換適用部171,…,17Nに、シェア[σ(y)]及びシェア[σ]が入力される。
第一ベクトル抽出部181,…,18Nに、シェア[σ-1(σ(y))]が入力される。
図1、図4及び図5を参照して、実施形態の秘密結合システムの構成例を説明する。この秘密結合システム及び方法は、いわゆる左外部結合を行うものである。左外部結合については後述する。
第二置換適用部191,…,19Nに、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルg∈[F]2m+nのシェア[g]及びシェア[σ]が入力される。ここで、Fは任意の環である。
第三ベクトル生成部1101,…,110Nに、シェア[σ(g)]が入力される。
第二逆置換適用部1111,…,111Nに、シェア[σ(g')]が入力される。
第二ベクトル抽出部1121,…,112Nに、シェア[g']が入力される。
変形第二テーブル生成部1131,…,113Nに、シェア[f1']及びシェア[y]が入力される。
第三置換適用部1141,…,114Nに、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及びシェア[σ]が入力される。
第四ベクトル生成部1151,…,115Nに、シェア[σ(e)]が入力される。
シフト部1161,…,116Nに、シェア[σ(e')]が入力される。
第三逆置換適用部1171,…,117Nに、シェア[σ(e'')]及びシェア[σ]が入力される。
ビット反転部1181,…,118Nに、シェア[e'']が入力される。
第三ベクトル抽出部1191,…,119Nに、シェア[f]が入力される。
変形第一テーブル生成部1201,…,120Nに、シェア[f']、シェア[r]及びシェア[d]が入力される。
第一テーブル結合部1211,…,121Nに、変形第二テーブルと変形第一テーブルとが入力される。
第一テーブル整形部1221,…,122Nに、シェア[f1']及び[f']が入力される。
図1、図6及び図7を参照して、実施形態の秘密結合システムの構成例を説明する。この秘密結合システム及び方法は、いわゆる右外部結合を行うものである。言い換えれば、この秘密結合システムは、秘匿性を保ちつつ、第一テーブル及び第二テーブルに共通するレコードと、第二テーブルのみに存在するレコードとを結合する。
変形第二テーブル生成部1231,…,123 Nに、シェア[y]が入力される。
図1、図8及び図9を参照して、実施形態の秘密結合システムの構成例を説明する。この秘密結合システム及び方法は、いわゆる完全外部結合を行うものである。言い換えれば、この秘密結合システムは、秘匿性を保ちつつ、第一テーブル及び第二テーブルに共通するレコードと、第一テーブルのみに存在するレコードと、第二テーブルのみに存在するレコードとを結合する。
第二テーブル整形部1241,…,124Nに、シェア[f']が入力される。
第二テーブル結合部1251,…,125Nに、変形第二テーブル及び整形後変形第一テーブルが入力される。
以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。
上記説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
Claims (12)
- 複数の秘密計算装置を含む秘密結合システムであって、
F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
上記複数の秘密計算装置は、
上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する複数の秘密強写像計算部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルg∈[F]2m+nのシェア[g]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルgに上記置換σを適用したベクトルσ(g)のシェア[σ(g)]を生成する複数の第二置換適用部と、
上記シェア[σ(g)]を用いて、各要素が、上記ベクトルσ(g)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(g')のシェア[σ(g')]を生成する複数の第三ベクトル生成部と、
上記シェア[σ(g')]を用いて、上記ベクトルσ(g')に上記置換σの逆置換σ-1を適用したベクトルg'のシェア[g']を生成する複数の第二逆置換適用部と、
上記シェア[g']を用いて、上記ベクトルg'のm+1番目からm+n番目の要素を抜き出したベクトルf1'のシェア[f1']を生成する複数の第二ベクトル抽出部と、
uv2を所定の値として、上記シェア[f1']及び上記シェア[y]を用いて、上記ベクトルf1'と、i=1,…,nとして、f1'i=0である場合には、上記第二テーブルの属性のi番目の要素をuv2としたテーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する複数の変形第二テーブル生成部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記シェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する複数の第三置換適用部と、
上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する複数の第四ベクトル生成部と、
上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成する複数のシフト部と、
上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する複数の第三逆置換適用部と、
上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成する複数のビット反転部と、
上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する複数の第三ベクトル抽出部と、
上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1,uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する複数の変形第一テーブル生成部と、
上記変形第二テーブルと上記変形第一テーブルとを結合した結合テーブルを生成する複数の第一テーブル結合部と、
上記結合テーブル、シェア[f1']及び[f']を用いて、上記結合テーブルからベクトルf1'及びベクトルf'の要素が1のレコードを抜き出した整形後結合テーブルを生成する複数の第一テーブル整形部と、
を含む秘密結合システム。 - 複数の秘密計算装置を含む秘密結合システムであって、
F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
上記複数の秘密計算装置は、
上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する複数の秘密強写像計算部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルg∈[F]2m+nのシェア[g]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルgに上記置換σを適用したベクトルσ(g)のシェア[σ(g)]を生成する複数の第二置換適用部と、
上記シェア[σ(g)]を用いて、各要素が、上記ベクトルσ(g)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(g')のシェア[σ(g')]を生成する複数の第三ベクトル生成部と、
上記シェア[σ(g')]を用いて、上記ベクトルσ(g')に上記置換σの逆置換σ-1を適用したベクトルg'のシェア[g']を生成する複数の第二逆置換適用部と、
上記シェア[g']を用いて、上記ベクトルg'のm+1番目からm+n番目の要素を抜き出したベクトルf1'のシェア[f1']を生成する複数の第二ベクトル抽出部と、
uv2を所定の値として、上記シェア[f1']及び上記シェア[y]を用いて、上記ベクトルf1'と、i=1,…,nとして、f1'i=0である場合には、上記第二テーブルの属性のi番目の要素をuv2としたテーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する複数の変形第二テーブル生成部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記シェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する複数の第三置換適用部と、
上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する複数の第四ベクトル生成部と、
上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成する複数のシフト部と、
上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する複数の第三逆置換適用部と、
上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成する複数のビット反転部と、
上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する複数の第三ベクトル抽出部と、
上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1,uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する複数の変形第一テーブル生成部と、
上記変形第二テーブルと上記変形第一テーブルとを結合した結合テーブルを生成し、上記結合テーブルの中の、上記ベクトルf1'及び上記ベクトルf'以外の部分から構成されるテーブルを出力する複数の第一テーブル結合部と、
を含む秘密結合システム。 - 複数の秘密計算装置を含む秘密結合システムであって、
Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
上記複数の秘密計算装置は、
上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する複数の秘密強写像計算部と、
上記シェア[y]を用いて、上記第二テーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する複数の変形第二テーブル生成部と、
を含む秘密結合システム。 - 複数の秘密計算装置を含む秘密結合システムであって、
F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
上記複数の秘密計算装置は、
上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する複数の秘密強写像計算部と、
上記シェア[y]を用いて、上記第二テーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する複数の変形第二テーブル生成部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する複数の第三置換適用部と、
上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する複数の第四ベクトル生成部と、
上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成する複数のシフト部と、
上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する複数の第三逆置換適用部と、
上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成する複数のビット反転部と、
上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する複数の第三ベクトル抽出部と、
上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1,uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する複数の変形第一テーブル生成部と、
上記変形第一テーブル、シェア[f']を用いて、上記変形第一テーブルからベクトルf'の要素が1のレコードを抜き出した整形後変形第一テーブルを生成する複数の第二テーブル整形部と、
上記変形第二テーブルと上記整形後変形第一テーブルとを結合した結合テーブルを生成する複数の第二テーブル結合部と、
を含む秘密結合システム。 - 複数の秘密計算装置を含む秘密結合システムであって、
F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
上記複数の秘密計算装置は、
上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する複数の秘密強写像計算部と、
上記シェア[y]を用いて、上記第二テーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する複数の変形第二テーブル生成部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する複数の第三置換適用部と、
上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する複数の第四ベクトル生成部と、
上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成する複数のシフト部と、
上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する複数の第三逆置換適用部と、
上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成する複数のビット反転部と、
上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する複数の第三ベクトル抽出部と、
上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1,uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する複数の変形第一テーブル生成部と、
上記変形第二テーブルと、上記変形第一テーブルの中の、ベクトルf'の部分を除いたテーブルとを結合したテーブルを生成する複数の第二テーブル結合部と、
を含む秘密結合システム。 - F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
複数の秘密強写像計算部が、上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する秘密強写像計算ステップと、
複数の第二置換適用部が、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルg∈[F]2m+nのシェア[g]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルgに上記置換σを適用したベクトルσ(g)のシェア[σ(g)]を生成する第二置換適用ステップと、
複数の第三ベクトル生成部が、上記シェア[σ(g)]を用いて、各要素が、上記ベクトルσ(g)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(g')のシェア[σ(g')]を生成する第三ベクトル生成ステップと、
複数の第二逆置換適用部が、上記シェア[σ(g')]を用いて、上記ベクトルσ(g')に上記置換σの逆置換σ-1を適用したベクトルg'のシェア[g']を生成する第二逆置換適用ステップと、
複数の第二ベクトル抽出部が、上記シェア[g']を用いて、上記ベクトルg'のm+1番目からm+n番目の要素を抜き出したベクトルf1'のシェア[f1']を生成する第二ベクトル抽出ステップと、
複数の変形第二テーブル生成部が、uv2を所定の値として、上記シェア[f1']及び上記シェア[y]を用いて、上記ベクトルf1'と、i=1,…,nとして、f1'i=0である場合には、上記第二テーブルの属性のi番目の要素をuv2としたテーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する変形第二テーブル生成ステップと、
複数の第三置換適用部が、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記シェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する第三置換適用ステップと、
複数の第四ベクトル生成部が、上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する第四ベクトル生成ステップと、
複数のシフト部が、上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成するシフトステップと、
複数の第三逆置換適用部が、上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する第三逆置換適用ステップと、
複数のビット反転部が、上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成するビット反転ステップと、
複数の第三ベクトル抽出部が、上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する第三ベクトル抽出ステップと、
複数の変形第一テーブル生成部が、上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する変形第一テーブル生成ステップと、
複数の第一テーブル結合部が、上記変形第二テーブルと上記変形第一テーブルとを結合した結合テーブルを生成する第一テーブル結合ステップと、
複数の第一テーブル整形部が、上記結合テーブル、シェア[f1']及び[f']を用いて、上記結合テーブルからベクトルf1'及びベクトルf'の要素が1のレコードを抜き出した整形後結合テーブルを生成する第一テーブル整形ステップと、
を含む秘密結合方法。 - F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
複数の秘密強写像計算部が、上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する秘密強写像計算ステップと、
複数の第二置換適用部が、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルg∈[F]2m+nのシェア[g]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルgに上記置換σを適用したベクトルσ(g)のシェア[σ(g)]を生成する第二置換適用ステップと、
複数の第三ベクトル生成部が、上記シェア[σ(g)]を用いて、各要素が、上記ベクトルσ(g)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(g')のシェア[σ(g')]を生成する第三ベクトル生成ステップと、
複数の第二逆置換適用部が、上記シェア[σ(g')]を用いて、上記ベクトルσ(g')に上記置換σの逆置換σ-1を適用したベクトルg'のシェア[g']を生成する第二逆置換適用ステップと、
複数の第二ベクトル抽出部が、上記シェア[g']を用いて、上記ベクトルg'のm+1番目からm+n番目の要素を抜き出したベクトルf1'のシェア[f1']を生成する第二ベクトル抽出ステップと、
複数の変形第二テーブル生成部が、uv2を所定の値として、上記シェア[f1']及び上記シェア[y]を用いて、上記ベクトルf1'と、i=1,…,nとして、f1'i=0である場合には、上記第二テーブルの属性のi番目の要素をuv2としたテーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する変形第二テーブル生成ステップと、
複数の第三置換適用部が、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記シェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する第三置換適用ステップと、
複数の第四ベクトル生成部が、上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する第四ベクトル生成ステップと、
複数のシフト部が、上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成するシフトステップと、
複数の第三逆置換適用部が、上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する第三逆置換適用ステップと、
複数のビット反転部が、上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成するビット反転ステップと、
複数の第三ベクトル抽出部が、上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する第三ベクトル抽出ステップと、
複数の変形第一テーブル生成部が、上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する変形第一テーブル生成ステップと、
複数の第一テーブル結合部が、上記変形第二テーブルと上記変形第一テーブルとを結合した結合テーブルを生成し、上記結合テーブルの中の、上記ベクトルf1'及び上記ベクトルf'以外の部分から構成されるテーブルを出力する第一テーブル結合ステップと、
を含む秘密結合方法。 - Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
複数の秘密強写像計算部が、上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する秘密強写像計算ステップと、
複数の変形第二テーブル生成部が、上記シェア[y]を用いて、上記第二テーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する変形第二テーブル生成ステップと、
を含む秘密結合方法。 - F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
複数の秘密強写像計算部が、上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する秘密強写像計算ステップと、
複数の変形第二テーブル生成部が、上記シェア[y]を用いて、上記第二テーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する変形第二テーブル生成ステップと、
複数の第三置換適用部が、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する第三置換適用ステップと、
複数の第四ベクトル生成部が、上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する第四ベクトル生成ステップと、
複数のシフト部が、上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成するシフトステップと、
複数の第三逆置換適用部が、上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する第三逆置換適用ステップと、
複数のビット反転部が、上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成するビット反転ステップと、
複数の第三ベクトル抽出部が、上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する第三ベクトル抽出ステップと、
複数の変形第一テーブル生成部が、上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1,uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する変形第一テーブル生成ステップと、
複数の第二テーブル整形部が、上記変形第一テーブル、シェア[f']を用いて、上記変形第一テーブルからベクトルf'の要素が1のレコードを抜き出した整形後変形第一テーブルを生成する第二テーブル整形ステップと、
複数の第二テーブル結合部が、上記変形第二テーブルと上記整形後変形第一テーブルとを結合した結合テーブルを生成する第二テーブル結合ステップと、
を含む秘密結合方法。 - F,Fk,Fvは任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈Fk mは第一テーブルのキーのベクトルであり、d∈Fv mは第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈Fk nは第二テーブルのキーのベクトルであり、
複数の秘密強写像計算部が、上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する秘密強写像計算ステップと、
複数の変形第二テーブル生成部が、上記シェア[y]を用いて、上記第二テーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する変形第二テーブル生成ステップと、
複数の第三置換適用部が、各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F]2m+nのシェア[e]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する第三置換適用ステップと、
複数の第四ベクトル生成部が、上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する第四ベクトル生成ステップと、
複数のシフト部が、上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成するシフトステップと、
複数の第三逆置換適用部が、上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ-1を適用したベクトルe''のシェア[e'']を生成する第三逆置換適用ステップと、
複数のビット反転部が、上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成するビット反転ステップと、
複数の第三ベクトル抽出部が、上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する第三ベクトル抽出ステップと、
複数の変形第一テーブル生成部が、上記ベクトルf'のi番目の要素をf'iとし、上記ベクトルrのi番目の要素をriとし、uk,uv1,uv2を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f'i=0である場合には、上記第一テーブルのキーのi番目の要素をukとし、上記第一テーブルの属性のi番目の要素をuv1としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてuv2を要素とするベクトルとを結合した変形第一テーブルを生成する変形第一テーブル生成ステップと、
複数の第二テーブル結合部が、上記変形第二テーブルと、上記変形第一テーブルの中の、ベクトルf'の部分を除いたテーブルとを結合したテーブルを生成する第二テーブル結合ステップと、
を含む秘密結合方法。 - F,F k ,F v は任意の環であり、αを任意のベクトル又は置換として[α]はαが秘密分散されたシェアであり、m,nは1以上の所定の整数であり、uは所定の値であり、r∈F k m は第一テーブルのキーのベクトルであり、d∈F v m は第一テーブルの属性のベクトルであり、上記第一テーブルにはキーの重複がないとし、x∈F k n は第二テーブルのキーのベクトルであり、
上記ベクトルrのシェア[r]、上記ベクトルxのシェア[x]、上記ベクトルdのシェア[d]及び上記uを用いて、上記ベクトルrの各要素を定義域とし、上記ベクトルdの各要素を値域とし、上記ベクトルrの各要素の値を上記ベクトルdの対応する要素の値に写し、上記ベクトルrの各要素にない値を上記uに写す強写像を、上記ベクトルxに適用したときの出力となるベクトルyのシェア[y]を計算する複数の秘密強写像計算部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が・BR>|1であるM個の要素とを結合したベクトルG∈[F] 2m+n のシェア[g]及び上記ベクトルrと上記ベクトルxと上記ベクトルrと同じベクトルとを結合したベクトルkを安定ソートする置換σのシェア[σ]を用いて、上記ベクトルgに上記置換σを適用したベクトルσ(g)のシェア[σ(g)]を生成する複数の第二置換適用部と、
上記シェア[σ(g)]を用いて、各要素が、上記ベクトルσ(g)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(g')のシェア[σ(g')]を生成する複数の第三ベクトル生成部と、
上記シェア[σ(g')]を用いて、上記ベクトルσ(g')に上記置換σの逆置換σ -1 を適用したベクトルg'のシェア[g']を生成する複数の第二逆置換適用部と、
上記シェア[g']を用いて、上記ベクトルg'のm+1番目からm+n番目の要素を抜き出したベクトルf1'のシェア[f1']を生成する複数の第二ベクトル抽出部と、
u v2 を所定の値として、上記シェア[f1']及び上記シェア[y]を用いて、上記ベクトルf1'と、i=1,…,nとして、f1' i =0である場合には、上記第二テーブルの属性のi番目の要素をu v2 としたテーブルと、上記ベクトルyとを結合した変形第二テーブルを生成する複数の変形第二テーブル生成部と、
各要素が1であるm個の要素と、各要素が0であるn個の要素と、各要素が-1であるm個の要素とを結合したベクトルe∈[F] 2m+n のシェア[e]及び上記シェア[σ]を用いて、上記ベクトルeに上記置換σを適用したベクトルσ(e)のシェア[σ(e)]を生成する複数の第三置換適用部と、
上記シェア[σ(e)]を用いて、各要素が、上記ベクトルσ(e)のその各要素に対応する要素を含むその各要素に対応する要素までの要素の和であるベクトルσ(e')のシェア[σ(e')]を生成する複数の第四ベクトル生成部と、
上記シェア[σ(e')]を用いて、上記ベクトルσ(e)の各要素を1個ずつシフトさせたベクトルσ(e'')のシェア[σ(e'')]を生成する複数のシフト部と、
上記シェア[σ(e'')]及び上記シェア[σ]を用いて、上記ベクトルσ(e'')に上記置換σの逆置換σ -1 を適用したベクトルe''のシェア[e'']を生成する複数の第三逆置換適用部と、
上記シェア[e'']を用いて、上記ベクトルe''の要素の0,1を反転させたベクトルfのシェア[f]を生成する複数のビット反転部と、
上記シェア[f]を用いて、上記ベクトルfの左からm個の要素を抜き出したベクトルf'のシェア[f']を生成する複数の第三ベクトル抽出部と、
上記ベクトルf'のi番目の要素をf' i とし、上記ベクトルrのi番目の要素をr i とし、u k ,u v1 ,u v2 を所定の値として、上記シェア[f']、上記シェア[r]及び上記シェア[d]を用いて、上記ベクトルf'と、i=1,…,mとして、f' i =0である場合には、上記第一テーブルのキーのi番目の要素をu k とし、上記第一テーブルの属性のi番目の要素をu v1 としたテーブルと、上記第二テーブルの属性に対応するベクトルとしてu v2 を要素とするベクトルとを結合した変形第一テーブルを生成する複数の変形第一テーブル生成部と、
上記変形第二テーブルと上記変形第一テーブルとを結合した結合テーブルを生成する複数の第一テーブル結合部と、
上記結合テーブル、シェア[f1']及び[f']を用いて、上記結合テーブルからベクトルf1'及びベクトルf'の要素が1のレコードを抜き出した整形後結合テーブルを生成する複数の第一テーブル整形部と、
をそれぞれ含む複数の秘密計算装置の何れかである秘密計算装置。 - 請求項11の秘密計算装置の各部としてコンピュータを機能させるためのプログラム。
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018152412 | 2018-08-13 | ||
JP2018152412 | 2018-08-13 | ||
JP2018190869 | 2018-10-09 | ||
JP2018190869 | 2018-10-09 | ||
PCT/JP2019/031476 WO2020036126A1 (ja) | 2018-08-13 | 2019-08-08 | 秘密結合システム、この方法、秘密計算装置及びプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2020036126A1 JPWO2020036126A1 (ja) | 2021-08-10 |
JP7067625B2 true JP7067625B2 (ja) | 2022-05-16 |
Family
ID=69525511
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2020537440A Active JP7067625B2 (ja) | 2018-08-13 | 2019-08-08 | 秘密結合システム、この方法、秘密計算装置及びプログラム |
Country Status (6)
Country | Link |
---|---|
US (1) | US11888973B2 (ja) |
EP (1) | EP3839922B1 (ja) |
JP (1) | JP7067625B2 (ja) |
CN (1) | CN112602135B (ja) |
AU (1) | AU2019322590B2 (ja) |
WO (1) | WO2020036126A1 (ja) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112567442B (zh) * | 2018-08-13 | 2024-04-09 | 日本电信电话株式会社 | 秘密强映射计算系统、它们的方法、秘密计算装置以及记录介质 |
US11985232B2 (en) * | 2018-10-26 | 2024-05-14 | Nec Corporation | Secure computing server, system, secure computing method, and program |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012150379A (ja) | 2011-01-21 | 2012-08-09 | Nippon Telegr & Teleph Corp <Ntt> | マッチングシステム、マッチングシステムの方法、結合装置及びプログラム |
JP2013157652A (ja) | 2012-01-26 | 2013-08-15 | Nippon Telegr & Teleph Corp <Ntt> | 秘密計算システム、暗号化装置、秘密計算装置及びその方法、プログラム |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5724427A (en) * | 1995-08-17 | 1998-03-03 | Lucent Technologies Inc. | Method and apparatus for autokey rotor encryption |
JP3401207B2 (ja) * | 1999-01-25 | 2003-04-28 | 日本電信電話株式会社 | 換字置換装置及びそのプログラム記録媒体 |
JP5448863B2 (ja) * | 2010-01-15 | 2014-03-19 | 日本電信電話株式会社 | 鍵生成装置、鍵生成方法、プログラム及び記録媒体 |
JP5331028B2 (ja) * | 2010-02-22 | 2013-10-30 | 日本電信電話株式会社 | 署名・検証システム、署名・検証方法、署名装置、検証装置、プログラム、記録媒体 |
JP5486520B2 (ja) * | 2011-01-21 | 2014-05-07 | 日本電信電話株式会社 | セキュア集合関数システム、秘密集合関数装置、セキュア集合関数処理方法、セキュア集合関数プログラム |
JP5650630B2 (ja) * | 2011-11-22 | 2015-01-07 | 日本電信電話株式会社 | 鍵交換システム、鍵交換装置、鍵交換方法、鍵交換プログラム |
CN104429019B (zh) * | 2012-07-05 | 2017-06-20 | 日本电信电话株式会社 | 秘密分散系统、数据分散装置、分散数据变换装置以及秘密分散方法 |
CN111771199B (zh) * | 2017-12-22 | 2024-06-04 | 皇家飞利浦有限公司 | 将第一函数应用于数据集中的数据元素的计算机实施的方法以及实施该方法的工作者节点 |
-
2019
- 2019-08-08 US US17/267,837 patent/US11888973B2/en active Active
- 2019-08-08 CN CN201980053645.2A patent/CN112602135B/zh active Active
- 2019-08-08 JP JP2020537440A patent/JP7067625B2/ja active Active
- 2019-08-08 EP EP19849488.2A patent/EP3839922B1/en active Active
- 2019-08-08 WO PCT/JP2019/031476 patent/WO2020036126A1/ja unknown
- 2019-08-08 AU AU2019322590A patent/AU2019322590B2/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2012150379A (ja) | 2011-01-21 | 2012-08-09 | Nippon Telegr & Teleph Corp <Ntt> | マッチングシステム、マッチングシステムの方法、結合装置及びプログラム |
JP2013157652A (ja) | 2012-01-26 | 2013-08-15 | Nippon Telegr & Teleph Corp <Ntt> | 秘密計算システム、暗号化装置、秘密計算装置及びその方法、プログラム |
Non-Patent Citations (2)
Title |
---|
五十嵐大ほか,僕たちは一番大切なものに気づいていなかった,CSS2018 コンピュータセキュリティシンポジウム2018論文集,日本,一般社団法人情報処理学会,2018年10月15日,第2018巻,第2号,p.1221-1228,情報処理学会シンポジウムシリーズ |
志村正法ほか,秘密分散データベースの構造演算を可能にするマルチパーティプロトコルを用いた関係代数演算,情報処理学会論文誌,日本,一般社団法人情報処理学会,2010年09月15日,第51巻,第9号,p.1563-1578 |
Also Published As
Publication number | Publication date |
---|---|
AU2019322590A1 (en) | 2021-03-11 |
CN112602135A (zh) | 2021-04-02 |
EP3839922A4 (en) | 2022-03-23 |
JPWO2020036126A1 (ja) | 2021-08-10 |
AU2019322590B2 (en) | 2021-12-16 |
EP3839922A1 (en) | 2021-06-23 |
WO2020036126A1 (ja) | 2020-02-20 |
CN112602135B (zh) | 2024-05-24 |
US20210314145A1 (en) | 2021-10-07 |
US11888973B2 (en) | 2024-01-30 |
EP3839922B1 (en) | 2023-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6989006B2 (ja) | 秘密集約関数計算システム、秘密計算装置、秘密集約関数計算方法、およびプログラム | |
JP7067625B2 (ja) | 秘密結合システム、この方法、秘密計算装置及びプログラム | |
CN109791741B (zh) | 秘密等值连接系统、连接装置、连接方法、记录介质 | |
JP6973633B2 (ja) | 秘密集約最大値システム、秘密集約最小値システム、秘密計算装置、秘密集約最大値方法、秘密集約最小値方法、およびプログラム | |
WO2019208486A1 (ja) | 秘密集約中央値システム、秘密計算装置、秘密集約中央値方法、およびプログラム | |
JP6585846B2 (ja) | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム | |
JP7067624B2 (ja) | 秘密強写像計算システム、これらの方法、秘密計算装置及びプログラム | |
EP3246900B1 (en) | Matrix and key generation device, matrix and key generation system, matrix coupling device, matrix and key generation method, and program | |
JP7067626B2 (ja) | 秘密結合情報生成システム、秘密結合システム、これらの方法、秘密計算装置及びプログラム | |
JP7081663B2 (ja) | 秘密結合システム、方法、秘密計算装置及びプログラム | |
JP6825119B2 (ja) | 秘密読み込み装置、秘密書き込み装置、それらの方法、およびプログラム | |
WO2020246018A1 (ja) | 秘密共役勾配法計算システム、秘密計算装置、共役勾配法計算装置、秘密共役勾配法計算方法、共役勾配法計算方法、およびプログラム | |
JP7031732B2 (ja) | 秘密表参照システム、方法、秘密計算装置及びプログラム | |
WO2022153383A1 (ja) | 秘密関係代数演算システム、秘密計算装置、秘密関係代数演算方法、およびプログラム | |
WO2022254599A1 (ja) | 秘密共役勾配法計算方法、秘密共役勾配法計算システム、秘密計算装置、およびプログラム | |
WO2019188320A1 (ja) | 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20210208 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20210208 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20220201 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20220309 |
|
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: 20220329 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20220411 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 7067625 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |