JP6534778B2 - 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム - Google Patents
秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム Download PDFInfo
- Publication number
- JP6534778B2 JP6534778B2 JP2018526338A JP2018526338A JP6534778B2 JP 6534778 B2 JP6534778 B2 JP 6534778B2 JP 2018526338 A JP2018526338 A JP 2018526338A JP 2018526338 A JP2018526338 A JP 2018526338A JP 6534778 B2 JP6534778 B2 JP 6534778B2
- Authority
- JP
- Japan
- Prior art keywords
- secret
- array
- row
- column
- frequency
- 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/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
- G06F17/10—Complex mathematical operations
- G06F17/18—Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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
- 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
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
- G06F21/72—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
-
- 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
-
- 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/0407—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden
- H04L63/0421—Anonymous communication, i.e. the party's identifiers are hidden from the other party or parties, e.g. using an anonymizer
-
- 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
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Mathematical Physics (AREA)
- Computational Mathematics (AREA)
- Pure & Applied Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Probability & Statistics with Applications (AREA)
- Operations Research (AREA)
- Evolutionary Biology (AREA)
- Algebra (AREA)
- Bioinformatics & Computational Biology (AREA)
- Databases & Information Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Complex Calculations (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Document Processing Apparatus (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Storage Device Security (AREA)
Description
ある値aを暗号化や秘密分散などにより秘匿化した値をaの秘匿文と呼び、<a>と表記する。また、aを<a>の平文と呼ぶ。秘匿化が秘密分散である場合は、<a>により各パーティが持つ秘密分散の断片の集合を参照する。
大きさnの秘匿文の配列<a>=(<a[0]>, <a[1]>, …, <a[n-1]>)とシフト量dの秘匿文<d>とを入力とし、<a>を左にdだけシフトした秘匿文の配列<a'>=(<a[d]>, <a[d+1]>, …, <a[n-1]>, <a[0]>, <a[1]>, …, <a[d-1]>)を計算する処理を秘匿シフトと呼び、次式で記述する。
〔参考文献1〕濱田浩気、桐淵直人、五十嵐大、“ラウンド効率のよい秘密計算パターンマッチング”、コンピュータセキュリティシンポジウム2014論文集、第2014巻、pp. 674-681、2014年10月
一括読み込みアルゴリズムは、大きさnの秘匿文の配列<a>=(<a[0]>, <a[1]>, …, <a[n-1]>)、位置を表す自然数xの秘匿文<x>、およびxからの相対的な位置を表すm個の平文j0,j1, …, jm-1を入力とし、xやa[0], a[1], …, a[n-1]の値を明らかにすることなく、m個の秘匿文<b>=(<a[x+j0 mod n]>, <a[x+j1 mod n]>, …, <a[x+jm-1mod n]>)を得る方法である。以下、一括読み込みアルゴリズムは次式で記述する。
第一実施形態の秘密計算システムは、図1に例示するように、n(≧3)台の秘密計算装置11, …, 1nを含む。この実施形態では、秘密計算装置11, …, 1nはそれぞれ通信網2へ接続される。通信網2は、秘密計算装置11, …, 1nそれぞれが相互に通信可能なように構成された回線交換方式もしくはパケット交換方式の通信網であり、例えばインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などを用いることができる。なお、各装置は必ずしも通信網2を介してオンラインで通信可能である必要はない。例えば、秘密計算装置1i(i∈{1, …, n})へ入力する情報を磁気テープやUSBメモリなどの可搬型記録媒体に記憶し、その可搬型記録媒体からオフラインで入力するように構成してもよい。
図3を参照して、第二実施形態の秘密計算方法の処理手続きを説明する。以下では、上述の第一実施形態との相違点を中心に説明する。
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
Claims (6)
- 3台以上の秘密計算装置を含む秘密計算システムであって、
上記秘密計算装置は、
a, b, c, dを非負整数とし、aを2×2の分割表における第1行第1列の度数とし、bを上記分割表における第1行第2列の度数とし、cを上記分割表における第2行第1列の度数とし、dを上記分割表における第2行第2列の度数とし、<a>, <b>, <c>, <d>をそれぞれ度数a, b, c, dの秘匿文とし、BatchRead(<α>; <β>; j0, …, jm-1)は大きさnの配列の秘匿文<α>=(<α[0]>, <α[1]>, …, <α[n-1]>)から大きさmの配列の秘匿文(<α[β+j0mod n]>, …, <α[β+jm-1 mod n]>)を生成する関数を表し、
i0≦i1, x0≦x1を満たすi0, i1, x0, x1を決定する計算範囲決定部と、
任意の関数f(x)について、f(x0), …, f(x1)を計算し、配列M=(f(x0), …, f(x1))を生成する事前計算部と、
上記配列Mを秘匿化して秘匿文の配列<M>=(<f(x0)>, …, <f(x1)>)を生成する秘匿化部と、
次式を実行して、関数値の秘匿文(<f(ai)>, <f(bi)>, <f(ci)>, <f(di)>)(i0≦i≦i1)を生成する一括読み込み部と、
を含むものである秘密計算システム。 - a, b, c, dを非負整数とし、aを2×2の分割表における第1行第1列の度数とし、bを上記分割表における第1行第2列の度数とし、cを上記分割表における第2行第1列の度数とし、dを上記分割表における第2行第2列の度数とし、<a>, <b>, <c>, <d>をそれぞれ度数a, b, c, dの秘匿文とし、BatchRead(<α>; <β>; j0, …, jm-1)は大きさnの配列の秘匿文<α>=(<α[0]>, <α[1]>, …, <α[n-1]>)から大きさmの配列の秘匿文(<α[β+j0mod n]>, …, <α[β+jm-1 mod n]>)を生成する関数を表し、
i0≦i1, x0≦x1を満たすi0, i1, x0, x1を決定する計算範囲決定部と、
任意の関数f(x)について、f(x0), …, f(x1)を計算し、配列M=(f(x0), …, f(x1))を生成する事前計算部と、
上記配列Mを秘匿化して秘匿文の配列<M>=(<f(x0)>, …, <f(x1)>)を生成する秘匿化部と、
次式を実行して、関数値の秘匿文(<f(ai)>, <f(bi)>, <f(ci)>, <f(di)>)(i0≦i≦i1)を生成する一括読み込み部と、
を含む秘密計算装置。 - a, b, c, dを非負整数とし、aを2×2の分割表における第1行第1列の度数とし、bを上記分割表における第1行第2列の度数とし、cを上記分割表における第2行第1列の度数とし、dを上記分割表における第2行第2列の度数とし、<a>, <b>, <c>, <d>をそれぞれ度数a, b, c, dの秘匿文とし、BatchRead(<α>; <β>; j0, …, jm-1)は大きさnの配列の秘匿文<α>=(<α[0]>, <α[1]>, …, <α[n-1]>)から大きさmの配列の秘匿文(<α[β+j0mod n]>, …, <α[β+jm-1 mod n]>)を生成する関数を表し、
計算範囲決定部が、i0≦i1, x0≦x1を満たすi0, i1, x0, x1を決定し、
事前計算部が、任意の関数f(x)について、f(x0), …, f(x1)を計算し、配列M=(f(x0), …, f(x1))を生成し、
秘匿化部が、上記配列Mを秘匿化して秘匿文の配列<M>=(<f(x0)>, …, <f(x1)>)を生成し、
一括読み込み部が、次式を実行して、関数値の秘匿文(<f(ai)>, <f(bi)>, <f(ci)>, <f(di)>)(i0≦i≦i1)を生成する、
秘密計算方法。 - 請求項4に記載の秘密計算装置としてコンピュータを機能させるためのプログラム。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016134089 | 2016-07-06 | ||
| JP2016134089 | 2016-07-06 | ||
| PCT/JP2017/024140 WO2018008545A1 (ja) | 2016-07-06 | 2017-06-30 | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| JPWO2018008545A1 JPWO2018008545A1 (ja) | 2019-04-04 |
| JP6534778B2 true JP6534778B2 (ja) | 2019-06-26 |
Family
ID=60912177
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2018526338A Active JP6534778B2 (ja) | 2016-07-06 | 2017-06-30 | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム |
Country Status (5)
| Country | Link |
|---|---|
| US (1) | US11121868B2 (ja) |
| EP (1) | EP3483866B1 (ja) |
| JP (1) | JP6534778B2 (ja) |
| CN (1) | CN109328377B (ja) |
| WO (1) | WO2018008545A1 (ja) |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2018034079A1 (ja) * | 2016-08-18 | 2018-02-22 | 日本電気株式会社 | 秘密計算システム、秘密計算方法、秘密計算装置、分散情報生成装置およびそれらの方法とプログラム |
| WO2019009180A1 (ja) * | 2017-07-05 | 2019-01-10 | 日本電信電話株式会社 | 秘密計算システム、秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
| JP7067633B2 (ja) * | 2018-10-10 | 2022-05-16 | 日本電信電話株式会社 | 秘密右シフト演算システム、秘密除算システム、それらの方法、秘密計算装置、およびプログラム |
| US11914740B2 (en) * | 2019-03-11 | 2024-02-27 | Nippon Telegraph And Telephone Corporation | Data generalization apparatus, data generalization method, and program |
| WO2020246018A1 (ja) * | 2019-06-07 | 2020-12-10 | 日本電信電話株式会社 | 秘密共役勾配法計算システム、秘密計算装置、共役勾配法計算装置、秘密共役勾配法計算方法、共役勾配法計算方法、およびプログラム |
| CN114207694B (zh) * | 2019-08-14 | 2024-03-08 | 日本电信电话株式会社 | 秘密梯度下降法计算方法及系统、秘密深度学习方法及系统、秘密计算装置、记录介质 |
| IL292731A (en) | 2022-05-03 | 2023-12-01 | Google Llc | Privacy secure batch retrieval using private information retrieval and secure multi-party computation |
Family Cites Families (12)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2007080629A1 (ja) * | 2006-01-10 | 2007-07-19 | Fujitsu Limited | 携帯型端末装置、アドレス帳転送装置、携帯型端末装置における情報の表示方法、アドレス帳転送方法、およびコンピュータプログラム |
| JP5075553B2 (ja) * | 2007-09-27 | 2012-11-21 | 株式会社日立ソリューションズ | 2×n型分割表の総数数え上げ処理装置 |
| US20090182797A1 (en) * | 2008-01-10 | 2009-07-16 | Microsoft Corporation | Consistent contingency table release |
| CN103038805B (zh) * | 2009-11-20 | 2015-07-29 | 三菱电机株式会社 | 密码处理系统、密钥生成装置、密钥转让装置、加密装置、解密装置、密码处理方法以及密码处理程序 |
| US9946810B1 (en) * | 2010-04-21 | 2018-04-17 | Stan Trepetin | Mathematical method for performing homomorphic operations |
| US9064123B2 (en) * | 2011-03-10 | 2015-06-23 | Nippon Telegraph And Telephone Corporation | Secure product-sum combination system, computing apparatus, secure product-sum combination method and program therefor |
| IN2014CN04197A (ja) * | 2011-12-20 | 2015-07-17 | Mitsubishi Electric Corp | |
| EP2947642B1 (en) * | 2013-01-17 | 2017-09-06 | Nippon Telegraph and Telephone Corporation | Secret computation system, arithmetic unit, secret computation method and program |
| JP5907902B2 (ja) * | 2013-01-21 | 2016-04-26 | 日本電信電話株式会社 | 秘密計算による表の等結合システム、方法 |
| EP3057079A4 (en) * | 2013-10-10 | 2017-06-07 | Nippon Telegraph And Telephone Corporation | Secret parallel processing device, secret parallel processing method, and program |
| US9524392B2 (en) * | 2013-11-30 | 2016-12-20 | Microsoft Technology Licensing, Llc | Encrypting genomic data for storage and genomic computations |
| US10496638B2 (en) * | 2016-12-07 | 2019-12-03 | City University Of Hong Kong | Systems and methods for privacy-assured similarity joins over encrypted datasets |
-
2017
- 2017-06-30 JP JP2018526338A patent/JP6534778B2/ja active Active
- 2017-06-30 EP EP17824150.1A patent/EP3483866B1/en active Active
- 2017-06-30 CN CN201780037589.4A patent/CN109328377B/zh active Active
- 2017-06-30 WO PCT/JP2017/024140 patent/WO2018008545A1/ja not_active Ceased
- 2017-06-30 US US16/309,034 patent/US11121868B2/en active Active
Also Published As
| Publication number | Publication date |
|---|---|
| US11121868B2 (en) | 2021-09-14 |
| EP3483866A1 (en) | 2019-05-15 |
| CN109328377B (zh) | 2021-12-21 |
| WO2018008545A1 (ja) | 2018-01-11 |
| EP3483866B1 (en) | 2020-12-23 |
| EP3483866A4 (en) | 2020-01-15 |
| CN109328377A (zh) | 2019-02-12 |
| US20190229904A1 (en) | 2019-07-25 |
| JPWO2018008545A1 (ja) | 2019-04-04 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP6534778B2 (ja) | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム | |
| Blatt et al. | Optimized homomorphic encryption solution for secure genome-wide association studies | |
| Joye et al. | Private yet efficient decision tree evaluation | |
| EP3573039B1 (en) | Secure computing system, secure computing device, secure computing method, and program | |
| US20190333415A1 (en) | Secure computation system, secure computation device, secure computation method, and program | |
| JP7067632B2 (ja) | 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム | |
| JP6583970B2 (ja) | 秘密乱数合成装置、秘密乱数合成方法、およびプログラム | |
| JP6585846B2 (ja) | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム | |
| JP2020519968A (ja) | ビット分解秘密計算装置、ビット結合秘密計算装置、方法およびプログラム | |
| JP7359225B2 (ja) | 秘密最大値計算装置、方法及びプログラム | |
| JP6541048B2 (ja) | 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム | |
| EP3633656B1 (en) | Secret tampering detection system, secret tampering detection apparatus, secret tampering detection method, and program | |
| CN112154495A (zh) | 秘密批量近似系统、秘密计算装置、秘密批量近似方法、以及程序 | |
| WO2019059042A1 (ja) | 秘密読み込み装置、秘密書き込み装置、それらの方法、およびプログラム | |
| JP7173328B2 (ja) | 秘密除算システム、秘密計算装置、秘密除算方法、およびプログラム | |
| JP6682105B2 (ja) | フィッシャー正確検定計算装置、方法及びプログラム | |
| JP6699066B2 (ja) | フィッシャー正確検定計算装置、方法及びプログラム | |
| WO2019059069A1 (ja) | 秘密読み書き装置、秘密読み書き方法、およびプログラム | |
| Elkabbany et al. | Lightweight Computational Complexity Stepping Up the NTRU Post-Quantum Algorithm Using Parallel Computing. Symmetry 2024, 16, 12 | |
| TW202541460A (zh) | 用於基於格的密碼演算法的數論轉換架構 | |
| CN117581227A (zh) | 秘密计算系统、装置、方法以及程序 | |
| WO2019180787A1 (ja) | 復号装置、復号方法及びプログラム記録媒体 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20181203 |
|
| 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: 20190528 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20190529 |
|
| R150 | Certificate of patent or registration of utility model |
Ref document number: 6534778 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| S533 | Written request for registration of change of name |
Free format text: JAPANESE INTERMEDIATE CODE: R313533 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
