WO2019111318A1 - サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 - Google Patents
サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 Download PDFInfo
- Publication number
- WO2019111318A1 WO2019111318A1 PCT/JP2017/043629 JP2017043629W WO2019111318A1 WO 2019111318 A1 WO2019111318 A1 WO 2019111318A1 JP 2017043629 W JP2017043629 W JP 2017043629W WO 2019111318 A1 WO2019111318 A1 WO 2019111318A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- data
- secret
- random number
- storage unit
- unit
- Prior art date
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
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
-
- 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/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
-
- 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
Definitions
- a secret calculation protocol that is efficient in terms of the number of communication rounds can be said to be an effective method in a communication environment where the network delay is large.
- a secret calculation protocol that is efficient in terms of the amount of communication is an effective method in a communication environment where the communication band is narrow.
- calculation may be performed using a plurality of server devices on the cloud. However, each server device may be operating in different cloud environments, and an increase in network delay may be considered. For this reason, it is particularly important to propose an efficient secret calculation protocol for the number of communication rounds.
- FIG. 1 is a block diagram showing an example of a functional configuration of a system for judging a security equality sign according to a first embodiment of the present invention.
- the secret shared data of the determination result is stored in the first to n-th data storage units 102_1 to 102_n, and then transferred to the first to n-th secret shared data recovery units 107_1 to 107_n, and even if the recovery results are obtained good.
- the random number share [r] _Ri is stored in the ith data storage unit 102_i.
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
Abstract
秘密分散の方法に依らず、位数2の環上で行う時と位数が2より大きい環上で行う時とで、通信ラウンド数に差が生じずに実行できるサーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラムを提供する。本発明によるサーバ装置は、秘密分散データ生成部とデータ記憶部とマスク部と乱数シェアbit-conjunction部と乱数シェア生成部と判定bit-conjunction部と秘密分散データ復元部とを備える。秘密分散データ生成部は、秘密分散データを生成する。データ記憶部は、秘密分散データを記憶する。マスク部は、乱数の秘密分散データを用いて、ある秘密分散データをマスクする。乱数シェア生成部は、乱数を秘密分散した乱数シェアを生成する。乱数シェアbit-conjunction部は、乱数を秘密分散した値同士の論理積計算を他の計算と並行して行う。判定bit-conjunction部は、乱数シェアbit-conjunction部が出力した値を用いて秘密等号判定を行う。
Description
本発明は秘密計算プロトコルに関し、特に効率よく秘密等号判定を行うことができるサーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体に関する。
秘密計算プロトコルとは、プロトコルの各参加者の入力や計算過程の値を秘匿しつつ、計算結果のみを求めることができる技術である。秘密計算プロトコルとして、論理回路や算術回路をベースとして任意の計算を実行できる一般的な方式が提案されている。
なお、秘密計算プロトコルによって任意の計算を実行する場合、通信コストが発生する。通信コストは、通信ラウンド数と通信量との2つの評価軸によって評価される。ここで、通信ラウンド数とは、ある計算処理を秘密計算プロトコルによって実行する際に、秘密計算プロトコルの各参加者間で生じた通信回数のことである。このとき、たとえば、秘密計算プロトコルの三名の参加者をP1、P2、P3とする。ある計算処理を秘密計算プロトコルによって実行する際に、P1-P2間で1回の通信、P2-P3間で1回の通信、P3-P1間で1回の通信がそれぞれ発生したとして、これらの通信が並行して行えるものであれば、1ラウンドとして通信ラウンド数を数えることに注意する。また、通信量とは、ある計算処理を秘密計算プロトコルによって実行する際に、秘密計算プロトコルの各参加者間で生じた通信データの量のことである。
秘匿化されたデータを秘匿化したままで検索できる秘匿検索技術が、従来から種々提案されている。
秘匿検索を実現する一つの技術として、マルチパーティ計算(Multi-Party Computation:MPC)技術が知られている(例えば、非特許文献1参照)。
MPCは、それぞれ秘密情報を持つ2台以上のサーバ装置が協力して計算することで、それぞれの秘密情報を漏らすことなく、秘密情報を入力とする任意の関数値を計算する。MPCを用いて秘匿検索を実現するには、次のようにすればよい。まず、預けるデータを秘密分散法(例えば、非特許文献1参照)で上記2台以上のサーバ装置に分散して保持する。そして、上記関数として「ある部分データを含むデータが秘密分散されてサーバ装置に保存されているときに1を、そうでないときに0を返す関数」のように定義する。
MPCを実現する手段として、非特許文献1に記載されている、Shamirのしきい値型秘密分散法(Shamir’s Secret Sharing:SSS)を用いる手段がある。まず、非特許文献1について説明する。
しきい値型秘密分散法とは、秘密情報を複数の分散情報に変換する技術である。しきい値型秘密分散法は、変換された分散情報をしきい値以上の個数を集めることによって秘密情報を復元でき、しきい値以下の個数の分散情報からは元の秘密情報を漏らさないという特徴を持つ。
非特許文献1のSSSは、N台のサーバ装置で有限体Zpに属する数aを秘密に分散する方法であり、k-1次多項式f_a(x)を用いる。この方法では、例えばf_a(0)=aとし、第iのサーバ装置(1≦i≦N)には、それぞれ多項式上の点f_a(i)を配る。配られる情報f_a(i)をSSSにおけるxの分散情報と呼ぶ。このとき、k台のサーバ装置が協力すると、多項式上のk個の点からk-1次多項式f_a(x)を一意に復元することができるので、秘密情報であるf_a(0)を求めることができる。
秘密情報aを、pを法とする多項式f_a(x)を用いてN台のサーバ装置で分散するときに生成される、秘密情報aの分散情報を、[a]p=(f_a(1), f_a(2), …, f_a(N))と書くことにする。このとき、識別子i(1≦i<N)を持つ第iのサーバ装置にf_a(i)が保持されているものとする。
任意の計算を実行できる一般的な方式として、たとえば、非特許文献2、非特許文献3、非特許文献4、非特許文献5が挙げられる。大まかな方式の種類は、非特許文献4に代表されるGarbled Circuitベースの方式と、非特許文献2、非特許文献3、非特許文献5のような秘密分散法ベースの方式とに分けられる。なお、秘密分散法とは、ある値を複数に分散し、分散された値を閾値以上の個数分だけ集めると、元の秘密情報を復元できる、というものである。ここで、分散した値を、秘密分散データやシェアと呼ぶ。
非特許文献3は、論理回路と算術回路および両者を混合した回路について、計算を実行可能な秘密計算プロトコルを開示している。非特許文献2と異なり、非特許文献3は、非特許文献1の秘密分散法を用いており、素数pを位数とする体上での計算となる。このため、非特許文献3では、体の位数の大きさに比例して、通信量が増大する。ここで、論理回路と算術回路の混合回路を計算する際に、論理回路における値と算術回路における値は、ともに素数pを位数とする体に属する値であることに注意する。なお、非特許文献3では、位数の大きさに関わらず、定数回の通信ラウンド数で計算が実行できる。ただし、多量の通信量を必要とする。
非特許文献4は、論理回路ベースで計算を実行する秘密計算プロトコルを開示している。非特許文献4の方式は、疑似ランダム関数と紛失通信プロトコルを用いた方式で、定数回の通信ラウンド数で計算が実行できる。ただし、非特許文献4の方式では、多量の通信量を必要とする。
非特許文献2は、論理回路と算術回路および両者を混合した回路について、計算を実行可能な秘密計算プロトコルを開示している。非特許文献2の方式は、剰余環上の加法秘密分散法をベースとした方式で、環の位数の大きさに比例して、通信量が増大する。また、非特許文献2の方式は、非特許文献3の方式と異なり、論理回路と算術回路の混合回路を計算する際に、それぞれの値に応じた環上で計算することが可能である。たとえば、論理回路の値は位数2の環に属する値、算術回路の値は位数2^n’(n’は2より大きい整数)の環に属する値として、計算可能である。非特許文献3の方式は、論理回路における値0,1も素数pを位数とする体上で計算する必要があるため、非特許文献2の方が通信量を小さく抑えることができる。なお、非特許文献3や非特許文献4といった、定数回の通信ラウンド数で計算を実行する方式と比べると、同じ計算処理を行う場合、非特許文献2の方が少ない通信量で実行できる。ただし、非特許文献2の方式は、計算処理の回路の深さに比例して、通信ラウンド数が増大する。
ここで、計算処理の回路の深さとは、入力ゲートから出力ゲートまでに通過する必要がある最大ゲート総数ではなく、入力ゲートから出力ゲートまでに通過する必要がある論理積ゲートと乗算ゲートの最大ゲート総数を指す。以降、回路の深さとは、入力ゲートから出力ゲートまでに通過する必要がある論理積ゲートと乗算ゲートと秘密分散復元ゲートの最大ゲート総数を意味することとする。
非特許文献5は、論理回路と算術回路との両者を混合した回路について、計算を実行可能な秘密計算プロトコルを開示している。非特許文献5の方式は、剰余環上の複製型秘密分散法をベースとした方式で、位数の大きさに比例して、通信量が増大する。ここで、非特許文献5の方式は、非特許文献2の方式と同様に非特許文献3の方式と異なり、論理回路と算術回路の混合回路を計算する際に、それぞれの値に応じた環上で計算することが可能である。このため、非特許文献5の方が非特許文献3の方式より通信量を小さく抑えることができる。また、非特許文献3や非特許文献4といった、定数回の通信ラウンド数で計算を実行する方式と比べると、同じ計算処理を行う場合、非特許文献5の方が少ない通信量で実行できる。ただし、非特許文献5の方式は、計算処理の回路の深さに比例して、通信ラウンド数が増大する。
ここで、たとえば、通信ラウンド数の面で効率が良い秘密計算プロトコルは、ネットワーク遅延が大きい通信環境で有効な方式といえる。また、通信量の面で効率が良い秘密計算プロトコルは、通信帯域が狭い通信環境で有効な方式である。秘密計算プロトコルでは、クラウド上の複数台のサーバ装置を用いて計算を実行することがある。しかしながら、それぞれのサーバ装置は異なるクラウド環境にて動作している場合があり、ネットワーク遅延の増加が考えられる。このため特に、通信ラウンド数について効率の良い秘密計算プロトコルの提案は重要といえる。
このとき、排他的論理和や論理積、加算や乗算といった基本的な二項演算に対して、効率の良い方法を提案するだけでなく、より上位の計算プロトコルについても効率の良い方法を提案することが必要といえる。これは、任意の計算を実行できる一般的な方式で特定の関数を構成する場合、その特定の関数を最適な構成で実行する方法が非自明であるためである。上位の計算プロトコルとは、たとえば、秘密等号判定が挙げられる。ここで、秘密等号判定とは、秘匿されたある環上の要素a,bを引数に取り、aとbが一致するのであれば位数2の環上の要素である1を秘匿した値、不一致であれば位数2の環上の要素である0を秘匿した値をそれぞれ返す処理である。秘密等号判定は、秘密計算プロトコルにおける部分一致判定や距離計算といった文字列処理にて多用される。
ここで、非特許文献2の秘密等号判定による通信ラウンド数は、(Log(L)+1)回となる。なお、Logの底は2であり、Lは環の位数のビット長である。仮に、非特許文献2において、位数2の環上の秘密分散のシェア列同士に対して一致しているか否か計算する場合、通信ラウンド数はLog(L)回となる。つまり、引数に位数が2より大きい環の秘密分散のシェアを取ったとき、秘密等号判定における通信ラウンド数で1回分のロスが生じていることとなる。
Adi Shamir、"How to Share a Secret、" Commun. ACM 22(11)、 pp.612-613、 1979.
Dan Bogdanov、Margus Niitsoo、Tomas Toft、Jan Willemson、 "High-performance secure multi-party computation for data mining applications、" International Journal of Information Security、11(6)、403-418.
Takashi Nishide、Kazuo Ohta、 "Multiparty Computation for Interval,Equality,and Comparison without Bit-Decomposition Protocol、" In PKC2007、LNCS、vol.4450、pp.90-104、Springer、Berlin、Heidelberg.
Andrew C.Yao、"Protocols for secure computations、"In Proceedings of the 21st Annual IEEE Symposium on the Foundations of Computer Science、pp.160-164、1982.
Toshinori Araki、Jun Furukawa、Yehuda Lindell、Ariel Nof、Kazuma Ohara、"High-Throughput Semi-Honest Secure Three-party Computation with an Honest Majority、" In Proceedings of the 2016 ACM SIGSAC Conferenece on Computer and Communications Security、pp.805-817、ACM.
このように、非特許文献2では、位数2の環上で秘密等号判定を行う時と位数が2より大きい環上で秘密等号判定を行う時とで、通信ラウンド数に差が生じ、後者の方が通信ラウンド数の点でコストが大きくなっていた。ラウンド数が増加すると、ネットワーク遅延が大きい通信環境では、性能の悪化が生じ得る。特に、等号判定を多用するような文字列処理を秘密計算プロトコルで実行する場合、秘密等号判定における通信ラウンド数の増加は、計算処理全体の性能低下を引き起こす恐れがある。一方で、非特許文献1、非特許文献3では、位数の大きさに関わらず通信ラウンド数は定数回のものの、通信量が加法秘密分散ベースの非特許文献2より多くなってしまうという問題があった。
本発明の目的は、上記課題を解決し、秘密分散の方法に依らず通信ラウンド数が少ない秘密等号判定を実行することができる、サーバ装置、秘密等号判定システム、秘密等号判定方法、および秘密等号判定プログラム記録媒体を提供することにある。
上述の課題に鑑み、本発明の一態様は、第1の秘密分散データを生成する秘密分散データ生成部と、前記第1の秘密分散データと他のサーバ装置で生成された第2の秘密分散データとを保存するデータ記憶部と、乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶する乱数シェア生成部と、前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶するマスク部と、前記マスクしたデータを他のサーバ装置へ送信すると共に、他のサーバ装置から取得したマスクしたデータから元のデータを復元し、復元したデータを出力する秘密分散データ復元部と、前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力する乱数シェアbit-conjunction部と、前記復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行う判定bit-conjunction部と、を備えるサーバ装置である。
また、本発明の他の態様は、第1の秘密分散データを生成するステップと、前記第1の秘密分散データと他のサーバ装置で生成された第2の秘密分散データとをデータ記憶部に保存するステップと、乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶するステップと、前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶するステップと、前記マスクしたデータを他のサーバ装置へ送信すると共に、他のサーバ装置から取得したマスクしたデータから元のデータを復元し、復元したデータを出力するステップと、前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力するステップと、前記復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行うステップと、を備える秘密等号判定方法である。
さらに、本発明の別の態様は、第1の秘密分散データを生成する処理と、前記第1の秘密分散データと他のサーバ装置で生成された第2の秘密分散データとをデータ記憶部に保存する処理と、乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶する処理と、前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶する処理と、前記マスクしたデータを他のサーバ装置へ送信すると共に、他のサーバ装置から取得したマスクしたデータから元のデータを復元し、復元してデータを出力する処理と、前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力する処理と、前記復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行う処理と、をコンピュータに実行させる秘密等号判定プログラムを記録した記録媒体である。
本発明によれば、被計算値や判定結果や計算過程の値を知ることができない秘密等号判定を、位数2の環上で行う時と位数が2より大きい環上で行う時とで、全体の通信ラウンド数に差が生じずに実行できる。また、本発明は秘密分散の方法に依存しないため、構成要素の改善によって効率を改善することが可能である。たとえば、非特許文献5で本発明を実施すると、非特許文献2で実施した場合と比べて、小さい通信量で秘密等号判定を実行できる。
本発明の更なる利点及び実施形態を、記述と図面を用いて下記に詳細に説明する。
以下、本発明の実施形態について図面を参照しつつ説明する。但し、以下に説明する実施形態によって本発明の技術的範囲は何ら限定解釈されることはない。
(第1の実施形態)
図1乃至図3を参照して、本発明の第1の実施形態に係る秘密等号判定システムついて説明する。
図1乃至図3を参照して、本発明の第1の実施形態に係る秘密等号判定システムついて説明する。
図1は、本発明の第1の実施形態による秘密等号判定システムの機能構成例を示すブロック図である。
図1を参照すると、本発明の第1の実施形態による秘密等号判定システムは、後述する図2で参照される第1乃至第n(nは2以上の整数)のサーバ装置100_1、100_2、...、100_nから成る。第1の実施形態による秘密等号判定システムにおいて、第1乃至第nのサーバ装置100_1~100_nは、自身と異なるサーバ装置とネットワーク経由で通信可能に接続されている。図2は、第iのサーバ装置100_i(1≦i≦n)の機能構成例を示すブロック図である。
図2に示すように、第iのサーバ装置100_iは、第iの秘密分散データ生成部101_iと、第iのデータ記憶部102_iと、第iのマスク部103_iと、第iの乱数シェアbit-conjunction部104_iと、第iの乱数シェア生成部105_iと、第iの判定bit-conjunction部106_iと、第iの秘密分散データ復元部107_iと、を含む。第iの秘密分散データ生成部101_iと第iのマスク部103_iと第iの判定bit-conjunction部106_iと第iの秘密分散データ復元部107_iとは、それぞれ自身が含まれるサーバ装置と異なるサーバ装置に対し、ネットワーク経由で通信可能に接続されている。第iのデータ記憶部102_iは、第iの秘密分散データ生成部101_iと第iのマスク部103_iと第iの乱数シェアbit-conjunction部104_iと第iの乱数シェア生成部105_iと第iの判定bit-conjunction部106_iと第iの秘密分散データ復元部107_iと、それぞれ接続されている。第iの乱数シェアbit-conjunction部104_iは、第iの乱数シェア生成部105_iと第iの判定bit-conjunction部106_iと、それぞれ接続されている。第iの判定bit-conjunction部106_iと第iの秘密分散データ復元部107_iは接続されている。
このような構成の秘密等号判定システムにおいては、第1乃至第nのサーバ装置100_1~100_nの内のいずれかの装置が入力した値a,b、あるいは、第1乃至第nのデータ記憶部102_1~102_nに記憶された秘密分散データ[a],[b]に対し、その入力や計算過程の値からa,bの値を知られることなく、a=bが成り立つか否かの判定結果の秘密分散データを計算し、第1乃至第nのデータ記憶部102_1~102_nにそれぞれ記憶する。前記判定結果の秘密分散データは、第1乃至第nのデータ記憶部102_1~102_nに記憶した後、第1乃至第nの秘密分散データ復元部107_1~107_nにそれぞれ渡し、復元結果を得ても良い。
次に、本発明の第1の実施形態における秘密等号判定システムおよび第iのサーバ装置100_iの動作について詳細に説明する。図3は、第iのサーバ装置100_iの動作例を示すフローチャートである。
ここで、[a]_Bは、位数2の環上の値aの秘密分散データを意味する。また、[b]_Rは、位数が2より大きい環上の値bの秘密分散データを意味する。以降、[a]_Bをaのbitのシェア、[b]_Rをbのringのシェアと呼称する。特に、第iのサーバ装置100_iのシェアを表す場合、[a]_Bi,[b]_Riとする。
たとえば、サーバ装置の台数が3、つまり、n=3であるとする。このとき、非特許文献2や非特許文献5で用いられている秘密分散が例として挙げられる。ここで、
なお、a=bが成り立つか否か判定する際に、a,bのbit長をLとする。つまり、ringのシェアのbit長はLである。また、秘密等号判定の結果は、等号が成り立つ場合に[1]_B、成り立たない場合に[0]_Bを出力する。
(ステップA1)
第iのサーバ装置100_iの動作として、まず、入力aを図示されない入力装置から第iの秘密分散データ生成部101_iに渡す。第iの秘密分散データ生成部101_iは、[a]_Rを生成する。第iのサーバ装置100_iは、[a]_Riを第iのデータ記憶部102_iに保存する。第iのサーバ装置100_iは、[a]_Ri’(i’≠i)を第i’のサーバ装置100_i’に渡し、第i’のサーバ装置100_i’は[a]_Ri’を第i’のデータ記憶部102_i’に保存する。入力bに関しても、第j(j≠i)のサーバ装置100_jが、同様に処理する。ステップA1は計算を開始する際のみに生じるステップである。よって、秘密計算プロトコルの過程で生じたringのシェアについて秘密等号判定を行う場合、ステップA1は発生しない。
第iのサーバ装置100_iの動作として、まず、入力aを図示されない入力装置から第iの秘密分散データ生成部101_iに渡す。第iの秘密分散データ生成部101_iは、[a]_Rを生成する。第iのサーバ装置100_iは、[a]_Riを第iのデータ記憶部102_iに保存する。第iのサーバ装置100_iは、[a]_Ri’(i’≠i)を第i’のサーバ装置100_i’に渡し、第i’のサーバ装置100_i’は[a]_Ri’を第i’のデータ記憶部102_i’に保存する。入力bに関しても、第j(j≠i)のサーバ装置100_jが、同様に処理する。ステップA1は計算を開始する際のみに生じるステップである。よって、秘密計算プロトコルの過程で生じたringのシェアについて秘密等号判定を行う場合、ステップA1は発生しない。
(ステップA2)
次に、第iの乱数シェア生成部105_iは、位数2の環上の乱数r_t(t=0,...,L-1)のbitのシェア[r_t]_Biを生成する。第iの乱数シェア生成部105_iは、[r_t]_Biを、第iのデータ記憶部102_iに保存する。また、第iの乱数シェア生成部105_iは[r_t]_Biを、第iの乱数シェアbit-conjunction部104_iに渡す。第iの乱数シェアbit-conjunction部104_iは、
次に、第iの乱数シェア生成部105_iは、位数2の環上の乱数r_t(t=0,...,L-1)のbitのシェア[r_t]_Biを生成する。第iの乱数シェア生成部105_iは、[r_t]_Biを、第iのデータ記憶部102_iに保存する。また、第iの乱数シェア生成部105_iは[r_t]_Biを、第iの乱数シェアbit-conjunction部104_iに渡す。第iの乱数シェアbit-conjunction部104_iは、
(ステップA3)
さらに、第iの乱数シェア生成部105_iは、ステップA2で生成した[r_t]_Biを、[r_t]_Riに変換する。変換後、第iの乱数シェア生成部105_iは、
さらに、第iの乱数シェア生成部105_iは、ステップA2で生成した[r_t]_Biを、[r_t]_Riに変換する。変換後、第iの乱数シェア生成部105_iは、
(ステップA4)
第iのマスク部103_iは、第iのデータ記憶部102_iに保存された秘密分散データ[a]_Ri,[b]_Ri,[r]_Riを取り出し、
第iのマスク部103_iは、第iのデータ記憶部102_iに保存された秘密分散データ[a]_Ri,[b]_Ri,[r]_Riを取り出し、
(ステップA5)
第iの秘密分散データ復元部107_iは、第iのデータ記憶部102_iから[a-b+r]_Riを取り出し、外部の第jのサーバ装置100_jに送信する。同時に、第iの秘密分散データ復元部107_iは、外部の第jのサーバ装置100_jから得られた[a-b+r]_Rj(j≠i)を用いて、a-b+rを復元したデータとして復元する。第iの秘密分散データ復元部107_iは、第iの判定bit-conjunction部106_iにa-b+rを渡す。
第iの秘密分散データ復元部107_iは、第iのデータ記憶部102_iから[a-b+r]_Riを取り出し、外部の第jのサーバ装置100_jに送信する。同時に、第iの秘密分散データ復元部107_iは、外部の第jのサーバ装置100_jから得られた[a-b+r]_Rj(j≠i)を用いて、a-b+rを復元したデータとして復元する。第iの秘密分散データ復元部107_iは、第iの判定bit-conjunction部106_iにa-b+rを渡す。
(ステップA6)
ここで、c=a-b+rとしたとき、c_t(t=0,...,L-1)をcの各bitとする。第iの判定bit-conjunction部106_nは、
ここで、c=a-b+rとしたとき、c_t(t=0,...,L-1)をcの各bitとする。第iの判定bit-conjunction部106_nは、
(ステップA7)
等号判定の結果を得る場合、第iの秘密分散データ復元部107_iは、第iのデータ記憶部102_iから[res]_Biを取り出し、外部の第jのサーバ装置100_jに送信する。同時に第iの秘密分散データ復元部107_iは、外部の第jのサーバ装置100_jより得られた[res]_Bj(j≠i)を用いて、a=bが成り立つか否かの判定結果を復元する。
等号判定の結果を得る場合、第iの秘密分散データ復元部107_iは、第iのデータ記憶部102_iから[res]_Biを取り出し、外部の第jのサーバ装置100_jに送信する。同時に第iの秘密分散データ復元部107_iは、外部の第jのサーバ装置100_jより得られた[res]_Bj(j≠i)を用いて、a=bが成り立つか否かの判定結果を復元する。
以上、説明した本発明の第1の実施形態においては、以下に記載するような効果を奏する。
第1の効果は、秘密等号判定に要するコストの内、通信ラウンド数に関して削減するというものである。これは、第iの乱数シェアbit-conjunction部104_iが、ステップA3、A4、A5の計算と並行して[r_t]_Biの論理積の計算を実行しているためである。これにより、ステップA6で第iの判定bit-conjunction部106_iは、[res]_Biの計算を変形して行うことが可能となる。ステップA6で変形して計算した段数分、通信ラウンド数を削減できる。これにより、ステップA3、A4、A5の通信ラウンド数分が相殺される。よって、位数2の環上で行う時と位数が2より大きい環上で行う時とで、通信ラウンド数に差が生じずに実行できる。ただし、これはLog(L)がステップA3、A4、A5の通信ラウンド数以上の場合に得られる効果となる。Log(L)がステップA3、A4、A5の合計通信ラウンド数より小さい場合は、秘密等号判定の通信ラウンド数は、ステップA3、A4、A5の合計通信ラウンド数と一致する。たとえば、ステップA3、A4、A5の合計通信ラウンド数が3のとき、Lが8以上のときに、第1の効果が得られる。
第2の効果は、秘密等号判定に要するコストの内、通信量に関して構成要素の改善によって削減可能だというものである。これは、本第1の実施形態が秘密分散の形態に依らず実施できるためである。たとえば、非特許文献2の方式を用いて本第1の実施形態を実施する場合よりも、非特許文献5の方式を用いて本第1の実施形態を実施した方が、通信量を削減することができる。
(第2の実施の形態)
続いて、図4乃至図8を参照して、本発明の第2の実施形態に係る秘密等号判定システムついて説明する。本発明の第2の実施形態に係る秘密等号判定システムは、上述した第1の実施形態に係る秘密等号判定システムの変形例である。以下、本第2の実施形態において、第1の実施形態において既に説明した部分と同様な機能を有する部分には同一符号を付し、説明を省略する。
続いて、図4乃至図8を参照して、本発明の第2の実施形態に係る秘密等号判定システムついて説明する。本発明の第2の実施形態に係る秘密等号判定システムは、上述した第1の実施形態に係る秘密等号判定システムの変形例である。以下、本第2の実施形態において、第1の実施形態において既に説明した部分と同様な機能を有する部分には同一符号を付し、説明を省略する。
図4は、第2の実施形態による秘密等号判定システムの機能構成例を示すブロック図である。
図4を参照すると、本発明の第2の実施形態による秘密等号判定システムは、後述する図5で参照される秘密分散プロキシ装置210と、後述する図6で参照される第1乃至第n(nは2以上の整数)のサーバ装置210_1、210_2、...、210_nから成る。第2の実施形態による秘密等号判定システムにおいて、秘密分散プロキシ装置210と第1乃至第nのサーバ装置210_1~210_nとはネットワーク経由で通信可能に接続されている。また、第1乃至第nのサーバ装置210_1~210_nは、自身と異なるサーバ装置とネットワーク経由で通信可能に接続されている。
図5に示すように、秘密分散プロキシ装置210は、秘密分散データ生成部211と、秘密分散データ復元部212と、を含む。秘密分散データ生成部211と第1乃至第nのサーバ装置210_1~210_nとはネットワーク経由で通信可能に接続されている。秘密分散データ復元部212と第1乃至第nのサーバ装置210_1~210_nとはネットワーク経由で通信可能に接続されている。
図6に示すように、第iのサーバ装置200_i(1≦i≦n)は、第iのデータ記憶部202_iと、第iのマスク部103_iと、第iの乱数シェアbit-conjunction部104_iと、第iの乱数シェア生成部105_iと、第iの判定bit-conjunction部206_iと、を含む。第iのデータ記憶部202_iと第iのマスク部103_iと第iの判定bit-conjunction部206_iとは、それぞれ自身が含まれるサーバ装置と異なるサーバ装置に対し、ネットワーク経由で通信可能に接続されている。
本第2の実施形態による秘密等号判定システム、第1乃至第nのサーバ装置200_1~200_nおよび秘密分散プロキシ装置210においては、図示されない入力装置から秘密分散プロキシ装置210に入力された値a,b、あるいは、第1乃至第nのデータ記憶部202_1~202_nに記憶された秘密分散データ[a]_R,[b]_Rに対し、その入力や計算過程の値からa,bの値を知られることなく、a=bが成り立つか否かの判定結果の秘密分散データを計算し、第1乃至第nのデータ記憶部202_1~202_nにそれぞれ記憶する。前記判定結果の秘密分散データは、第1乃至第nのデータ記憶部202_1~202_nに記憶した後、秘密分散プロキシ装置210にそれぞれ渡し、復元結果を得ても良い。
次に、本発明の第2の実施形態における秘密等号判定システム、秘密分散プロキシ装置210および第iのサーバ装置200_iの動作について詳細に説明する。図7は、秘密分散プロキシ装置210の動作例を示すフローチャートである。また、図8は、第iのサーバ装置200_iの動作例を示すフローチャートである。
(ステップB1)
まず、図7を参照すると、秘密分散プロキシ装置210の動作として、まず、入力aを図示されない入力装置から秘密分散データ生成部211に渡す。秘密分散データ生成部211は、[a]_Rを生成する。次に、秘密分散データ生成部211は[a]_Riを、外部の第iのサーバ装置200_iの第iのデータ記憶部202_iに渡す。第iのデータ記憶部202_iは、[a]_Riを記憶する。入力bに関しても、秘密分散プロキシ装置210と外部の第iのサーバ装置200_iが、同様に処理する。ステップB1は計算を開始する際のみに生じるステップである。よって、秘密計算プロトコルの過程で生じたringのシェアについて秘密等号判定を行う場合、ステップB1は発生しない。
まず、図7を参照すると、秘密分散プロキシ装置210の動作として、まず、入力aを図示されない入力装置から秘密分散データ生成部211に渡す。秘密分散データ生成部211は、[a]_Rを生成する。次に、秘密分散データ生成部211は[a]_Riを、外部の第iのサーバ装置200_iの第iのデータ記憶部202_iに渡す。第iのデータ記憶部202_iは、[a]_Riを記憶する。入力bに関しても、秘密分散プロキシ装置210と外部の第iのサーバ装置200_iが、同様に処理する。ステップB1は計算を開始する際のみに生じるステップである。よって、秘密計算プロトコルの過程で生じたringのシェアについて秘密等号判定を行う場合、ステップB1は発生しない。
(ステップC1)
図8を参照して、ステップC1は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA2と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。また、第iの乱数シェアbit-conjunction部104_iは、
図8を参照して、ステップC1は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA2と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。また、第iの乱数シェアbit-conjunction部104_iは、
(ステップC2)
ステップC2は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA3と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。
ステップC2は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA3と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。
(ステップC3)
ステップC3は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA4と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。
ステップC3は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA4と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。
(ステップB2)
図7に戻って、秘密分散データ復元部212は、外部の第iのサーバ装置200_iの第iのデータ記憶部202_iから[a-b+r]_Riを取り出し、a-b+rを復元したデータとして復元する。秘密分散データ復元部212は、第iの判定bit-conjunction部206_iにa-b+rを渡す。
図7に戻って、秘密分散データ復元部212は、外部の第iのサーバ装置200_iの第iのデータ記憶部202_iから[a-b+r]_Riを取り出し、a-b+rを復元したデータとして復元する。秘密分散データ復元部212は、第iの判定bit-conjunction部206_iにa-b+rを渡す。
(ステップC4)
図8に移って、第iの判定bit-conjunction部206_iは、a-b+rを秘密分散データ復元部212から取得する。
図8に移って、第iの判定bit-conjunction部206_iは、a-b+rを秘密分散データ復元部212から取得する。
(ステップC5)
ステップC5は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA6と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。また、第iの判定bit-conjunction部206_iは[res]_Biの計算を、ステップC2、C3、B2、C4の計算に要する回路の深さの分だけ変形して行う。
ステップC5は、第1の実施形態による第iのサーバ装置100_iの動作におけるステップA6と等しい。ただし、値を保存するのは第iのデータ記憶部202_iとなる。また、第iの判定bit-conjunction部206_iは[res]_Biの計算を、ステップC2、C3、B2、C4の計算に要する回路の深さの分だけ変形して行う。
(ステップB3)
図7に戻って、等号判定の結果を得る場合、秘密分散データ復元部212は、第iのデータ記憶部202_iから[res]_Biを取り出し、等号判定の結果を復元する。
図7に戻って、等号判定の結果を得る場合、秘密分散データ復元部212は、第iのデータ記憶部202_iから[res]_Biを取り出し、等号判定の結果を復元する。
以上、説明した本発明の第2の実施形態においては、第1の実施形態で述べた第1及び第2の効果の他に以下に記載するような第3の効果を奏する。ただし、第1の効果が得られるのは、Log(L)がステップC2、C3、B2、C4の合計通信ラウンド数以上の場合に得られる効果となる。Log(L)がステップC2、C3、B2、C4の合計通信ラウンド数より小さい場合は、秘密等号判定の通信ラウンド数は、ステップC2、C3、B2、C4の合計通信ラウンド数と一致する。たとえば、ステップC2、C3、B2、C4の合計通信ラウンド数が3のとき、Lが8以上のときに、第1の効果が得られる。
第3の効果は、少ない構成モジュールで第iのサーバ装置200_iが構成されているということである。具体的には、第1の実施形態における第iのサーバ装置100_iより、第iの秘密分散データ生成部101_iと第iの秘密分散データ復元部107_iの分だけ、第iのサーバ装置200_iは少ない構成モジュールで構成される。ただし、秘密分散プロキシ装置210が必要なことに注意する。
なお、上記の秘密等号判定システムやサーバ装置において行われる秘密等号判定方法は、ハードウェア、ソフトウェア又はこれらの組み合わせにより実現することができる。ここで、ソフトウェアによって実現されるとは、コンピュータが秘密等号判定プログラムを読み込んで実行することにより実現されることを意味する。
秘密等号判定プログラムは、様々なタイプの非一時的なコンピュータ可読媒体(non-transitory computer readable medium)を用いて格納され、コンピュータに供給することができる。非一時的なコンピュータ可読媒体は、様々なタイプの実体のある記録媒体(tangible storage medium)を含む。非一時的なコンピュータ可読媒体の例は、磁気記録媒体(例えば、フレキシブルディスク、磁気テープ、ハードディスクドライブ)、光磁気記録媒体(例えば、光磁気ディスク)、CD-ROM(Read Only Memory)、CD-R、CD-R/W、半導体メモリ(例えば、マスクROM、PROM(Programmable ROM)、EPROM(Erasable PROM)、フラッシュROM、RAM(random access memory))を含む。また、秘密等号判定プログラムは、様々なタイプの一時的なコンピュータ可読媒体(transitory computer readable medium)によってコンピュータに供給されてもよい。一時的なコンピュータ可読媒体の例は、電気信号、光信号、及び電磁波を含む。一時的なコンピュータ可読媒体は、電線及び光ファイバ等の有線通信路、又は無線通信路を介して、秘密等号判定プログラムをコンピュータに供給できる。
以上、実施形態を参照して本願発明を説明したが、本願発明は上記実施形態に限定されるものではない。本願発明の構成や詳細には、本願発明のスコープ内で当業者が理解し得る様々な変更をすることができる。
本発明によれば、たとえば、データベースにおける文字列処理で生じる秘密等号判定を、位数2の環上で行う時と位数が2より大きい環上で行う時とでラウンド数に差が生じずに実行でき、通信ラウンド数の削減を実現できる。これにより、秘密等号判定を用いる上位プロトコルに関しても、通信ラウンド数を削減することができる。また、本発明は秘密分散の方法に依存しないため、非特許文献2や非特許文献5といった、通信量の少ない秘密計算プロトコルで実施可能である。
100_i サーバ装置
101_i 秘密分散データ生成部
102_i データ記憶部
103_i マスク部
104_i 乱数シェアbit-conjunction部
105_i 乱数シェア生成部
106_i 判定bit-conjunction部
107_i 秘密分散データ復元部
200_i サーバ装置
202_i データ記憶部
206_i 判定bit-conjunction部
210 秘密分散プロキシ装置
211 秘密分散データ生成部
212 秘密分散データ復元部
101_i 秘密分散データ生成部
102_i データ記憶部
103_i マスク部
104_i 乱数シェアbit-conjunction部
105_i 乱数シェア生成部
106_i 判定bit-conjunction部
107_i 秘密分散データ復元部
200_i サーバ装置
202_i データ記憶部
206_i 判定bit-conjunction部
210 秘密分散プロキシ装置
211 秘密分散データ生成部
212 秘密分散データ復元部
Claims (8)
- 第1の秘密分散データを生成する秘密分散データ生成部と、
前記第1の秘密分散データと他のサーバ装置で生成された第2の秘密分散データとを保存するデータ記憶部と、
乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶する乱数シェア生成部と、
前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶するマスク部と、
前記マスクしたデータを他のサーバ装置へ送信すると共に、他のサーバ装置から取得したマスクしたデータから元のデータを復元し、復元したデータを出力する秘密分散データ復元部と、
前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力する乱数シェアbit-conjunction部と、
前記復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行う判定bit-conjunction部と、
を備えることを特徴とするサーバ装置。 - ネットワークで接続された請求項1に記載のサーバ装置を複数台備える秘密等号判定システム。
- 第1の秘密分散データを生成するステップと、
前記第1の秘密分散データと他のサーバ装置で生成された第2の秘密分散データとをデータ記憶部に保存するステップと、
乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶するステップと、
前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶するステップと、
前記マスクしたデータを他のサーバ装置へ送信すると共に、他のサーバ装置から取得したマスクしたデータから元のデータを復元し、復元したデータを出力するステップと、
前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力するステップと、
前記復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行うステップと、
を備えることを特徴とする秘密等号判定方法。 - 第1の秘密分散データを生成する処理と、
前記第1の秘密分散データと他のサーバ装置で生成された第2の秘密分散データとをデータ記憶部に保存する処理と、
乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶する処理と、
前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶する処理と、
前記マスクしたデータを他のサーバ装置へ送信すると共に、他のサーバ装置から取得したマスクしたデータから元のデータを復元し、復元したデータを出力する処理と、
前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力する処理と、
前記復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行う処理と、
をコンピュータに実行させる秘密等号判定プログラムを記録した記録媒体。 - 第1の秘密分散データと他のサーバ装置用の第2の秘密分散データとを保存するデータ記憶部と、
乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶する乱数シェア生成部と、
前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶するマスク部と、
前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力する乱数シェアbit-conjunction部と、
復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行う判定bit-conjunction部と、
を備えることを特徴とするサーバ装置。 - ネットワークで接続された請求項5に記載のサーバ装置の複数台と、秘密分散プロキシ装置とを備える秘密等号判定システムであって、前記秘密分散プロキシ装置は、
前記複数のサーバ装置用の秘密分散データを生成する秘密分散データ生成部と、
前記複数のサーバ装置から取得したマスクしたデータから元のデータを復元し、前記復元したデータを出力する秘密分散データ復元部と、
を有することを特徴とする秘密等号判定システム。 - 第1の秘密分散データと他のサーバ装置用の第2の秘密分散データとをデータ記憶部に保存するステップと、
乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶するステップと、
前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶するステップと、
前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力するステップと、
復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行うステップと、
を備えることを特徴とする秘密等号判定方法。 - 第1の秘密分散データと他のサーバ装置用の第2の秘密分散データとをデータ記憶部に保存する処理と、
乱数を秘密分散した乱数シェアを生成し、該乱数シェアを前記データ記憶部に記憶する処理と、
前記データ記憶部に保存された、前記乱数シェアと前記第1の秘密分散データとを用いて、前記第2の秘密分散データをマスクし、マスクしたデータを前記データ記憶部に記憶する処理と、
前記乱数を秘密分散した値同士の論理積計算を他の計算と並行して行い、論理積の値を出力する処理と、
復元したデータと前記乱数シェアと前記論理積の値とを用いて秘密等号判定を行う処理と、
をコンピュータに実行させる秘密等号判定プログラムを記録した記録媒体。
Priority Applications (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/769,697 US11290265B2 (en) | 2017-12-05 | 2017-12-05 | Server device, secret equality determination system, secret equality determination method and secret equality determination program recording medium |
JP2019557896A JP6928320B2 (ja) | 2017-12-05 | 2017-12-05 | サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム |
PCT/JP2017/043629 WO2019111318A1 (ja) | 2017-12-05 | 2017-12-05 | サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2017/043629 WO2019111318A1 (ja) | 2017-12-05 | 2017-12-05 | サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2019111318A1 true WO2019111318A1 (ja) | 2019-06-13 |
Family
ID=66750077
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2017/043629 WO2019111318A1 (ja) | 2017-12-05 | 2017-12-05 | サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11290265B2 (ja) |
JP (1) | JP6928320B2 (ja) |
WO (1) | WO2019111318A1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506933A (zh) * | 2020-05-28 | 2020-08-07 | 零知识科技(北京)有限公司 | 安全多方计算的方法和系统 |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2020084751A1 (ja) * | 2018-10-26 | 2020-04-30 | 日本電気株式会社 | 秘密計算サーバ、システム、秘密計算方法及びプログラム |
EP4099203B1 (en) * | 2020-01-31 | 2024-08-07 | Nippon Telegraph And Telephone Corporation | Data distribution management apparatus, data distribution management method, and program |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150180902A1 (en) * | 2013-12-23 | 2015-06-25 | Nokia Corporation | Method and apparatus for causing a collaboration of privacy policies for a shared device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9813234B2 (en) * | 2015-05-11 | 2017-11-07 | The United States of America, as represented by the Secretery of the Air Force | Transferable multiparty computation |
EP3506547A1 (en) * | 2017-12-28 | 2019-07-03 | Flytxt B.V. | Providing security against user collusion in data analytics using random group selection |
CN109255247B (zh) * | 2018-08-14 | 2020-08-14 | 阿里巴巴集团控股有限公司 | 多方安全计算方法及装置、电子设备 |
-
2017
- 2017-12-05 JP JP2019557896A patent/JP6928320B2/ja active Active
- 2017-12-05 US US16/769,697 patent/US11290265B2/en active Active
- 2017-12-05 WO PCT/JP2017/043629 patent/WO2019111318A1/ja active Application Filing
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150180902A1 (en) * | 2013-12-23 | 2015-06-25 | Nokia Corporation | Method and apparatus for causing a collaboration of privacy policies for a shared device |
Non-Patent Citations (2)
Title |
---|
DAMGARD, I. ET AL.: "Unconditionally secure constant-rounds multi-party computation for equality, comparison, bits and exponentiation", THEORY OF CRYPTOGRAPHY (TCC 2006), LNCS, vol. 3878, 2006, pages 285 - 304, XP047422636, Retrieved from the Internet <URL:http://doi.org/10.1007/11681878-15> [retrieved on 20180305], DOI: doi:10.1007/11681878_15 * |
NISHIDE, T. ET AL.: "Multiparty computation for interval, equality, and comparison without bit- decomposition protocol", PUBLIC KEY CRYPTOGRAPHY- PKC 2007, LNCS, vol. 4450, 2007, pages 343 - 360, XP047029618, Retrieved from the Internet <URL:http://doi.org/10.1007/978-3-540-71677-8_23> [retrieved on 20180305], DOI: doi:10.1007/978-3-540-71677-8_23 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111506933A (zh) * | 2020-05-28 | 2020-08-07 | 零知识科技(北京)有限公司 | 安全多方计算的方法和系统 |
Also Published As
Publication number | Publication date |
---|---|
US11290265B2 (en) | 2022-03-29 |
JP6928320B2 (ja) | 2021-09-01 |
JPWO2019111318A1 (ja) | 2020-11-19 |
US20200374107A1 (en) | 2020-11-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4917453B2 (ja) | 閾値秘密分散装置、閾値秘密分散方法、秘密情報復元方法およびプログラム | |
US10003460B2 (en) | Secret quotient transfer device, secret bit decomposition device, secret modulus conversion device, secret quotient transfer method, secret bit decomposition method, secret modulus conversion method, and programs therefor | |
JP5885840B2 (ja) | 秘密分散システム、データ分散装置、分散データ変換装置、秘密分散方法、およびプログラム | |
WO2019111318A1 (ja) | サーバ装置、秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 | |
JP5860557B1 (ja) | 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム | |
US8977855B2 (en) | Secure function evaluation between semi-honest parties | |
CN110391895B (zh) | 数据预处理方法、密文数据获取方法、装置和电子设备 | |
JP5864004B1 (ja) | 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム | |
WO2018135511A1 (ja) | 秘密計算方法、秘密計算システム、秘密計算装置、およびプログラム | |
WO2019111319A1 (ja) | 秘密等号判定システム、秘密等号判定方法および秘密等号判定プログラム記録媒体 | |
EP4348924A1 (en) | Multi-party computation for many computers | |
US11599681B2 (en) | Bit decomposition secure computation apparatus, bit combining secure computation apparatus, method and program | |
US20230004356A1 (en) | Secure random number generation system, secure computation apparatus, secure random number generation method, and program | |
Mansouri et al. | Learning from failures: Secure and fault-tolerant aggregation for federated learning | |
Biçer et al. | Highly efficient and re-executable private function evaluation with linear complexity | |
US11314506B2 (en) | Secure computation device, comparison method, comparison program recording medium, and secure computation system | |
US10887091B2 (en) | Multi-hop security amplification | |
US20220069980A1 (en) | Information processing apparatus, secure computation method, and program | |
JPWO2017038761A1 (ja) | 秘密計算システム、秘密計算装置、および、秘密計算方法 | |
JP6781397B2 (ja) | 秘密分散システム | |
CN114499845B (zh) | 多方安全计算的方法、系统、装置、存储介质及设备 | |
TWI776416B (zh) | 分層確定性錢包的門檻式簽章系統及其方法 | |
JP7396373B2 (ja) | 秘密計算システム、秘密計算サーバ装置、秘密計算方法および秘密計算プログラム | |
JP5388684B2 (ja) | 分散情報生成装置、秘密情報復元装置、分散情報生成方法、秘密情報復元方法およびプログラム | |
JP6775231B2 (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: 17934016 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2019557896 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 17934016 Country of ref document: EP Kind code of ref document: A1 |