JP6766182B2 - 秘密計算システム、秘密計算装置、秘密計算方法、プログラム - Google Patents

秘密計算システム、秘密計算装置、秘密計算方法、プログラム Download PDF

Info

Publication number
JP6766182B2
JP6766182B2 JP2018562421A JP2018562421A JP6766182B2 JP 6766182 B2 JP6766182 B2 JP 6766182B2 JP 2018562421 A JP2018562421 A JP 2018562421A JP 2018562421 A JP2018562421 A JP 2018562421A JP 6766182 B2 JP6766182 B2 JP 6766182B2
Authority
JP
Japan
Prior art keywords
secret
statement
sentence
value
power
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
Application number
JP2018562421A
Other languages
English (en)
Other versions
JPWO2018135566A1 (ja
Inventor
浩気 濱田
浩気 濱田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nippon Telegraph and Telephone Corp
Original Assignee
Nippon Telegraph and Telephone Corp
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 Nippon Telegraph and Telephone Corp filed Critical Nippon Telegraph and Telephone Corp
Publication of JPWO2018135566A1 publication Critical patent/JPWO2018135566A1/ja
Application granted granted Critical
Publication of JP6766182B2 publication Critical patent/JP6766182B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/556Logarithmic or exponential functions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/38Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation
    • G06F7/48Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices
    • G06F7/544Methods or arrangements for performing computations using exclusively denominational number representation, e.g. using binary, ternary, decimal representation using non-contact-making devices, e.g. tube, solid state device; using unspecified devices for evaluating functions by calculation
    • G06F7/552Powers or roots, e.g. Pythagorean sums
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09CCIPHERING OR DECIPHERING APPARATUS FOR CRYPTOGRAPHIC OR OTHER PURPOSES INVOLVING THE NEED FOR SECRECY
    • G09C1/00Apparatus 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
    • 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/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/46Secure multiparty computation, e.g. millionaire problem

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computing Systems (AREA)
  • Mathematical Optimization (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Storage Device Security (AREA)
  • Document Processing Apparatus (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本発明は、秘密計算技術に関するものであり、特に、入力値を秘密にしたまま2のべき乗を計算する秘密計算技術に関する。
暗号化された数値を復元することなく指定された演算の演算結果を得る方法として、秘密計算と呼ばれる方法がある(例えば非特許文献1参照)。非特許文献1の方法では、数値を復元することのできる複数の情報(数値の断片)を3つの秘密計算装置に分散するという暗号化を行い、数値を復元することなく、加減算、定数和、乗算、定数倍、論理演算(否定、論理積、論理和、排他的論理和)、データ形式変換(整数、二進数)の結果を3つの秘密計算装置に分散された状態、すなわち暗号化されたまま保持させることができる。一般に、分散数は3に限らずW(Wは2以上の所定の定数)とすることができ、W個の秘密計算装置による協調計算によって秘密計算を実現するプロトコルはマルチパーティプロトコルと呼ばれる。
なお、分散数が2の場合の秘密計算方法については、例えば、非特許文献2に開示されている。
秘密計算によって指数関数の計算を実現した方法として、非特許文献3の方法がある。非特許文献3の方法では、まず2のべき乗を求めたい値を整数部分eと小数部分f(0≦f<1)に分解、それぞれの2のべき乗2eと2fを計算し、2eと2fの積を求めることにより、指数関数の計算を実現している。
千田浩司, 濱田浩気, 五十嵐大, 高橋克巳, "軽量検証可能3パーティ秘匿関数計算の再考", 情報処理学会シンポジウム論文集, Vol.2010, No.9, pp.555-560,2010. Ivan Damgard, Valerio Pastro, Nigel Smart, Sarah Zakarias,"Multiparty Computation from Somewhat Homomorphic Encryption", CRYPTO 2012, LNCS7417, pp.643-662, 2012. Liina Kamm, Jan Willemson, "Secure floating point arithmetic and private satellite collision analysis", International Journal of Information Security, Vol.14, No.6, pp.531-548, 2015.
しかしながら、非特許文献3の方法では、小数部分fの2のべき乗2fを計算する際、fの4次多項式の計算をする必要があるため、計算時間が大きくなるという問題があった。
そこで本発明は、より小さい計算時間で2のべき乗を計算する秘密計算技術を提供することを目的とする。
本発明の一態様は、rを0≦r<1を満たす乱数、[[r]]を前記乱数rの秘匿文、[[2r]]を前記乱数rの2のべき乗2rの秘匿文とし、2個以上の秘密計算装置で構成され、2のべき乗を計算する値xの秘匿文[[x]]から、前記値xの2のべき乗2xの秘匿文[[2x]]を計算する秘密計算システムであって、前記秘匿文[[r]]を用いて、前記秘匿文[[x]]から前記値xと前記乱数rの差x-rの秘匿文[[x]]-[[r]]を計算し、前記秘匿文[[x]]-[[r]]から前記差x-rの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を生成する小数分解手段と、前記秘匿文[[f]]から、前記小数部分fを復元する復元手段と、前記小数部分fと前記秘匿文[[e]]から、前記小数部分fの2のべき乗2fをeビット左シフトした値である左シフト値yの秘匿文[[y]]を生成する左シフト手段と、前記秘匿文[[2r]]を用いて、前記秘匿文[[y]]から前記2のべき乗2rと前記左シフト値yを乗算した値2r×yの秘匿文[[2r]]×[[y]]を前記秘匿文[[2x]]として計算するべき乗計算手段とを含む。
本発明によれば、多項式の計算を行うことなく、2のべき乗の計算をすることができるため、2のべき乗の秘密計算に必要な計算時間を削減することが可能となる。
第一実施形態の秘密計算アルゴリズムの処理手順を示す図である。 秘密計算システム10の構成を示すブロック図である。 秘密計算装置100iの構成を示すブロック図である。 秘密計算システム10の動作を示すフローチャートである。
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
後述する2のべき乗の秘密計算アルゴリズムは、既存の秘密計算上の演算の組み合わせで構築される。この秘密計算アルゴリズムが必要とする演算は、秘匿化と復元、加算、減算、乗算、小数分解、左シフトである。まず、各演算の定義、記法等について説明する。
<定義、記法等>
[秘匿化と復元]
ある値aを暗号化や秘密分散などにより秘匿化した値のことをaの秘匿文と呼び、[[a]] と表すこととする。aの秘匿文[[a]]が秘密分散により生成されたものである場合は、[[a]]により各秘密計算装置が持つ秘密分散の断片の集合を参照するものとする。
また、aの秘匿文[[a]]を復元して、aを得る処理をa←Open([[a]])と表すこととする。
秘匿化と復元の方法として、具体的には、参考非特許文献1や参考非特許文献2の手法がある。
(参考非特許文献1)Octavian Catrina, Amitabh Saxena, “Secure Computation with Fixed-Point Numbers”, Financial Cryptography 2010, LNCS6052, pp.35-50, 2010.
(参考非特許文献2)Mehrdad Aliasgari, Marina Blanton, Yihua Zhang, Aaron Steele, “Secure Computation on Floating Point Numbers”, NDSS 2013, 2013.
参考非特許文献1には、固定小数点や整数での演算について開示されている。また、参考非特許文献2には、浮動小数点での演算について開示されている。
[加算、減算、乗算]
加算、減算、乗算の各演算は、2つの値a, bの秘匿文[[a]], [[b]]を入力とし、それぞれa+b, a-b, abの計算結果である和c1、差c2、積c3の秘匿文[[c1]],[[c2]],[[c3]]を計算する。[[c1]],[[c2]],[[c3]] を得る処理をそれぞれ、[[c1]]←Add([[a]],[[b]]),[[c2]]←Sub([[a]],[[b]]),[[c3]]←Mul([[a]],[[b]])と表すこととする。誤解を招く恐れのない場合は、Add([[a]],[[b]]), Sub([[a]],[[b]]), Mul([[a]],[[b]])をそれぞれ[[a]]+[[b]], [[a]]-[[b]], [[a]]×[[b]]と略記することもある。
加算、減算、乗算の方法として、具体的には、参考非特許文献1や参考非特許文献2の手法がある。参考非特許文献1には、固定小数点や整数での演算について開示されている。また、参考非特許文献2には、浮動小数点での演算について開示されている。
[小数分解]
aの秘匿文[[a]]に対して、aの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を計算する処理を[[e]],[[f]]←Split([[a]])と表すこととする。
小数分解の方法として、具体的には、非特許文献3の手法がある。非特許文献3には、浮動小数点での演算について開示されている。また、固定小数点や整数での演算については、参考非特許文献1の固定小数点数(整数)と浮動小数点数の相互変換と非特許文献3の浮動小数点数の小数分解を組み合わせればよい。
[左シフト]
aの秘匿文[[a]]とbの秘匿文[[b]]からaをbビット左シフトした値(つまり、aを2b倍した値)である左シフト値c(=a×2b)の秘匿文[[c]]を計算する処理を[[c]]←[[a]]<<[[b]]と表すこととする。
浮動小数点での演算については、指数部にシフト量(x << yのyのこと)を加算すればよい。また、固定小数点や整数での演算については、参考非特許文献1の固定小数点数(整数)と浮動小数点数の相互変換と上述の浮動小数点数の左シフトを組み合わせればよい。
<第一実施形態>
第一実施形態の秘密計算アルゴリズムの入力と出力、処理手順と第一実施形態の秘密計算アルゴリズムを実現する秘密計算システムについて、以下説明していく。
[入力と出力]
図1に示す第一実施形態の秘密計算アルゴリズムの入力と出力について説明する。
2のべき乗を計算する値xの秘匿文[[x]]が入力となる。また、0≦r<1を満たす乱数rとrの2のべき乗2rの秘匿文[[r]], [[2r]]も入力する。
xの2のべき乗2xの秘匿文[[2x]]が出力となる。
[処理手順]
図1に示す第一実施形態の秘密計算アルゴリズムの処理手順について説明する。その際、図1の左端の数字を用いてステップ1、ステップ2等と表現することにする。
ステップ1では、 入力された秘匿文[[x]]と[[r]]から、xから乱数rを減算した結果である差x-rの秘匿文[[x]]-[[r]]を計算する。次に、秘匿文[[x]]-[[r]]から、差x-rの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を生成する。ここで、x-r=e+fが成り立つ。
ステップ2では、ステップ1で生成した秘匿文[[f]]から、差x-rの小数部分fを復元する。
ステップ3では、ステップ2で復元した小数部分fとステップ1で生成した秘匿文[[e]]から、fの2のべき乗2fをeビット左シフトした値である左シフト値yの秘匿文[[y]]を生成する。ここで、y = 2 f <<e = 2 f+e = 2 x-r が成り立つ。
ステップ4では、入力された秘匿文[[2r]]とステップ3で生成した秘匿文[[y]]から、2rとyを乗算した結果である積2r×yの秘匿文[[2r]]×[[y]]を計算する。ここで、2 r ×y = 2 r ×2 x-r = 2 x が成り立つ。
[秘密計算システム]
以下、図2〜図4を参照して第一実施形態の秘密計算システム10について説明する。図2は、秘密計算システム10の構成を示すブロック図である。秘密計算システム10は、W個(Wは2以上の所定の整数)の秘密計算装置1001、…、100Wを含む。秘密計算装置1001、…、100Wは、ネットワーク800に接続しており、相互に通信可能である。ネットワーク800は、例えば、インターネットなどの通信網あるいは同報通信路などでよい。図3は、秘密計算装置100i(1≦i≦W)の構成を示すブロック図である。図4は、秘密計算システム10の動作を示すフローチャートである。
図3に示すように秘密計算装置100iは、乱数生成部110iと、小数分解部120iと、復元部130iと、左シフト部140iと、べき乗計算部150iと、記録部190iを含む。記録部190iを除く秘密計算装置100iの各構成部は、秘密計算アルゴリズムで必要とされる演算、つまり、少なくとも秘匿化、復元、加算、減算、乗算、小数分解、左シフトのうち、各構成部の機能を実現するうえで必要になる演算を実行できるように構成されている。本発明において個々の演算を実現するための具体的な機能構成は、例えば先行技術文献として開示している非特許文献や<定義、記法等>で開示している参考非特許文献などにあるアルゴリズムを実行できるような構成で十分であり、これらは従来的構成であるから詳細な説明については省略する。また、記録部190iは、秘密計算装置100iの処理に必要な情報を記録する構成部である。
W個の秘密計算装置100iによる協調計算によって、秘密計算システム10はマルチパーティプロトコルである秘密計算アルゴリズムを実現する。よって、秘密計算システム10の乱数生成手段110(図示していない)は乱数生成部1101、…、110Wで構成され、小数分解手段120(図示していない)は小数分解部1201、…、120Wで構成され、復元手段130(図示していない)は復元部1301、…、130Wで構成され、左シフト手段140(図示していない)は左シフト部1401、…、140Wで構成され、べき乗計算手段150(図示していない)はべき乗計算部1501、…、150Wで構成される。
秘密計算システム10は、事前に生成した乱数r(0≦r<1)とその2のべき乗2rの秘匿文[[r]], [[2r]]を用いて、2のべき乗を計算する値(つまり、指数)xの秘匿文[[x]]から、xの2のべき乗2xの秘匿文[[2x]]を計算する。以下、図4に従い秘密計算システム10の動作について説明する。
乱数生成手段110は、0≦r<1を満たす乱数rを生成し、秘匿文[[r]],[[2r]]を生成する(S110)。図1の秘密計算アルゴリズムの入力値の事前セットアップに対応する。秘匿文[[r]],[[2r]]は、記録部1901、…、190Wに記録しておく。
小数分解手段120は、秘匿文[[x]]が入力される前に生成しておいた秘匿文[[r]]を用いて、xの秘匿文[[x]]から、xと乱数rの差x-rの秘匿文[[x]]-[[r]]を計算し、秘匿文[[x]]-[[r]]から、差x-rの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を生成する(S120)。図1の秘密計算アルゴリズムのステップ1に対応する。
復元手段130は、S120で生成した秘匿文[[f]]から、小数部分fを復元する(S130)。図1の秘密計算アルゴリズムのステップ2に対応する。
左シフト手段140は、S130で復元した小数部分fとS120で生成した秘匿文[[e]]から、小数部分fの2のべき乗2fをeビット左シフトした値である左シフト値yの秘匿文[[y]]=2f<<[[e]]を生成する(S140)。図1の秘密計算アルゴリズムのステップ3に対応する。
べき乗計算手段150は、秘匿文[[x]]が入力される前に生成しておいた秘匿文[[2r]]を用いて、S140で生成した秘匿文[[y]]から、2のべき乗2rと左シフト値yを乗算した結果である積2r×yの秘匿文[[2r]]×[[y]]を計算する(S150)。図1の秘密計算アルゴリズムのステップ4に対応する。
本実施形態の発明によれば、2xの計算を減算、小数分解、復元、左シフト、乗算をそれぞれ1回実行することで実現できるため、計算コストが削減される。また、[[2r]]が与えられていることを前提とし、2x=2x-r×2rであることを利用し、入力値[[x]]から出力値[[2x]]を計算する処理を[[2x-r]]の計算に還元している。通常、2x-rの指数x-rの小数部分fを復元すると情報が漏れてしまうが、指数x-rの小数部分が0以上1未満の一様ランダムな値となるように調整(つまり、x-rを計算してから小数部分を抜き出して小数部分のみを公開)することにより、安全に2xの計算を実行することを可能としている。
<補記>
本発明の装置は、例えば単一のハードウェアエンティティとして、キーボードなどが接続可能な入力部、液晶ディスプレイなどが接続可能な出力部、ハードウェアエンティティの外部に通信可能な通信装置(例えば通信ケーブル)が接続可能な通信部、CPU(Central Processing Unit、キャッシュメモリやレジスタなどを備えていてもよい)、メモリであるRAMやROM、ハードディスクである外部記憶装置並びにこれらの入力部、出力部、通信部、CPU、RAM、ROM、外部記憶装置の間のデータのやり取りが可能なように接続するバスを有している。また必要に応じて、ハードウェアエンティティに、CD−ROMなどの記録媒体を読み書きできる装置(ドライブ)などを設けることとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
ハードウェアエンティティの外部記憶装置には、上述の機能を実現するために必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが記憶されている(外部記憶装置に限らず、例えばプログラムを読み出し専用記憶装置であるROMに記憶させておくこととしてもよい)。また、これらのプログラムの処理によって得られるデータなどは、RAMや外部記憶装置などに適宜に記憶される。
ハードウェアエンティティでは、外部記憶装置(あるいはROMなど)に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてメモリに読み込まれて、適宜にCPUで解釈実行・処理される。その結果、CPUが所定の機能(上記、…部、…手段などと表した各構成要件)を実現する。
本発明は上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。また、上記実施形態において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
既述のように、上記実施形態において説明したハードウェアエンティティ(本発明の装置)における処理機能をコンピュータによって実現する場合、ハードウェアエンティティが有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記ハードウェアエンティティにおける処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、DVD(Digital Versatile Disc)、DVD−RAM(Random Access Memory)、CD−ROM(Compact Disc Read Only Memory)、CD−R(Recordable)/RW(ReWritable)等を、光磁気記録媒体として、MO(Magneto-Optical disc)等を、半導体メモリとしてEEP−ROM(Electronically Erasable and Programmable-Read Only Memory)等を用いることができる。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記憶装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、ハードウェアエンティティを構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
上述の本発明の実施形態の記載は、例証と記載の目的で提示されたものである。網羅的であるという意思はなく、開示された厳密な形式に発明を限定する意思もない。変形やバリエーションは上述の教示から可能である。実施形態は、本発明の原理の最も良い例証を提供するために、そして、この分野の当業者が、熟考された実際の使用に適するように本発明を色々な実施形態で、また、色々な変形を付加して利用できるようにするために、選ばれて表現されたものである。すべてのそのような変形やバリエーションは、公正に合法的に公平に与えられる幅にしたがって解釈された添付の請求項によって定められた本発明のスコープ内である。

Claims (4)

  1. rを0≦r<1を満たす乱数、[[r]]を前記乱数rの秘匿文、[[2r]]を前記乱数rの2のべき乗2rの秘匿文とし、
    2個以上の秘密計算装置で構成され、2のべき乗を計算する値xの秘匿文[[x]]から、前記値xの2のべき乗2xの秘匿文[[2x]]を計算する秘密計算システムであって、
    前記秘密計算装置は、
    前記秘匿文[[r]]を用いて、前記秘匿文[[x]]から前記値xと前記乱数rの差x-rの秘匿文[[x]]-[[r]]を計算し、前記秘匿文[[x]]-[[r]]から前記差x-rの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を生成する小数分解と、
    前記秘匿文[[f]]から、前記小数部分fを復元する復元と、
    前記小数部分fと前記秘匿文[[e]]から、前記小数部分fの2のべき乗2fをeビット左シフトした値である左シフト値yの秘匿文[[y]]を生成する左シフトと、
    前記秘匿文[[2r]]を用いて、前記秘匿文[[y]]から前記2のべき乗2rと前記左シフト値yを乗算した値2r×yの秘匿文[[2r]]×[[y]]を前記秘匿文[[2x]]として計算するべき乗計算
    を含むものである秘密計算システム。
  2. rを0≦r<1を満たす乱数、[[r]]を前記乱数rの秘匿文、[[2r]]を前記乱数rの2のべき乗2rの秘匿文とし、
    2のべき乗を計算する値xの秘匿文[[x]]から、前記値xの2のべき乗2xの秘匿文[[2x]]を計算する2個以上の秘密計算装置で構成される秘密計算システムの中の秘密計算装置であって、
    前記秘匿文[[r]]を用いて、前記秘匿文[[x]]から前記値xと前記乱数rの差x-rの秘匿文[[x]]-[[r]]を計算し、前記秘匿文[[x]]-[[r]]から前記差x-rの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を生成する小数分解部と、
    前記秘匿文[[f]]から、前記小数部分fを復元する復元部と、
    前記小数部分fと前記秘匿文[[e]]から、前記小数部分fの2のべき乗2fをeビット左シフトした値である左シフト値yの秘匿文[[y]]を生成する左シフト部と、
    前記秘匿文[[2r]]を用いて、前記秘匿文[[y]]から前記2のべき乗2rと前記左シフト値yを乗算した値2r×yの秘匿文[[2r]]×[[y]]を前記秘匿文[[2x]]として計算するべき乗計算部と
    を含む秘密計算装置。
  3. rを0≦r<1を満たす乱数、[[r]]を前記乱数rの秘匿文、[[2r]]を前記乱数rの2のべき乗2rの秘匿文とし、
    2個以上の秘密計算装置で構成される秘密計算システムが実行する、2のべき乗を計算する値xの秘匿文[[x]]から、前記値xの2のべき乗2xの秘匿文[[2x]]を計算する秘密計算方法であって、
    前記秘密計算装置が、前記秘匿文[[r]]を用いて、前記秘匿文[[x]]から前記値xと前記乱数rの差x-rの秘匿文[[x]]-[[r]]を計算し、前記秘匿文[[x]]-[[r]]から前記差x-rの整数部分eと小数部分f(0≦f<1)の秘匿文[[e]],[[f]]を生成する小数分解ステップと、
    前記秘密計算装置が、前記秘匿文[[f]]から、前記小数部分fを復元する復元ステップと、
    前記秘密計算装置が、前記小数部分fと前記秘匿文[[e]]から、前記小数部分fの2のべき乗2fをeビット左シフトした値である左シフト値yの秘匿文[[y]]を生成する左シフトステップと、
    前記秘密計算装置が、前記秘匿文[[2r]]を用いて、前記秘匿文[[y]]から前記2のべき乗2rと前記左シフト値yを乗算した値2r×yの秘匿文[[2r]]×[[y]]を前記秘匿文[[2x]]として計算するべき乗計算ステップと
    を実行する秘密計算方法。
  4. 請求項2に記載の秘密計算装置としてコンピュータを機能させるためのプログラム。
JP2018562421A 2017-01-20 2018-01-18 秘密計算システム、秘密計算装置、秘密計算方法、プログラム Active JP6766182B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017008094 2017-01-20
JP2017008094 2017-01-20
PCT/JP2018/001346 WO2018135566A1 (ja) 2017-01-20 2018-01-18 秘密計算システム、秘密計算装置、秘密計算方法、プログラム

Publications (2)

Publication Number Publication Date
JPWO2018135566A1 JPWO2018135566A1 (ja) 2019-11-07
JP6766182B2 true JP6766182B2 (ja) 2020-10-07

Family

ID=62909272

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018562421A Active JP6766182B2 (ja) 2017-01-20 2018-01-18 秘密計算システム、秘密計算装置、秘密計算方法、プログラム

Country Status (5)

Country Link
US (1) US11294633B2 (ja)
EP (1) EP3573039B1 (ja)
JP (1) JP6766182B2 (ja)
CN (1) CN110199339B (ja)
WO (1) WO2018135566A1 (ja)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
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
CN109255247B (zh) * 2018-08-14 2020-08-14 阿里巴巴集团控股有限公司 多方安全计算方法及装置、电子设备
US11895230B2 (en) 2019-01-24 2024-02-06 Nec Corporation Information processing apparatus, secure computation method, and program
CN111162906B (zh) * 2019-12-27 2023-04-14 上海市数字证书认证中心有限公司 一种基于茫然传输算法的协同秘密分享方法及装置、系统、介质
EP4095828A4 (en) * 2020-01-20 2023-10-18 Nippon Telegraph And Telephone Corporation SAFE EXPONENTIAL FUNCTION CALCULATION SYSTEM, SAFE EXPONENTIAL FUNCTION CALCULATION METHOD, SAFE CALCULATION DEVICE AND PROGRAM
WO2022044173A1 (ja) * 2020-08-26 2022-03-03 日本電気株式会社 秘密計算システム、秘密計算サーバ装置、秘密計算方法および秘密計算プログラム
JP7494931B2 (ja) 2020-10-16 2024-06-04 日本電信電話株式会社 秘密計算システム、秘密計算方法、およびプログラム
JP7452692B2 (ja) * 2020-10-16 2024-03-19 日本電信電話株式会社 秘密指数部統一システム、秘密指数部統一装置、秘密指数部統一方法、秘密和計算システム、秘密積和計算システム、プログラム

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU556499B2 (en) * 1981-05-22 1986-11-06 Data General Corporation Data processing system
CA2258338C (en) * 1999-01-11 2009-02-24 Certicom Corp. Method and apparatus for minimizing differential power attacks on processors
CN101635021B (zh) * 2003-09-26 2011-08-10 日本电信电话株式会社 标签装置、标签自动识别系统和标签隐私保护方法
DE602005025615D1 (de) * 2004-03-31 2011-02-10 Panasonic Corp Computersystem, computerprogramm und verfahren zur addition
JP2006145945A (ja) * 2004-11-22 2006-06-08 Sony Corp 暗号処理演算方法、および暗号処理装置、並びにコンピュータ・プログラム
ITVA20050027A1 (it) * 2005-05-03 2006-11-04 St Microelectronics Srl Metodo di generazione di successioni di numeri o bit pseudo casuali
JP2007187725A (ja) * 2006-01-11 2007-07-26 Fuji Electric Holdings Co Ltd ガロア逆元演算高速化処理装置
JP4345072B1 (ja) * 2008-07-28 2009-10-14 際国 董 乱数生成・管理方法及び装置
JP5434925B2 (ja) * 2008-10-07 2014-03-05 日本電気株式会社 多者分散乗算装置、多者分散乗算システム及び方法
JP5208796B2 (ja) * 2009-02-12 2013-06-12 中国電力株式会社 整数の暗号化及び復号化方法
CN102713996A (zh) * 2010-01-13 2012-10-03 三菱电机株式会社 隐匿检索系统以及公开参数生成装置以及加密装置以及用户秘密密钥生成装置以及查询发布装置以及检索装置以及计算机程序以及隐匿检索方法以及公开参数生成方法以及加密方法以及用户秘密密钥生成方法以及查询发布方法以及检索方法
WO2012121333A1 (ja) * 2011-03-10 2012-09-13 日本電信電話株式会社 秘匿積和結合システム、計算装置、秘匿積和結合方法、及びそれらのプログラム
US20140245010A1 (en) * 2013-02-25 2014-08-28 Kabushiki Kaisha Toshiba Device and authentication method therefor
WO2014174516A1 (en) * 2013-04-25 2014-10-30 B.G. Negev Technologies And Applications Ltd. Accumulating automata and cascaded equations automata for non-interactive and perennial secure multi-party computation
FR3047373B1 (fr) * 2016-01-28 2018-01-05 Morpho Procede de calcul securise multipartite protege contre une partie malveillante

Also Published As

Publication number Publication date
EP3573039A4 (en) 2020-10-28
US20190310829A1 (en) 2019-10-10
EP3573039B1 (en) 2021-08-18
CN110199339B (zh) 2022-07-12
US11294633B2 (en) 2022-04-05
WO2018135566A1 (ja) 2018-07-26
CN110199339A (zh) 2019-09-03
EP3573039A1 (en) 2019-11-27
JPWO2018135566A1 (ja) 2019-11-07

Similar Documents

Publication Publication Date Title
JP6766182B2 (ja) 秘密計算システム、秘密計算装置、秘密計算方法、プログラム
JP6629466B2 (ja) 秘密計算システム、秘密計算装置、秘密計算方法、プログラム
JP7067632B2 (ja) 秘密シグモイド関数計算システム、秘密ロジスティック回帰計算システム、秘密シグモイド関数計算装置、秘密ロジスティック回帰計算装置、秘密シグモイド関数計算方法、秘密ロジスティック回帰計算方法、プログラム
EP4016506B1 (en) Softmax function secret calculation system, softmax function secret calculation device, softmax function secret calculation method, neural network secret calculation system, neural network secret learning system, and program
TW202044083A (zh) 安全處理器、所述安全處理器的操作方法、以及加密或解密資料的方法
EP3483866B1 (en) Secure computation system, secure computation device, secure computation method, and program
JP6585846B2 (ja) 秘密計算システム、秘密計算装置、秘密計算方法、およびプログラム
JP6825119B2 (ja) 秘密読み込み装置、秘密書き込み装置、それらの方法、およびプログラム
JP7205016B2 (ja) 秘匿情報処理システムおよび秘匿情報処理方法
JP7205623B2 (ja) 秘密共役勾配法計算システム、秘密計算装置、共役勾配法計算装置、秘密共役勾配法計算方法、共役勾配法計算方法、およびプログラム
EP3982282B1 (en) Secret division system, secret calculation device, secret division method, and program
US20230036496A1 (en) Secure selective product computation system, secure selective product computation method, secure computation apparatus, and program
EP4213135A1 (en) Secret exponent part unifying system, secret exponent part unifying device, secret exponent part unifying method, secret sum calculation system, secret product sum calculation system, and program
KR102337865B1 (ko) 동형 암호에 기초한 산술 연산 시스템 및 이를 이용한 동형 암호 산술 연산 방법

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190604

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190604

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200310

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200424

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: 20200915

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200916

R150 Certificate of patent or registration of utility model

Ref document number: 6766182

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150