JP6493522B2 - 秘密計算データ利用システムと方法と装置並びにプログラム - Google Patents
秘密計算データ利用システムと方法と装置並びにプログラム Download PDFInfo
- Publication number
- JP6493522B2 JP6493522B2 JP2017516545A JP2017516545A JP6493522B2 JP 6493522 B2 JP6493522 B2 JP 6493522B2 JP 2017516545 A JP2017516545 A JP 2017516545A JP 2017516545 A JP2017516545 A JP 2017516545A JP 6493522 B2 JP6493522 B2 JP 6493522B2
- Authority
- JP
- Japan
- Prior art keywords
- secret
- calculation
- data
- request
- intermediate device
- 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
- 238000004364 calculation method Methods 0.000 title claims description 229
- 238000000034 method Methods 0.000 title claims description 89
- 238000012545 processing Methods 0.000 claims description 77
- 230000008569 process Effects 0.000 claims description 66
- 238000006243 chemical reaction Methods 0.000 claims description 16
- 230000004044 response Effects 0.000 claims description 11
- 230000008859 change Effects 0.000 claims description 9
- 239000000284 extract Substances 0.000 claims description 2
- 230000006870 function Effects 0.000 description 12
- 238000004458 analytical method Methods 0.000 description 11
- 238000004891 communication Methods 0.000 description 11
- 230000005540 biological transmission Effects 0.000 description 10
- 238000000926 separation method Methods 0.000 description 7
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 239000002131 composite material Substances 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005192 partition Methods 0.000 description 1
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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- 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
- H04L63/0485—Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
- G06F16/258—Data format conversion from or to a database
-
- 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
- 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
- G06F21/6227—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 where protection concerns the structure of data, e.g. records, types, queries
-
- 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/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0816—Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
- H04L9/085—Secret sharing or secret splitting, e.g. threshold schemes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/46—Secure multiparty computation, e.g. millionaire problem
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Databases & Information Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (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)
- Data Mining & Analysis (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Description
F(x)=a0 + a1・x + a2・x^2 + . . . + ak-1・x^(k-1)
を生成する(a1〜ak-1は整数、^は冪乗演算子)。秘密sの保有者は、F(i)をシェアWiとし、識別子iのシェア保有者(装置)に送信する。なお、n個のシェア保有者には1〜nの識別子が割り当てられているものとする。
k人のシェア保有者の(i, Wi)を集めることで、秘密s(=a0)が求められる。
複数の秘密計算装置と、前記アプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して演算の指示を行う中間装置と、を備え、前記各秘密計算装置は、データを秘密分散したシェアに対して、前記中間装置から指示された前記演算を秘密計算で処理した結果のシェアを、前記中間装置に送信する手段を備え、
前記中間装置は、複数の前記秘密計算装置から送信された複数の前記シェアからデータを復元する手段と、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータに対して行う手段と、を備えた秘密計算データ利用システムが提供される。
アプリケーションが稼働するアプリケーション装置からの要求を受けた中間装置が、前記要求に応じて、複数の秘密計算装置に対して演算の指示を行い、
複数の前記秘密計算装置は、データを秘密分散したシェアに対して、前記中間装置から指示された前記演算を秘密計算で処理し、前記秘密計算の処理結果のシェアを、前記中間装置に送信し、
前記中間装置では、
複数の前記秘密計算装置から受信した複数の前記シェアからデータを復元し、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータに対して行う秘密計算データ利用方法が提供される。
前記アプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して演算の指示を行う第1の手段と、
複数の前記秘密計算装置から送信された複数の前記シェアからデータを復元する第2の手段と、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータに対して行う第3の手段と、
を備えた中間装置が提供される。
前記アプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して演算の指示を行う処理と、
複数の前記秘密計算装置から送信された複数の前記シェアからデータを復元する処理と、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータに対して行う処理と、を実行させるプログラムが提供される。本発明のさらに他の側面によれば、該プログラムを記録したコンピュータ読み出し可能な、半導体メモリや磁気/光記録媒体等の記録媒体(non-transitory computer readable recording medium)が提供される。
前記中間装置から指示された前記要求の演算の一部の演算を受け取る手段と、
前記一部の演算について、前記複数の秘密計算装置間で保持するシェアを用いて秘密計算を行う手段と、
秘密計算結果であるシェアを前記中間装置に返す手段と、
を備え、前記中間装置で前記シェアから復元したデータに対して前記要求の演算の残りの演算処理を行わせる秘密計算装置が提供される。
前記中間装置から指示された前記要求の演算の一部の演算を受け取る処理と、
前記一部の演算について、前記複数の秘密計算装置間で保持するシェアを用いて秘密計算を行う処理と、
秘密計算結果であるシェアを前記中間装置に返す処理と、を実行させるプログラムが提供される。本発明のさらに他の側面によれば、該プログラムを記録したコンピュータ読み出し可能な、半導体メモリや磁気/光記録媒体等の記録媒体(non-transitory computer readable recording medium)が提供される。
・データ形式の変換、
・データの順序の並び替え、
・並び替えの結果
に基づく値の導出、
・平均値計算における実数の割り算処理、
等を、複数の秘密計算装置間で秘密計算する場合、計算量が大きい。このため、実用化が困難である。
図2は、本発明の例示的な実施形態の一例を説明する図である。図2を参照すると、このシステムは、例えば、データベースへのアクセス要求を発行するアプリケーションソフトウェアが稼働するアプリケーション装置10と、秘密分散されたデータ(シェア)をそれぞれデータベース301〜30nに格納し、当該データ(シェア)を用いて秘密計算する秘密計算装置401〜40nと、アプリケーション装置10と秘密計算装置401〜40nとの間に配置された中間装置20と、を備える。
(A)順序の入れ替え、
(B)データ形式の変換(データの値に応じたデータの置き換え等も含む)、
(C)平均値計算(総和を総数で割る処理)、
(D)順序付け、
(E)文字列の結合、
等のうちの少なくとも一つの演算処理を含む場合、当該演算処理を分離し、これらの演算処理は、秘密計算装置401〜40nで秘密計算処理を行わず、中間装置20側で処理する。ただし、秘密計算装置401〜40nで秘密計算することが苦手とされる演算は、上記演算に制限されるものでないことは勿論である。
図3は、上記した例示的な実施形態における中間装置20の一例を説明する図である。特に制限されるものではないが、以下では、(k, n) 閾値秘密分散法を用いる。
図4は、上記した例示的な実施形態における秘密計算装置401〜40nの一例を説明する図である。秘密計算装置401〜40nは互いに同一の構成とされ、図4には、秘密計算装置401の構成が模式的に示されている。図4を参照すると、秘密計算装置401は、接続するデータベース301にアクセスするデータべースアクセス部401と、中間装置20から秘密分散されたシェア1を受けとるシェア受信部402と、中間装置20からの演算の指示を受け取り、秘密計算処理部404に設定する演算指示受信部403と、データベース30に保持されるシェア、中間装置20から秘密分散されたシェア1、必要に応じて他の秘密計算装置402〜40nのシェアを用いて、演算指示受信部403で受信した演算指示に関する秘密計算を行う秘密計算処理部404と、秘密計算結果であるシェアを、中間装置20に返すシェア送信部405を備えている。秘密計算装置40の各部401〜405の一部又は全ての処理・機能はコンピュータで実行されるプログラムで実現するようにしてもよい。
アプリケーション装置10が、あるデータ列を辞書順序に整列して返すことを要求する。この要求は中間装置20に伝えられる。
アプリケーション装置10からのSQL(Structured Query Language)言語によるデータベースへの問い合わせ:
select column-X from table-A order by column-X
に関して、「order by」が、上記した「整列の要求」に対応する。
・秘密計算装置401〜40nにより、データべース301〜30nをアクセスして、
「select column-X from table-A」を処理し、
・中間装置20で、「カラムX(column-X)の順序を整列」(「order by column-X」)を処理する、
と判断する。
アプリケーション装置10が、あるデータからそのデータ形式を変更してできた結果のデータを要求する。この要求は、中間装置20に伝えられる。当該データは秘密分散されて、それぞれのシェアが、秘密計算装置401〜40nのそれぞれに保存されているとする。
・当該データの取り出し処理を、秘密計算装置401〜40nに依頼し、
・データ形式の変換は、中間装置20で処理する、
と判断する。
例えば、アプリケーション装置10からのSQL言語によるデータベースへの問い合わせ:
select ASCII(column-X) from table-A
について、「ASCII()」が「データ形式の変換」の要求に対応する。
・秘密計算装置401〜40nにより、データべース301〜30nをアクセスして、
「select column-X from table-A」を処理し、
・中間装置20で、「ASCII(column-X)」を処理する、
と判断する。
アプリケーション装置10があるデータを示し、秘密計算装置401〜40nに秘密分散されたあるテーブル(データベースの指定テーブル)から、前記提示されたデータの形式を変換してできた値に一致する値を持つ行を選んだ結果を要求する。この要求は中間装置20に伝えられる。
アプリケーション装置10からのSQL言語によるデータベースへの問い合わせ:
select * from table-A where ASCII(value)=column-X;
について、「ASCII()」 が「データ形式の変換」の要求に対応する。
・当該問い合わせ(SQLコマンド)を受けた中間装置20で、「V=ASCII(value)」の演算を処理し、
・秘密計算装置401〜40nにより、データべース301〜30nをアクセスして、
「select * from table-A where V=column-X」を処理する、
ことに対応する。
アプリケーション装置10があるデータ列の要素の平均値を要求する。この要求は中間装置20に伝えられる。前記データ列を生成するためのデータは複数のシェアに秘密分散されて、それぞれのシェアは、秘密計算装置401〜40nのそれぞれに保存されているものとする。
・データ列の要素の総和を取る処理を秘密計算する処理とし、
・データ列の要素数でこの総和を割る処理を中間装置20で行う処理、
と判断する。
アプリケーション装置10からのSQL言語によるデータベースへの問い合わせ:
「select AVG(column-X) from table-A」
について、「AVG(column-X) 」が「平均」の要求に対応する。
・秘密計算装置401〜40nにより、データべース301〜30nをアクセスして、
「select SUM(column-X) as S from table-A」(指定したカラムXの合計値をS)と、
「select COUNT(column-X) as N from table-A」(指定したカラムXのレコード数をN)と、
を処理し、
・中間装置20で、秘密計算装置40の集合から送信されたSのシェアとNのシェアとから、それぞれ、SとNを復元して、S/Nを計算する、
と判断する。
20、120 中間装置
301〜30n データベース
401〜40n 秘密計算装置
121 秘密鍵
130 データベースシステム
131 データベース制御手段
132 データベース
133 暗号プロトコル
201 要求解析部
202 演算分離部
203 シェア生成部
204 演算指示部
205 復元部
206 部分演算処理部
207、210 受信部
208、209 送信部
401 データベースアクセス部
402 シェア受信部
403 演算指示受信部
404 秘密計算処理部
405 シェア送信部
Claims (20)
- アプリケーションが稼働するアプリケーション装置と、
複数の秘密計算装置と、
前記アプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して演算の指示を行う中間装置と、
を備え、
前記各秘密計算装置は、データを秘密分散したシェアに対して、前記中間装置から指示された前記演算を秘密計算で処理した結果のシェアを、前記中間装置に送信する手段を備え、
前記中間装置は、
前記複数の秘密計算装置での秘密計算処理に必要なデータのシェアを生成し、前記複数の秘密計算装置に送信する手段と、
複数の前記秘密計算装置から送信された複数の前記シェアからデータを復元する手段と、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータ、
に対して行う手段と、
を備えた、ことを特徴とする秘密計算データ利用システム。 - 前記中間装置は、
前記アプリケーション装置からの前記要求を解析する手段と、
前記要求の演算から、前記複数の秘密計算装置で秘密計算処理される演算を抽出し、前記複数の秘密計算装置に対して前記抽出した演算を指示する手段と、
を備え、
前記要求の演算から、前記複数の秘密計算装置で秘密計算処理される前記演算以外の演算を分離し、
前記分離した演算を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータ、
に対して実行する、ことを特徴とする請求項1に記載の秘密計算データ利用システム。 - 前記複数の秘密計算装置は、データを秘密分散したシェアを保持する複数のデータベースにそれぞれ接続され、
前記中間装置は、前記アプリケーション装置からの要求としてデータベース操作コマンドを受け、
前記複数の秘密計算装置は、前記中間装置から、前記データベース操作コマンドに応じた演算指示を少なくとも受け、
前記複数のデータベースに保持されるシェアに対して、前記演算指示に対応した秘密計算処理を行う、ことを特徴とする請求項1又は2に記載の秘密計算データ利用システム。 - 前記中間装置は、前記データベース操作コマンドを解析し、
前記データベース操作コマンドが、
順序の入れ替え、
データ形式の変換、
所定の算術計算、
順序付け、
文字列の結合、
のうちいずれか一つ又は複数個の組み合わせからなる演算処理を含む場合、
前記データベース操作コマンドの演算から、前記演算処理を除いた演算の実行を前記複数の秘密計算装置に対して指示し、
前記演算処理を、前記中間装置で実行する、ことを特徴とする請求項3に記載の秘密計算データ利用システム。 - 前記中間装置は、前記データベース操作コマンドを解析し、
前記データベースのデータ又はメタデータの少なくとも一方を秘密分散したシェアを生成し、前記複数の秘密計算装置に送信する、ことを特徴とする請求項3又は4に記載の秘密計算データ利用システム。 - アプリケーションが稼働するアプリケーション装置からの要求を受けた中間装置が、前記要求に応じて、複数の秘密計算装置に対して演算の指示を行い、前記中間装置は、前記複数の秘密計算装置での秘密計算に必要なデータのシェアを生成して、前記複数の秘密計算装置に送信し、
複数の前記秘密計算装置は、データを秘密分散した前記シェアに対して、前記中間装置から指示された前記演算を秘密計算で処理し、前記秘密計算の処理結果のシェアを、前記中間装置に送信し、
前記中間装置では、
複数の前記秘密計算装置から受信した複数の前記シェアからデータを復元し、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータ、
に対して行う、ことを特徴とする秘密計算データ利用方法。 - 前記中間装置は、
前記要求を解析し、
前記要求の演算から、前記複数の秘密計算装置で秘密計算処理される演算を抽出し、
前記複数の秘密計算装置に対して、前記抽出した演算を指示し、
前記要求の演算から、前記秘密計算処理される前記演算を除いた演算を分離し、
前記分離した演算を、
前記復元したデータ、又は、
前記復元したデータと、前記要求に含まれる少なくとも一部のデータ、
に対して実行する、ことを特徴とする請求項6に記載の秘密計算データ利用方法。 - 前記複数の秘密計算装置は、データを秘密分散したシェアを保持する複数のデータベースに接続され、
前記中間装置は、前記アプリケーション装置からの要求として、データベース操作コマンドを受け、
前記複数の秘密計算装置は、前記中間装置から前記データベース操作コマンドに応じた演算指示を少なくとも受け、
前記複数のデータベースに保持されるシェアに対して、前記演算指示に対応した秘密計算処理を行う、ことを特徴とする請求項6又は7に記載の秘密計算データ利用方法。 - 前記中間装置は、前記データベース操作コマンドを解析し、前記データベース操作コマンドが、
順序の入れ替え、
データ形式の変換、
所定の算術計算、
順序付け、
文字列の結合、
のうちいずれか一つ又は複数個の組み合わせからなる演算処理を含む場合、
前記データベース操作コマンドの演算のうち、前記演算処理を除いた演算の実行を前記複数の秘密計算装置に指示し、
前記演算処理を前記中間装置で実行する、ことを特徴とする請求項8に記載の秘密計算データ利用方法。 - 前記中間装置は、前記データベース操作コマンドを解析し、
前記データベースのデータ又はメタデータの少なくとも一方を秘密分散したシェアを生成し、前記複数の秘密計算装置に送信する、ことを特徴とする請求項8又は9に記載の秘密計算データ利用方法。 - アプリケーションが稼働するアプリケーション装置と、
データを秘密分散したシェアに対して中間装置から指示された演算を秘密計算で処理し、処理結果のシェアを前記中間装置に送信する複数の秘密計算装置と、
の間に配置される前記中間装置であって、
前記アプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して演算の指示を行う第1の手段と、
複数の前記秘密計算装置から送信された複数の前記シェアからデータを復元する第2の手段と、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータに対して行う第3の手段と、
前記複数の秘密計算装置での秘密計算に必要なデータのシェアを生成して、前記複数の秘密計算装置に送信する手段と、
を備えた、ことを特徴とする中間装置。 - 前記アプリケーション装置からの前記要求を解析し、前記要求の演算を抽出する第4の手段と、
抽出された前記要求の演算から、前記複数の秘密計算装置で秘密計算処理される演算と、前記秘密計算処理される前記演算以外の演算とに分離する第5の手段と、
を備え、
前記第1の手段は、前記秘密計算処理される演算を、前記複数の秘密計算装置に対して指示し、
前記第3の手段は、
前記秘密計算処理される演算以外の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータ、
に対して実行する、ことを特徴とする請求項11に記載の中間装置。 - 前記複数の秘密計算装置は、データを秘密分散したシェアを保持する複数のデータベースに接続され、
前記中間装置は、前記アプリケーション装置からの要求として、データベース操作コマンドを受け、
前記複数の秘密計算装置は、前記中間装置から前記データベース操作コマンドに応じた演算指示を少なくとも受け、
前記複数のデータベースに保持されるシェアに対して前記演算指示に対応した秘密計算処理を行う、ことを特徴とする請求項11又は12に記載の中間装置。 - 前記中間装置は、前記データベース操作コマンドを解析し、
前記データベース操作コマンドが、
順序の入れ替え、
データ形式の変換、
所定の算術計算、
順序付け、
文字列の結合、
のうちいずれか一つ又は複数個の組み合わせからなる演算処理を含む場合、
前記データベース操作コマンドの演算のうち、前記演算処理を除いた演算の実行を前記複数の秘密計算装置に指示し、
前記演算処理を前記中間装置で実行する、ことを特徴とする請求項13に記載の中間装置。 - 前記データベース操作コマンドを解析し、
前記データベースのデータ又はメタデータの少なくとも一方を秘密分散したシェアを生成し、前記複数の秘密計算装置に送信する、ことを特徴とする請求項13又は14に記載の中間装置。 - アプリケーションが稼働するアプリケーション装置と、
データを秘密分散したシェアに対して中間装置から指示された演算を秘密計算で処理し、処理結果のシェアを前記中間装置に送信する複数の秘密計算装置と、
の間に配置される前記中間装置を構成するコンピュータに、
前記アプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して演算の指示を行う処理と、
前記複数の秘密計算装置での秘密計算に必要なデータのシェアを生成して、前記複数の秘密計算装置に送信する処理と、
複数の前記秘密計算装置から送信された複数の前記シェアからデータを復元する処理と、
前記アプリケーション装置からの前記要求の演算の一部の演算処理を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータ、
に対して行う処理と、
を実行させるプログラム。 - 前記アプリケーション装置からの前記要求を解析し、前記要求の演算を抽出する処理と、
抽出された前記要求の演算から、前記複数の秘密計算装置で秘密計算処理される演算と、前記秘密計算処理される演算以外の演算とに分離する処理と、
前記秘密計算処理される演算を、前記複数の秘密計算装置に対して指示する処理と、
第3の処理では、前記秘密計算処理される演算以外の演算を、
前記復元したデータ、又は、
前記復元したデータと前記要求に含まれる少なくとも一部のデータ、
に対して実行する処理を、前記コンピュータに実行させる請求項16に記載のプログラム。 - 前記アプリケーション装置からの前記要求としてデータベース操作コマンドを受け、前記データベース操作コマンドが、
順序の入れ替え、
データ形式の変換、
所定の算術計算、
順序付け、
文字列の結合、
のうちいずれか一つ又は複数個の組み合わせからなる演算処理を含む場合、
前記データベース操作コマンドの演算のうち、前記演算処理を除いた演算の実行を前記複数の秘密計算装置に指示し、
前記演算処理を前記中間装置で実行する処理を、前記コンピュータに実行させる請求項16又は17に記載のプログラム。 - 前記データベース操作コマンドを解析し、
データベースのデータ又はメタデータの少なくとも一方を秘密分散したシェアを生成し、前記複数の秘密計算装置に送信する処理を、前記コンピュータに実行させる請求項18に記載のプログラム。 - アプリケーションが稼働するアプリケーション装置からの要求を受け、前記要求に応じて、前記複数の秘密計算装置に対して秘密計算処理を指示する中間装置に接続された秘密計算装置であって、
前記中間装置から指示された前記要求の演算の一部の演算を受け取る手段と、
前記中間装置で生成され前記複数の秘密計算装置宛に送信された、前記複数の秘密計算装置での秘密計算に必要なデータのシェアを受信し保持する処理と、
前記一部の演算について、前記複数の秘密計算装置間で保持する前記シェアを用いて秘密計算を行う手段と、
秘密計算結果であるシェアを前記中間装置に返す手段と、
を備え、
前記中間装置で前記シェアから復元したデータに対して、前記要求の演算のうち、前記複数の秘密計算装置で秘密計算処理される前記一部の演算以外の演算処理を行わせる、ことを特徴とする秘密計算装置。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/JP2015/063226 WO2016178291A1 (ja) | 2015-05-07 | 2015-05-07 | 秘密計算データ利用システムと方法と装置並びにプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JPWO2016178291A1 JPWO2016178291A1 (ja) | 2018-03-01 |
JP6493522B2 true JP6493522B2 (ja) | 2019-04-03 |
Family
ID=57218608
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2017516545A Active JP6493522B2 (ja) | 2015-05-07 | 2015-05-07 | 秘密計算データ利用システムと方法と装置並びにプログラム |
Country Status (3)
Country | Link |
---|---|
US (1) | US10721063B2 (ja) |
JP (1) | JP6493522B2 (ja) |
WO (1) | WO2016178291A1 (ja) |
Families Citing this family (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6006842B1 (ja) * | 2015-07-22 | 2016-10-12 | 日本電信電話株式会社 | 秘密計算装置、その方法、およびプログラム |
JP6034927B1 (ja) * | 2015-07-27 | 2016-11-30 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、およびプログラム |
JP6467063B2 (ja) * | 2015-10-13 | 2019-02-06 | 日本電信電話株式会社 | 秘密認証符号付加装置、秘密認証符号付加方法、およびプログラム |
US10749670B2 (en) * | 2017-05-18 | 2020-08-18 | Bank Of America Corporation | Block chain decoding with fair delay for distributed network devices |
US11456862B2 (en) * | 2017-07-05 | 2022-09-27 | Nippon Telegraph And Telephone Corporation | Secure computation system, secure computation apparatus, secure computation method, and recording medium |
US11537726B2 (en) | 2017-12-18 | 2022-12-27 | Nippon Telegraph And Telephone Corporation | Secret computation system and method |
JP7159717B2 (ja) * | 2018-09-10 | 2022-10-25 | 日本電信電話株式会社 | 秘密統計処理システム、方法、統計処理装置及びプログラム |
WO2020084751A1 (ja) | 2018-10-26 | 2020-04-30 | 日本電気株式会社 | 秘密計算サーバ、システム、秘密計算方法及びプログラム |
US11995164B2 (en) | 2018-10-26 | 2024-05-28 | Nec Corporation | Authentication candidate extraction apparatus, authentication system, authentication candidate extraction method, and program |
WO2020144768A1 (ja) | 2019-01-09 | 2020-07-16 | 日本電気株式会社 | 検証装置、秘密計算検証システム、秘密計算実行コードの検証方法及びプログラム |
CN111832034B (zh) * | 2019-04-23 | 2024-04-30 | 创新先进技术有限公司 | 多方数据融合方法及装置 |
US11222129B2 (en) * | 2019-06-24 | 2022-01-11 | International Business Machines Corporation | Entity resolution between multiple private data sources |
JP6744565B1 (ja) * | 2019-10-11 | 2020-08-19 | 富士通クライアントコンピューティング株式会社 | 情報処理装置、プログラムおよび情報処理システム |
US12027264B2 (en) | 2020-02-17 | 2024-07-02 | International Business Machines Corporation | Medical intervention based on separate data sets |
US11704150B2 (en) * | 2020-05-27 | 2023-07-18 | Acronis International Gmbh | Systems and methods for dynamic job performance in secure multiparty computation |
IL281330A (en) * | 2021-03-08 | 2022-10-01 | Google Llc | Improved execution of secure multilateral calculation |
JP2023150937A (ja) * | 2022-03-31 | 2023-10-16 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | 情報提供装置、情報提供方法及び情報提供プログラム |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4292835B2 (ja) * | 2003-03-13 | 2009-07-08 | 沖電気工業株式会社 | 秘密再構成方法、分散秘密再構成装置、及び秘密再構成システム |
US20120002811A1 (en) * | 2010-06-30 | 2012-01-05 | The University Of Bristol | Secure outsourced computation |
JP5351852B2 (ja) * | 2010-08-02 | 2013-11-27 | 日本電信電話株式会社 | 横断統計システム、発言端末、横断統計方法 |
KR101388724B1 (ko) | 2011-11-11 | 2014-04-25 | 닛본 덴끼 가부시끼가이샤 | 데이터베이스 암호화 시스템과 방법 및 컴퓨터 판독가능 기록 매체 |
US9819661B2 (en) * | 2013-09-12 | 2017-11-14 | The Boeing Company | Method of authorizing an operation to be performed on a targeted computing device |
JP6283119B2 (ja) | 2014-10-07 | 2018-02-21 | 日本電信電話株式会社 | 秘密計算システム、中継装置、それらの方法、プログラム、および記録媒体 |
-
2015
- 2015-05-07 US US15/571,880 patent/US10721063B2/en active Active
- 2015-05-07 WO PCT/JP2015/063226 patent/WO2016178291A1/ja active Application Filing
- 2015-05-07 JP JP2017516545A patent/JP6493522B2/ja active Active
Also Published As
Publication number | Publication date |
---|---|
JPWO2016178291A1 (ja) | 2018-03-01 |
US10721063B2 (en) | 2020-07-21 |
WO2016178291A1 (ja) | 2016-11-10 |
US20180139045A1 (en) | 2018-05-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP6493522B2 (ja) | 秘密計算データ利用システムと方法と装置並びにプログラム | |
CN110337649B (zh) | 用于搜索模式未察觉的动态对称可搜索加密的方法和系统 | |
Melchor et al. | XPIR: Private information retrieval for everyone | |
Li et al. | Secure deduplication with efficient and reliable convergent key management | |
US10664610B2 (en) | Method and system for range search on encrypted data | |
JP2019500645A (ja) | 暗号プロトコルを用いたsqlベースのデータベースの保護 | |
CN111026788B (zh) | 一种混合云中基于同态加密的多关键词密文排序检索方法 | |
Liu et al. | Cooperative private searching in clouds | |
Rashid et al. | A secure data deduplication framework for cloud environments | |
WO2018099577A1 (en) | System and method for providing a collective decentralized authority for sharing sensitive data | |
JP7327517B2 (ja) | 秘匿ハッシュテーブル構築システム、参照システム、およびそれらの方法 | |
KR101428649B1 (ko) | 맵 리듀스 기반의 대용량 개인정보 암호화 시스템 및 그의 동작 방법 | |
CN109783456B (zh) | 去重结构搭建方法、去重方法、文件取回方法、去重系统 | |
Fan et al. | Ppca: Privacy-preserving principal component analysis using secure multiparty computation (mpc) | |
CN117951730A (zh) | 一种基于哈希索引的云端安全可搜索加密方法 | |
JP7440662B2 (ja) | マルチキー情報検索 | |
Mathew et al. | Secure Fuzzy Multi-Keyword Ranked Search over Encrypted Cloud Data | |
JP6493402B2 (ja) | 追加装置、削除装置、追加依頼装置、データ検索システム、データ検索方法、および、コンピュータプログラム | |
Patil | Enhanced-elliptic curve Diffie Hellman algorithm for secure data storage in multi cloud environment | |
JP2024061277A (ja) | プログラム、情報処理装置、方法、及び情報処理システム | |
Nikolopoulos | Efficient private information retrieval | |
Jordão et al. | Secure data storage in distributed cloud environments | |
KR101324477B1 (ko) | 위치제어에 의한 데이터 병렬처리 시스템 및 그 방법 | |
Zhao | Semantically Secure Private Set Intersection over Outsourced Multi-Owner Secret-Shared Databases | |
Cai et al. | SEDB: building secure database services for sensitive data |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20171102 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20180605 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20180806 |
|
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: 20190205 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190218 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 6493522 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |