WO2019188320A1 - 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム - Google Patents

秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム Download PDF

Info

Publication number
WO2019188320A1
WO2019188320A1 PCT/JP2019/010457 JP2019010457W WO2019188320A1 WO 2019188320 A1 WO2019188320 A1 WO 2019188320A1 JP 2019010457 W JP2019010457 W JP 2019010457W WO 2019188320 A1 WO2019188320 A1 WO 2019188320A1
Authority
WO
WIPO (PCT)
Prior art keywords
share
vector
secret
deduplication
permutation
Prior art date
Application number
PCT/JP2019/010457
Other languages
English (en)
French (fr)
Inventor
大 五十嵐
Original Assignee
日本電信電話株式会社
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 日本電信電話株式会社 filed Critical 日本電信電話株式会社
Priority to AU2019242127A priority Critical patent/AU2019242127B2/en
Priority to JP2020509884A priority patent/JP7147840B2/ja
Priority to EP19774194.5A priority patent/EP3779931B1/en
Priority to US16/981,472 priority patent/US11625363B2/en
Priority to CN201980021728.3A priority patent/CN111902854B/zh
Publication of WO2019188320A1 publication Critical patent/WO2019188320A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/174Redundancy elimination performed by the file system
    • G06F16/1748De-duplication implemented within the file system, e.g. based on file segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/085Secret sharing or secret splitting, e.g. threshold schemes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/14Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms
    • H04L9/16Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using a plurality of keys or algorithms the keys or algorithms being changed during operation

Definitions

  • This invention relates to a secret calculation technique.
  • the present invention relates to a technique for generating a filter that eliminates duplication while maintaining confidentiality, and a technique for eliminating duplication using the generated filter.
  • the present invention relates to a secret deduplication filter generation system that generates a filter that eliminates duplication while maintaining secrecy, a secret deduplication system that eliminates duplication using a generated filter while maintaining secrecy, and It is to provide a method, a secret computing device and a program.
  • a secret deduplication filter generation system is a secret deduplication filter generation system including a plurality of secret computing devices, wherein F is an arbitrary field, m is an integer of 2 or more, and ⁇ is An arbitrary vector [ ⁇ ] is a share in which ⁇ is secret-distributed, ⁇ is an arbitrary replacement, ⁇ is a share in which ⁇ is secret-shared, and v is an m-dimensional vector v ⁇ F m And a plurality of secret computing devices, using a share [v] of the vector v, a plurality of permutation calculators for generating a share ⁇ of a permutation ⁇ that stably sorts the vector v in ascending order, and a share [v ] And the share ⁇ , a plurality of permutation application units for generating a share [ ⁇ (v)] of the vector ⁇ (v) obtained by applying the permutation ⁇ to the vector v, and a share [ ⁇ (v)] If
  • a plurality of vector generation unit for generating a share of vector e [e] having as elements corresponding to the element, with the share of [e] and share ⁇ sigma ⁇ , the inverse substitution of substituted sigma vector e sigma -1 And a plurality of inverse permutation application units that generate a share [ ⁇ -1 (e)] of the vector ⁇ -1 (e) to which is applied.
  • Secret deduplication system includes a secret deduplication filter generation systems, secure computing apparatus uses the shared [v] and shares [ ⁇ -1 (e)], v ⁇ -1 ( A deduplication unit that generates a share [v ⁇ -1 (e)] of e) is further provided.
  • the secret calculation device is the secret deduplication filter generation system or the secret calculation device of the secret deduplication system.
  • the present invention it is possible to generate a filter that eliminates duplication while maintaining confidentiality. Further, it is possible to eliminate duplication using the generated filter while maintaining confidentiality.
  • FIG. 1 is a diagram illustrating a functional configuration of a secret deduplication filter generation system and a secret deduplication system.
  • FIG. 2 is a diagram illustrating a functional configuration of the secret computing device.
  • FIG. 3 is a diagram illustrating a secret deduplication filter generation method and a secret deduplication system processing procedure.
  • the secret deduplication system and the secret deduplication filter generation system include N ( ⁇ 2) secret computing devices 1 1 ,..., 1 N.
  • the secret computing devices 1 1 ,..., 1 N are each connected to the communication network 2.
  • the communication network 2 is a circuit-switched or packet-switched communication network configured such that connected devices can communicate with each other.
  • the Internet a LAN (Local Area Network), or a WAN (Wide Area Network). Etc.
  • Each device does not necessarily need to be able to communicate online via the communication network 2.
  • secure computing apparatus 1 1, ..., and stores information to be input to the 1 N in a portable recording medium such as a magnetic tape or a USB memory, secure computing apparatus 1 1 from the portable recording medium, ..., offline to 1 N You may comprise so that it may input.
  • a portable recording medium such as a magnetic tape or a USB memory
  • the secret calculation device 1 n of the secret deduplication filter generation system includes a replacement calculation unit 11 n , a replacement application unit 12 n , a vector generation unit 13 n, and an inverse replacement application unit 14 n.
  • the secret computing device 1 n of the secret deduplication system further includes a deduplication unit 15 n .
  • the permutation calculation unit 11 n , permutation application unit 12 n , vector generation unit 13 n , and inverse permutation application unit 14 n in the secret computation device 1 n surrounded by a broken line in FIG. 2 correspond to the secret deduplication filter generation system. It can be said that it is a part. Also, the replacement calculation unit 11 n , the replacement application unit 12 n , the vector generation unit 13 n , the reverse replacement application unit 14 n and the deduplication unit 15 n in the secret computing device 1 n are portions corresponding to the secret deduplication system. It can be said that there is.
  • Steps S1 to S4 are examples of processing of the secret deduplication filter generation method.
  • Steps S1 to S5 are examples of processing of the secret deduplication method.
  • the processing of each step is performed by secret calculation. That is, the secret computing device 1 n performs the processing of each step without restoring the share, in other words, without knowing the contents of the share.
  • the secret computing device 1 n is configured, for example, by loading a special program into a known or dedicated computer having a central processing unit (CPU), a main storage (RAM), and the like. It is a special device.
  • the secret computing device 1 n executes each process under the control of the central processing unit.
  • the data input to the secret computing device 1 n and the data obtained by each processing are stored in, for example, the main storage device, and the data stored in the main storage device is read out to the central processing unit as necessary. Used for other processing.
  • At least a part of each processing unit of the secret computing device 1 n may be configured by hardware such as an integrated circuit.
  • is an arbitrary vector and [ ⁇ ] is a share in which ⁇ is secretly distributed, ⁇ is an arbitrary replacement, and ⁇ is a share in which ⁇ is secretly distributed.
  • Step S1> The share [v] of the vector v is input to the replacement calculators 11 1 ,..., 11 N.
  • the replacement calculation units 11 1 ,..., 11 N generate ⁇ of the share [v].
  • the permutation calculation unit 11 1 ,..., 11 N generates a share ⁇ of permutation ⁇ that stably sorts the vector v in ascending order using the share v of the vector v (step) S1).
  • Stable sorting means that the order of equivalent data before sorting is preserved after sorting.
  • the generated shares ⁇ are output to the replacement application units 12 1 ,..., 12 N.
  • F is an arbitrary field, and m is an integer of 2 or more.
  • v is an m-dimensional vector v ⁇ F m .
  • the vector v is a vector composed of attribute values of certain attributes in a certain table, for example.
  • the substitution ⁇ is as shown in the following formula (1).
  • each element of the vector v may be bit-decomposed. That is, each element of the vector v may be expressed by 0,1 bits.
  • the vector v may be a vector composed of values obtained by combining attribute values of a plurality of attributes in a certain table.
  • the replacement application units 12 1 ,..., 12 N apply the share ⁇ to the share [v] to generate the share [ ⁇ (v)].
  • the replacement application unit 12 1 ,..., 12 N uses the share [v] and the share ⁇ to share [ ⁇ (v) of the vector ⁇ (v) obtained by applying the replacement ⁇ to the vector v. v)] is generated (step S2).
  • the vector ⁇ (v) (150,160,160,160,170).
  • ⁇ (v) i is the i-th element of the vector ⁇ (v)
  • e i is the i-th element of the vector e.
  • the vector generation units 13 1 ,..., 13 N use the share [ ⁇ (v)] and the element having the vector ⁇ (v) is different from the element before the certain element. Generates a share [e] of the vector e having 1 as the element corresponding to the certain element in the same case (step S3). However, it is assumed that the first element of the vector e is 1.
  • the generated shared [e] is inverse permutation application unit 14 1, ..., and output to 14 N.
  • the inverse permutation application units 14 1 ,..., 14 N reversely apply the share ⁇ to the share [e] to generate a share [ ⁇ ⁇ 1 (e)].
  • the inverse permutation application unit 14 1 ,..., 14 N uses a share [e] and a share ⁇ to apply a vector ⁇ ⁇ obtained by applying an inverse permutation ⁇ ⁇ 1 of a permutation ⁇ to a vector e. generating a share [ ⁇ -1 (e)] of 1 (e) (step S4).
  • ⁇ ⁇ 1 (e) is a vector used for deduplication processing and is also called a filter.
  • the generated share [ ⁇ ⁇ 1 (e)] is an output of the secret deduplication filter generation system.
  • the generated share [ ⁇ ⁇ 1 (e)] is output to the secret deduplication system.
  • Deduplication unit 15 1, ..., 15 N produces a share of v ⁇ -1 (e) [v ⁇ -1 (e)]. More particularly, deduplication unit 15 1, ..., 15 N, using the Share [v] and shares [ ⁇ -1 (e)], v ⁇ -1 (e) share [v ⁇ -1 (e) ] Is generated (step S5).
  • the vector v ⁇ ⁇ 1 (e) (160,150,0,170,0 ).
  • the vector v ⁇ ⁇ 1 (e) is a vector obtained by excluding duplicate elements from the vector v.
  • the deduplication unit 15 1 ,..., 15 N performs the filter ⁇ ⁇ 1 (e) on the attribute value vector w of the attribute other than the attribute that is the basis for generating the share [ ⁇ ⁇ 1 (e)].
  • the share [w ⁇ -1 (e)] of the applied ones w ⁇ -1 (e) it may be determined using the Share [w] and shares [ ⁇ -1 (e)].
  • Deduplication unit 15 1, ..., 15 N are shared [w] and share with [ ⁇ -1 (e)], the share of such vector w ⁇ -1 (e) [w ⁇ -1 (e)] You may ask for.
  • the deduplication units 15 1 ,..., 15 N may determine the shares of the application of the filter ⁇ ⁇ 1 (e) to the attribute value vectors of the plurality of attributes.
  • the program describing the processing contents can be recorded on a computer-readable recording medium.
  • a computer-readable recording medium any recording medium such as a magnetic recording device, an optical disk, a magneto-optical recording medium, and a semiconductor memory may be used.
  • this program is distributed, for example, by selling, transferring, or lending a portable recording medium such as a DVD or CD-ROM in which the program is recorded. Furthermore, the program may be distributed by storing the program in a storage device of the server computer and transferring the program from the server computer to another computer via a network.
  • a computer that executes such a program first stores a program recorded on a portable recording medium or a program transferred from a server computer in its own storage device. When executing the process, this computer reads the program stored in its own storage device and executes the process according to the read program.
  • the computer may directly read the program from a portable recording medium and execute processing according to the program, and the program is transferred from the server computer to the computer. Each time, the processing according to the received program may be executed sequentially.
  • the program is not transferred from the server computer to the computer, and the above processing is executed by a so-called ASP (Application Service Provider) type service that realizes the processing function only by the execution instruction and result acquisition. It is good.
  • ASP Application Service Provider
  • the program in this embodiment includes information that is used for processing by an electronic computer and that conforms to the program (data that is not a direct command to the computer but has a property that defines the processing of the computer).
  • the present apparatus is configured by executing a predetermined program on a computer.
  • a predetermined program on a computer.
  • at least a part of these processing contents may be realized by hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Storage Device Security (AREA)
  • Complex Calculations (AREA)

Abstract

複数の秘密計算装置を含む秘密重複排除システムであって、複数の秘密計算装置は、ベクトルvを昇順に安定ソートする置換σのシェア{{σ}}を生成する複数の置換計算部11nと、ベクトルvに置換σを適用したベクトルσ(v)のシェア[σ(v)]を生成する複数の置換適用部12nと、ベクトルσ(v)のある要素とそのある要素の前の要素とが、違う場合には1を、同じ場合には0をそのある要素に対応する要素として持つベクトルeのシェア[e]を生成する複数のベクトル生成部13nと、ベクトルeに置換σの逆置換σ-1を適用したベクトルσ-1(e)のシェア[σ-1(e)]を生成する複数の逆置換適用部14nと、を備えている。

Description

秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム
 この発明は、秘密計算技術に関する。この発明は、特に、秘匿性を保ったまま重複を排除するフィルタを生成する技術、及び、生成されたフィルタを用いて重複を排除する技術に関する。
 秘密計算技術の分野において、秘匿性を保ったまま、表のある属性の属性値の重複を排除する技術が求められている。
 しかし、秘密計算技術の分野において、秘匿性を保ったまま、表のある属性の属性値の重複を排除する技術は知られていない。
 この発明は、秘匿性を保ったまま重複を排除するフィルタを生成する秘密重複排除フィルタ生成システム、秘匿性を保ったまま、生成されたフィルタを用いて重複を排除する秘密重複排除システム、これらの方法、秘密計算装置及びプログラムを提供することである。
 この発明の一態様による秘密重複排除フィルタ生成システムは、複数の秘密計算装置を含む秘密重複排除フィルタ生成システムであって、Fは任意の体であり、mは2以上の整数であり、αを任意のベクトルとして[α]はαが秘密分散されたシェアであり、βを任意の置換として{{β}}はβが秘密分散されたシェアであり、vはm次元ベクトルv∈Fであり、複数の秘密計算装置は、ベクトルvのシェア[v]を用いて、ベクトルvを昇順に安定ソートする置換σのシェア{{σ}}を生成する複数の置換計算部と、シェア[v]及びシェア{{σ}}を用いて、ベクトルvに置換σを適用したベクトルσ(v)のシェア[σ(v)]を生成する複数の置換適用部と、シェア[σ(v)]を用いて、ベクトルσ(v)のある要素とそのある要素の前の要素とが、違う場合には1を、同じ場合には0をそのある要素に対応する要素として持つベクトルeのシェア[e]を生成する複数のベクトル生成部と、シェア[e]及びシェア{{σ}}を用いて、ベクトルeに置換σの逆置換σ-1を適用したベクトルσ-1(e)のシェア[σ-1(e)]を生成する複数の逆置換適用部と、を備えている。
 この発明の一態様による秘密重複排除システムは、秘密重複排除フィルタ生成システムを備えており、秘密計算装置は、シェア[v]及びシェア[σ-1(e)]を用いて、vσ-1(e)のシェア[vσ-1(e)]を生成する重複排除部を更に備えている。
 この発明の一態様による秘密計算装置は、上記秘密重複排除フィルタ生成システム又は上記秘密重複排除システムの秘密計算装置である。
 この発明によれば、秘匿性を保ったまま重複を排除するフィルタを生成することができる。また、秘匿性を保ったまま、生成されたフィルタを用いて重複を排除することができる。
図1は、秘密重複排除フィルタ生成システム及び秘密重複排除システムの機能構成を例示する図である。 図2は、秘密計算装置の機能構成を例示する図である。 図3は、秘密重複排除フィルタ生成方法及び秘密重複排除システムの処理手続きを例示する図である。
 以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
 図1を参照して、実施形態の秘密重複排除システム及び秘密重複排除フィルタ生成システムの構成例を説明する。秘密重複排除システム及び秘密重複排除フィルタ生成システムは、N(≧2)台の秘密計算装置11,…,1Nを含む。本形態では、秘密計算装置11, …, 1Nはそれぞれ通信網2へ接続されている。通信網2は、接続される各装置が相互に通信可能なように構成された回線交換方式もしくはパケット交換方式の通信網であり、例えばインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などである。なお、各装置は必ずしも通信網2を介してオンラインで通信可能である必要はない。例えば、秘密計算装置11, …, 1Nへ入力する情報を磁気テープやUSBメモリなどの可搬型記録媒体に記憶し、その可搬型記録媒体から秘密計算装置11, …, 1Nへオフラインで入力するように構成してもよい。
 図2を参照して、秘密重複排除システム及び秘密重複排除フィルタ生成システムに含まれる秘密計算装置1n(n=1, …, N)の構成例を説明する。秘密重複排除フィルタ生成システムの秘密計算装置1nは、例えば、図2に示すように、置換計算部11nと、置換適用部12nと、ベクトル生成部13nと、逆置換適用部14nとを備えている。秘密重複排除システムの秘密計算装置1nは、重複排除部15nを更に備えている。
 図2において破線で囲った、秘密計算装置1nの中の置換計算部11n、置換適用部12n、ベクトル生成部13n、逆置換適用部14nが秘密重複排除フィルタ生成システムに対応する部分であると言える。また、秘密計算装置1nの中の置換計算部11n、置換適用部12n、ベクトル生成部13n、逆置換適用部14n及び重複排除部15nが秘密重複排除システムに対応する部分であると言える。
 秘密計算装置1n(1≦n≦N)の各構成部が他の秘密計算装置1n'(n'=1, …, N、ただしn≠n')の各構成部と協調しながら後述する各ステップの処理を行うことにより実施形態の秘密重複排除方法及び秘密重複排除フィルタ生成方法が実現される。ステップS1からステップS4が秘密重複排除フィルタ生成方法の処理の例である。ステップS1からステップS5が秘密重複排除方法の処理の例である。
 なお、各ステップの処理は、秘密計算により行われる。すなわち、秘密計算装置1nは、シェアを復元することなく、言い換えればシェアの中身を知ることなく、各ステップの処理を行う。
 秘密計算装置1nは、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。秘密計算装置1nは、例えば、中央演算処理装置の制御のもとで各処理を実行する。秘密計算装置1nに入力されたデータや各処理で得られたデータは、例えば、主記憶装置に格納され、主記憶装置に格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。秘密計算装置1nの各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。
 以下の説明において、αを任意のベクトルとして[α]はαが秘密分散されたシェアであり、βを任意の置換として{{β}}はβが秘密分散されたシェアであるとする。
 図3を参照して、実施形態の秘密重複排除システムが実行する秘密重複排除フィルタ生成方法の処理手続きを説明する。
 <ステップS1>
 置換計算部111,…,11Nに、ベクトルvのシェア[v]が入力される。
 置換計算部111,…,11Nは、シェア[v]の{{σ}}を生成する。
 より詳細には、置換計算部111,…,11Nは、ベクトルvのシェア[v]を用いて、ベクトルvを昇順に安定ソートする置換σのシェア{{σ}}を生成する(ステップS1)。安定ソートとは、同等なデータのソート前の順序が、ソート後も保存されるものをいう。
 生成されたシェア{{σ}}は、置換適用部121,…,12Nに出力される。
 Fは任意の体であり、mは2以上の整数である。また、vはm次元ベクトルv∈Fである。ベクトルvは、例えばある表のある属性の属性値からなるベクトルである。
 例えば、ベクトルvが、「身長」という属性の属性値からなるベクトルであり、v=(160,150,160,170,160)であるとする。この場合、置換σは以下の式(1)のようになる。
Figure JPOXMLDOC01-appb-M000001
 なお、ベクトルvの各要素は、ビット分解されたものであってもよい。すなわち、ベクトルvの各要素は、その各要素が0,1のビットで表現されたものであってもよい。また、ベクトルvは、ある表の複数の属性の属性値を結合した値からなるベクトルであってもよい。
 <ステップS2>
 置換適用部121,…,12Nに、シェア[v]及びシェア{{σ}}が入力される。
 置換適用部121,…,12Nは、シェア[v]にシェア{{σ}}を適用してシェア[σ(v)]を生成する。
 より詳細には、置換適用部121,…,12Nは、シェア[v]及びシェア{{σ}}を用いて、ベクトルvに置換σを適用したベクトルσ(v)のシェア[σ(v)]を生成する(ステップS2)。
 生成されたシェア[σ(v)]は、ベクトル生成部131,…,13Nに出力される。
 例えば、ベクトルv=(160,150,160,170,160)であり、置換σが式(1)で示される置換である場合には、ベクトルσ(v)=(150,160,160,160,170)となる。
 <ステップS3>
 ベクトル生成部131,…,13Nに、シェア[σ(v)]が入力される。
 ベクトル生成部131,…,13Nは、i=1,…,mとして、[ei]:=[σ(v)i≠σ(v)i-1]、ただし[e1]=1となる[e]を生成する。ここで、σ(v)iは、ベクトルσ(v)のi番目の要素であり、eiはベクトルeのi番目の要素である。
 より詳細には、ベクトル生成部131,…,13Nは、シェア[σ(v)]を用いて、ベクトルσ(v)のある要素とそのある要素の前の要素とが、違う場合には1を、同じ場合には0をそのある要素に対応する要素として持つベクトルeのシェア[e]を生成する(ステップS3)。ただし、ベクトルeの最初の要素は1であるとする。
 生成されたシェア[e]は、逆置換適用部141,…,14Nに出力される。
 例えば、ベクトルσ(v)=(150,160,160,160,170)である場合には、ベクトルe=(1,1,0,0,1)となる。
 <ステップS4>
 逆置換適用部141,…,14Nに、シェア[e]及びシェア{{σ}}が入力される。
 逆置換適用部141,…,14Nは、シェア[e]にシェア{{σ}}を逆適用してシェア[σ-1(e)]を生成する。
 より詳細には、逆置換適用部141,…,14Nは、シェア[e]及びシェア{{σ}}を用いて、ベクトルeに置換σの逆置換σ-1を適用したベクトルσ-1(e)のシェア[σ-1(e)]を生成する(ステップS4)。σ-1(e)は、重複排除処理に用いられるベクトルであり、フィルタとも言う。
 生成されたシェア[σ-1(e)]が、秘密重複排除フィルタ生成システムの出力となる。秘密重複排除フィルタ生成処理に続けて秘密重複排除処理が行われる場合には、生成されたシェア[σ-1(e)]は、秘密重複排除システムに出力される。
 例えば、ベクトルe=(1,1,0,0,1)であり、置換σが式(1)で示される置換である場合には、ベクトルσ-1(e)=(1,1,0,1,0)となる。
 <ステップS5>
 重複排除部151,…,15Nに、シェア[v]及びシェア[σ-1(e)]が入力される。
 重複排除部151,…,15Nは、vσ-1(e)のシェア[vσ-1(e)]を生成する。
 より詳細には、重複排除部151,…,15Nは、シェア[v]及びシェア[σ-1(e)]を用いて、vσ-1(e)のシェア[vσ-1(e)]を生成する(ステップS5)。
 例えば、ベクトルv=(160,150,160,170,160)であり、ベクトルσ-1(e)=(1,1,0,1,0)である場合には、ベクトルvσ-1(e)=(160,150,0,170,0)となる。このように、ベクトルvσ-1(e)は、ベクトルvから重複した要素を排除したベクトルとなっている。
 この実施形態によれば、秘匿性を保ったまま重複を排除するフィルタを生成することができる。また、この実施形態によれば、秘匿性を保ったまま、生成されたフィルタを用いて重複を排除することができる。
 [変形例]
 以上、この発明の実施の形態について説明したが、具体的な構成は、これらの実施の形態に限られるものではなく、この発明の趣旨を逸脱しない範囲で適宜設計の変更等があっても、この発明に含まれることはいうまでもない。
 例えば、重複排除部151,…,15Nは、シェア[σ-1(e)]を生成する基になった属性以外の属性の属性値のベクトルwに対してフィルタσ-1(e)を適用したものwσ-1(e)のシェア[wσ-1(e)]を、シェア[w]及びシェア[σ-1(e)]を用いて求めてもよい。
 例えば、「身長」という属性から得られたベクトルσ-1(e)=(1,1,0,1,0)であり、「性別」という属性の属性値のベクトルw=(男,女,男,女,男)である場合には、ベクトルwσ-1(e)=(男,女,0,女,0)となる。重複排除部151,…,15Nは、シェア[w]及びシェア[σ-1(e)]を用いて、このようなベクトルwσ-1(e)のシェア[wσ-1(e)]を求めてもよい。
 また、重複排除部151,…,15Nは、複数の属性の属性値のベクトルのそれぞれに対してフィルタσ-1(e)を適用したもののシェアを求めてもよい。
 また、実施の形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
 [プログラム、記録媒体]
 上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
 このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
 また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (6)

  1.  複数の秘密計算装置を含む秘密重複排除フィルタ生成システムであって、
     Fは任意の体であり、mは2以上の整数であり、αを任意のベクトルとして[α]はαが秘密分散されたシェアであり、βを任意の置換として{{β}}はβが秘密分散されたシェアであり、vはm次元ベクトルv∈Fであり、
     上記複数の秘密計算装置は、
     上記ベクトルvのシェア[v]を用いて、上記ベクトルvを昇順に安定ソートする置換σのシェア{{σ}}を生成する複数の置換計算部と、
     上記シェア[v]及び上記シェア{{σ}}を用いて、上記ベクトルvに上記置換σを適用したベクトルσ(v)のシェア[σ(v)]を生成する複数の置換適用部と、
     上記シェア[σ(v)]を用いて、上記ベクトルσ(v)のある要素とそのある要素の前の要素とが、違う場合には1を、同じ場合には0をそのある要素に対応する要素として持つベクトルeのシェア[e]を生成する複数のベクトル生成部と、
     上記シェア[e]及び上記シェア{{σ}}を用いて、上記ベクトルeに上記置換σの逆置換σ-1を適用したベクトルσ-1(e)のシェア[σ-1(e)]を生成する複数の逆置換適用部と、
     を含む秘密重複排除フィルタ生成システム。
  2.  請求項1の秘密重複排除フィルタ生成システムを含み、
     上記複数の秘密計算装置は、上記シェア[v]及び上記シェア[σ-1(e)]を用いて、vσ-1(e)のシェア[vσ-1(e)]を生成する重複排除部を更に含む、
     秘密重複排除システム。
  3.  請求項1の秘密重複排除フィルタ生成システム又は請求項2の秘密重複排除システムの秘密計算装置。
  4.  Fは任意の体であり、mは2以上の整数であり、αを任意のベクトルとして[α]はαが秘密分散されたシェアであり、βを任意の置換として{{β}}はβが秘密分散されたシェアであり、vはm次元ベクトルv∈Fであり、
     置換計算部が、上記ベクトルvのシェア[v]を用いて、上記ベクトルvを昇順に安定ソートする置換σのシェア{{σ}}を生成する置換計算ステップと、
     置換適用部が、上記シェア[v]及び上記シェア{{σ}}を用いて、上記ベクトルvに上記置換σを適用したベクトルσ(v)のシェア[σ(v)]を生成する置換適用ステップと、
     ベクトル生成部が、上記シェア[σ(v)]を用いて、上記ベクトルσ(v)のある要素とそのある要素の前の要素とが、違う場合には1を、同じ場合には0をそのある要素に対応する要素として持つベクトルeのシェア[e]を生成するベクトル生成ステップと、
     逆置換適用部が、上記シェア[e]及び上記シェア{{σ}}を用いて、上記ベクトルeに上記置換σの逆置換σ-1を適用したベクトルσ-1(e)のシェア[σ-1(e)]を生成する逆置換適用ステップと、
     を含む秘密重複排除フィルタ生成方法。
  5.  請求項4の秘密重複排除フィルタ生成方法と、
     重複排除が、上記シェア[v]及び上記シェア[σ-1(e)]を用いて、vσ-1(e)のシェア[vσ-1(e)]を生成する重複排除ステップと、
     を含む秘密重複排除方法。
  6.  請求項3の秘密計算装置の各部としてコンピュータを機能させるためのプログラム。
PCT/JP2019/010457 2018-03-26 2019-03-14 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム WO2019188320A1 (ja)

Priority Applications (5)

Application Number Priority Date Filing Date Title
AU2019242127A AU2019242127B2 (en) 2018-03-26 2019-03-14 Secret deduplication filter generation system, secret deduplication system, method for these, secret calculation apparatus, and program
JP2020509884A JP7147840B2 (ja) 2018-03-26 2019-03-14 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム
EP19774194.5A EP3779931B1 (en) 2018-03-26 2019-03-14 Secret deduplication filter generation system, secret deduplication system, method for these, secret calculation apparatus, and program
US16/981,472 US11625363B2 (en) 2018-03-26 2019-03-14 Secret deduplication filter generation system, secret deduplication system, method for these, secret calculation apparatus, and program
CN201980021728.3A CN111902854B (zh) 2018-03-26 2019-03-14 秘密重复排除滤波器生成系统、秘密重复排除系统、它们的方法、秘密计算装置以及记录介质

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-058270 2018-03-26
JP2018058270 2018-03-26

Publications (1)

Publication Number Publication Date
WO2019188320A1 true WO2019188320A1 (ja) 2019-10-03

Family

ID=68061402

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/010457 WO2019188320A1 (ja) 2018-03-26 2019-03-14 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム

Country Status (6)

Country Link
US (1) US11625363B2 (ja)
EP (1) EP3779931B1 (ja)
JP (1) JP7147840B2 (ja)
CN (1) CN111902854B (ja)
AU (1) AU2019242127B2 (ja)
WO (1) WO2019188320A1 (ja)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0581337A (ja) * 1991-09-21 1993-04-02 Toshiba Corp データ処理装置

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4314097A (en) * 1980-03-10 1982-02-02 Burroughs Corporation Authenticator device for precluding compensating text modifications in transmitted messages
JPH05191335A (ja) * 1992-01-17 1993-07-30 Hitachi Ltd 音声情報無線受渡しシステム
JPH10268766A (ja) * 1997-01-24 1998-10-09 Nec Corp 暗号鍵処理システム及び暗号鍵処理システムを実現するコンピュータプログラムを格納した記憶媒体
JP2002217890A (ja) * 2001-01-22 2002-08-02 Advanced Mobile Telecommunications Security Technology Research Lab Co Ltd 複製端末発見方法
JP5524012B2 (ja) * 2010-10-06 2014-06-18 日本電信電話株式会社 マッチングシステム、方法、計算装置、クライアント装置及びプログラム
WO2012046692A1 (ja) * 2010-10-06 2012-04-12 日本電信電話株式会社 秘密分散システム、秘密分散装置、秘密分散方法、秘密ソート方法、秘密分散プログラム
JP5486520B2 (ja) * 2011-01-21 2014-05-07 日本電信電話株式会社 セキュア集合関数システム、秘密集合関数装置、セキュア集合関数処理方法、セキュア集合関数プログラム
IL213662A0 (en) * 2011-06-20 2011-11-30 Eliphaz Hibshoosh Key generation using multiple sets of secret shares
JP5961571B2 (ja) * 2013-02-26 2016-08-02 日本電信電話株式会社 秘密表除算装置及び方法
JP6171649B2 (ja) * 2013-07-16 2017-08-02 日本電気株式会社 暗号化装置、復号装置、暗号化方法および暗号化プログラム
US9158925B2 (en) * 2013-11-27 2015-10-13 Microsoft Technology Licensing, Llc Server-aided private set intersection (PSI) with data transfer
US10002547B2 (en) * 2014-01-17 2018-06-19 Nippon Telegraph And Telephone Corporation Secret calculation method, secret calculation system, random permutation device, and program
EP3096309B1 (en) * 2014-01-17 2018-10-31 Nippon Telegraph And Telephone Corporation Secret calculation method, secret calculation system, sorting device, and program
CN106796765B (zh) * 2014-10-08 2020-10-20 日本电信电话株式会社 非减序列判定装置、非减序列判定方法以及记录介质
CN107113165B (zh) * 2014-12-23 2020-11-17 诺基亚技术有限公司 在云计算中用于重复数据管理的方法和装置
JP5957120B1 (ja) * 2015-05-12 2016-07-27 日本電信電話株式会社 秘密分散方法、秘密分散システム、分散装置、およびプログラム
FR3074390B1 (fr) * 2017-11-30 2020-05-15 IPception Procede et systeme de chiffrement/dechiffrement de donnees a ultra faible latence a des fins de stockage et/ou de communication de donnees securises

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0581337A (ja) * 1991-09-21 1993-04-02 Toshiba Corp データ処理装置

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
KOKI HAMADA; NAOTO KIRIBUCHI; DAI IKARASHI: "2C3-5 : An Equijoin Algorithm Based on Non-unique Key Columns for Secure Multi-party Computation", THE 2015 SYMPOSIUM ON CRYPTOGRAPHY AND INFORMATION SECURITY (SCIS2015, 20 January 2015 (2015-01-20), pages 1 - 6, XP009517229 *
See also references of EP3779931A4 *
YIGZAW, KASSAYE YITBAREK ET AL.: "Secure and scalable deduplication of horizontally partitioned health data for privacy-preserving distributed statistical computation", BMC MEDICAL INFORMATICS AND DECISION MAKING, vol. 17, no. 1, 2017, pages 1 - 19, XP055734386, Retrieved from the Internet <URL:https://bmcmedinformdecismak.biomedcentral.com/article/10.1186/s12911-016-0389-x> [retrieved on 20190604] *

Also Published As

Publication number Publication date
EP3779931A4 (en) 2021-12-15
EP3779931B1 (en) 2023-03-01
CN111902854B (zh) 2023-08-01
JPWO2019188320A1 (ja) 2021-02-12
EP3779931A1 (en) 2021-02-17
AU2019242127B2 (en) 2021-10-28
JP7147840B2 (ja) 2022-10-05
AU2019242127A1 (en) 2020-10-01
CN111902854A (zh) 2020-11-06
US11625363B2 (en) 2023-04-11
US20210026812A1 (en) 2021-01-28

Similar Documents

Publication Publication Date Title
JP6973632B2 (ja) 秘密集約総和システム、秘密計算装置、秘密集約総和方法、およびプログラム
US11593362B2 (en) Secure aggregate function computation system, secure computation apparatus, secure aggregate function computation method, and program
JP5872085B1 (ja) 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム
JP5864004B1 (ja) 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム
JP5860557B1 (ja) 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム
WO2017065123A1 (ja) 秘密乱数合成装置、秘密乱数合成方法、およびプログラム
JP6973633B2 (ja) 秘密集約最大値システム、秘密集約最小値システム、秘密計算装置、秘密集約最大値方法、秘密集約最小値方法、およびプログラム
Heddes et al. Hyperdimensional hashing: A robust and efficient dynamic hash table
JP6777816B2 (ja) 秘密改ざん検知システム、秘密改ざん検知装置、秘密改ざん検知方法、およびプログラム
WO2020036126A1 (ja) 秘密結合システム、この方法、秘密計算装置及びプログラム
WO2019188320A1 (ja) 秘密重複排除フィルタ生成システム、秘密重複排除システム、これらの方法、秘密計算装置及びプログラム
JP5889454B1 (ja) 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム
WO2019073913A1 (ja) 擬似データ生成装置、その方法、及びプログラム
CN114817954A (zh) 图像的处理方法、系统和装置
WO2019176831A1 (ja) 秘密表参照システム、方法、秘密計算装置及びプログラム
JP7081663B2 (ja) 秘密結合システム、方法、秘密計算装置及びプログラム
US20200218833A1 (en) Secure reading apparatus, secure writing apparatus, method thereof, and program
JP7067624B2 (ja) 秘密強写像計算システム、これらの方法、秘密計算装置及びプログラム
WO2020036127A1 (ja) 秘密結合情報生成システム、秘密結合システム、これらの方法、秘密計算装置及びプログラム

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19774194

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020509884

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019242127

Country of ref document: AU

Date of ref document: 20190314

Kind code of ref document: A

ENP Entry into the national phase

Ref document number: 2019774194

Country of ref document: EP

Effective date: 20201026