WO2019124260A1 - 秘密計算システム及び方法 - Google Patents

秘密計算システム及び方法 Download PDF

Info

Publication number
WO2019124260A1
WO2019124260A1 PCT/JP2018/046130 JP2018046130W WO2019124260A1 WO 2019124260 A1 WO2019124260 A1 WO 2019124260A1 JP 2018046130 W JP2018046130 W JP 2018046130W WO 2019124260 A1 WO2019124260 A1 WO 2019124260A1
Authority
WO
WIPO (PCT)
Prior art keywords
ciphertext
calculation
secret calculation
secret
basic statistic
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.)
Ceased
Application number
PCT/JP2018/046130
Other languages
English (en)
French (fr)
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.)
NTT Inc
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
Priority to JP2019561048A priority Critical patent/JP6988918B2/ja
Priority to US16/772,543 priority patent/US11537726B2/en
Priority to AU2018387969A priority patent/AU2018387969B2/en
Publication of WO2019124260A1 publication Critical patent/WO2019124260A1/ja
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting 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/6245Protecting personal data, e.g. for financial or medical purposes
    • G06F21/6254Protecting personal data, e.g. for financial or medical purposes by anonymising data, e.g. decorrelating personal data from the owner's identification
    • 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/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2115Third party
    • 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

Definitions

  • the present invention relates to the technical field of secret calculation that performs data processing while concealing data. For example, it relates to the technology of secret multivariate analysis.
  • Patent Document 1 As a conventional technique of secret calculation that performs data processing while concealing data, a technique described in Patent Document 1 is known. In the prior art of secret calculation, the following three phases are performed.
  • Encryption phase Encrypt and conceal data.
  • Secret calculation phase Encrypted data, that is, encrypted text, is processed using an algorithm or protocol that can calculate the target with respect to the original data, and process the encrypted text.
  • Decryption phase Decrypts a ciphertext obtained as a result of processing of the secret calculation phase, and obtains a desired calculation result.
  • the algorithm of secret calculation is more complicated than the algorithm of calculating data without encryption. For this reason, the time required to process the calculation of the secret calculation algorithm is longer than the time required to process the plaintext calculation algorithm. For this reason, if all algorithms using complex calculations such as linear regression that requires solution of linear equations and principal component analysis that requires calculation of eigenvalues and eigenvectors of matrices are processed by secret calculation, the time required for processing is Can become enormous.
  • An object of the present invention is to provide a secret calculation system and method capable of performing secret calculation at a speed higher than before while concealing data.
  • a secret calculation system is a secret calculation system that performs calculation while concealing data, and includes a ciphertext generation device that generates a ciphertext by encrypting data, and a ciphertext
  • a secret computing device that generates an encrypted basic statistic by secretly calculating a predetermined basic statistic using a ciphertext as it is, and a basic statistic that is decrypted by decrypting the encrypted basic statistic Computing devices that generate quantities and perform predetermined calculations using the decoded base statistics.
  • FIG. 1 is a block diagram illustrating an example of a secret calculation system. The flowchart for demonstrating the example of a secret calculation method. The figure for demonstrating 1st embodiment.
  • m and L be natural numbers of 1 or more. Describe single data as a.
  • T means transpose of a vector or matrix.
  • n a natural number of 1 or more.
  • the [a] i is referred to as the i-th share of [a].
  • [A] ([a j, k ]) 1 ⁇ j ⁇ m, 1 ⁇ k ⁇ L be a ciphertext of the matrix A of m rows and L columns.
  • FIG. 3 shows an example of statistics used in the present invention. In FIG. 3, symbols, notations, definitions and definitions equivalent to the statistics are shown.
  • the number of records, the number of attributes, the sum, the sum of squares, and the sum of products are defined as follows.
  • Record number m Number of elements of a, or number of rows of A
  • the embodiment described later securely calculates the basic statistic (that is, for example, at least one of the number of records, the number of attributes, the sum, the sum of squares, and the product sum) by secret calculation and decrypts the basic statistic into plaintext. Perform calculations such as analysis at high speed.
  • the embodiment described later performs processing divided into the following three phases.
  • Encryption phase Encrypt and conceal data.
  • Secret calculation phase Process the calculation of basic statistics from individual data as it is in the ciphertext.
  • Calculation phase The ciphertext of the calculated basic statistics is decrypted, and the target calculation is processed in plaintext using the decrypted basic statistics.
  • the embodiment to be described later is different from the conventional method in that the secret calculation is applied only to the calculation process of the basic statistic.
  • this method it is possible to process calculations, such as linear regression and principal component analysis, which require a relatively long time, faster than in the past.
  • linear equation used by linear regression is comprised by basic statistics, as shown, for example in the following Formula (1).
  • the variance-covariance matrix can be calculated from basic statistics. Furthermore, the correlation coefficient matrix can also be calculated from the variance and covariance. Therefore, even in the case of using any matrix, as long as basic statistics can be safely calculated, principal component analysis can be realized by using the calculated basic statistics thereafter.
  • Encryption method In the present invention, for example, an encryption method capable of realizing the following operation is used without decrypting the ciphertext.
  • References 1 and 2 are known as means for realizing such an encryption method.
  • the embodiment of the secret calculation system includes, for example, a ciphertext generation device 1, a management server 2, a secret calculation device 3 and a calculation device 4 as shown in FIG.
  • the ciphertext generating apparatus 1 are a plurality of registered terminals T H.
  • the secret computing device 3 is n secret computing servers M 1 ,..., Mn . n is a predetermined integer of 2 or more.
  • the computing device 4 is an analysis terminal T A.
  • the ciphertext generation device 1, the management server 2, the secret calculation device 3 and the calculation device 4 can communicate with each other through a network, and can transmit and receive data to each other.
  • the secret calculation system uses secret calculation servers M 1 ,..., M n capable of processing the operation described in [Encryption method].
  • the secret calculation method is realized, for example, by the apparatus configuring the secret calculation system performing the processing of steps S1 to S11 described below with reference to FIG.
  • the ciphertext generation device 1 generates a ciphertext by encrypting data (step S1).
  • the generated ciphertext is transmitted to the management server 2 (step S2).
  • Ciphertext generating apparatus 1 is, for example, a plurality of registered terminals T H.
  • each of the plurality of registered terminals T H by secret sharing with the procedure described data with itself, for example in the references 1 and 2, to generate a share of the data.
  • the generated share is an example of the ciphertext.
  • the management server 2 transmits the received ciphertext to the secret computer 3 (step S3).
  • the secret computer 3 stores the received ciphertext in the storage unit (step S4).
  • the computing device 4 transmits a calculation request to the management server 2 (step S5).
  • Computing device 4 is, for example, the analysis terminal T A.
  • the analysis terminal T A transmits the analysis request as calculation request to the management server 2.
  • the management server 2 transmits a basic statistic calculation request, which is a calculation request of basic statistics necessary to perform calculation corresponding to the received calculation request, to the secret calculation device 3 (step S6).
  • the secret computer 3 using the ciphertext read from the storage unit, generates a basic statistic encrypted by secretly calculating a predetermined basic statistic while concealing the ciphertext (step S7). ).
  • Secure computing apparatus 3 for example, secure computing server M 1, ..., a M n.
  • the secret calculation servers M 1 ,..., M n jointly use the ciphertext read from the storage unit using, for example, the method described in References 1 and 2 to conceal this ciphertext.
  • secret calculation of the predetermined basic statistics is performed.
  • the generated encrypted basic statistic is transmitted to the management server 2 (step S8).
  • the predetermined basic statistic is a basic statistic corresponding to the received basic statistic calculation request.
  • the management server 2 transmits the received encrypted basic statistic to the computer 4 (step S9).
  • the computing device 4 generates the decrypted basic statistic by decrypting the received encrypted basic statistic (step S10).
  • the calculation device 4 performs a predetermined calculation using the decoded basic statistic (step S11).
  • An example of the predetermined calculation is that one of the points of the above embodiment is a combination of analysis features that can be calculated only with statistics and the nature of secret calculation.
  • Statistics such as the number of records, the sum, the mean and the variance are not individual data but numerical values that characterize the data set. Therefore, in the analysis calculated using only these statistics, it is sufficient to understand the data set, and the individual data itself is not necessary. However, in the analysis algorithm, it is inevitable to calculate statistics, and individual data must be touched to calculate the statistics.
  • secret calculations can be calculated safely while keeping the data concealed by ciphertext, but are generally slower than plaintext calculations.
  • a speed difference appears prominently for complex calculation processing such as division, it is expensive to implement all analysis that requires complicated calculation in secret calculation.
  • the additions and multiplications shown in the [encryption method] column are sufficiently fast for secret calculations, and basic statistics based on these operations can be processed at high speed for secret calculations.
  • management server 2 and the computing device 4 are described as separate devices in the above embodiment, the management server 2 and the computing device 4 may be realized by the same device.
  • Registered terminal T H for example using the cryptography references 1 and 2, encrypts a, b, and m.
  • Registered terminal T H is a ciphertext Share [a] i, [b] i, secure computing server M 1 a [m] i and the plaintext m, ..., is transmitted to M n.
  • Each secret calculation server M i calculates [s a ] i , [s b ] i using [a] i , [b] i by the secret calculation of the sum shown in the [encryption method] column.
  • a (a 1 ,..., A m )
  • Each secret calculation server M i uses [a] i , [b] i to calculate [s a ⁇ 2 ] i and [s ab ] i by the product-sum secret calculation shown in the [encryption method] column.
  • a (a 1 ,..., A m )
  • b (b 1 ,.., B m )
  • Each secure computing server M i were determined [s a] i, and transmits the [s b] i, [s a ⁇ 2] i, [s ab] i and [m] i analysis terminal T A.
  • Example 2 is an example of performing linear regression analysis. More specifically, the second embodiment, the computing device is a 4 analyzes the terminal T A is, secure computing server M 1 of n sets a secure computing apparatus 3, ..., with M n, the ciphertext generating apparatus 1
  • Registered terminal T H for example using the cryptography references 1 and 2, encrypts A, b, m, and L.
  • Registered terminal T H is transmitted is cryptogram Share [A] i, [b] i, [m] i, [L] i and the plaintext m, the L secure computing server M 1, ..., with respect to M n Do.
  • q as q 1,..., L
  • q 1,..., L
  • Each secret calculation server M i transmits the obtained [s A ] i , [s b ] i , [S A ] i , [s Ab ] i and [m] i , [L] i to the analysis terminal T A Do.
  • the analysis terminal T A constructs the linear equation of equation (1) using s A , s b , S A , s Ab , m, L.
  • Registered terminal T H for example using the cryptography references 1 and 2, encrypts A, m, and L.
  • Registered terminal T H transmits a cryptogram Share [A] i, [m] i, [L] i and the plaintext m, the L secure computing server M 1, ..., with respect to M n.
  • Each secure computing server M i were determined [s] i, and transmits [S] i and [m] i, in the analysis terminal T A a [L] i.
  • the program describing the processing content can be recorded in a computer readable recording medium.
  • a computer readable recording medium any medium such as a magnetic recording device, an optical disc, a magneto-optical recording medium, a semiconductor memory, etc. may be used.
  • each unit may be configured by executing a predetermined program on a computer, or at least a part of these processing may be realized as hardware.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Complex Calculations (AREA)
  • Storage Device Security (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

秘密計算システムは、データを秘匿化したまま計算を行う秘密計算システムであって、データを暗号化することにより暗号文を生成する暗号文生成装置と、暗号文を秘匿化したまま暗号文を用いて所定の基礎統計量を秘密計算することにより暗号化された基礎統計量を生成する秘密計算装置と、暗号化された基礎統計量を復号することにより復号された基礎統計量を生成し、復号された基礎統計量を用いて所定の計算を行う計算装置と、を備えている。

Description

秘密計算システム及び方法
 本発明は、データを秘匿しつつデータ処理を行う秘密計算の技術分野に関する。例えば、秘密多変量解析の技術に関する。
 データを秘匿しつつデータ処理を行う秘密計算の従来技術として、特許文献1に記載された技術が知られている。秘密計算の従来技術では、以下の3個のフェーズが行われる。
 1. 暗号化フェーズ:データを暗号化し秘匿する。
 2. 秘密計算フェーズ:暗号化したデータ、すなわち暗号文のまま、元のデータに対して目的の計算ができるアルゴリズム又はプロトコルを利用し、暗号文を処理する。
 3. 復号フェーズ:秘密計算フェーズの処理の結果として得られる暗号文を復号し、目的の計算結果を取得する。
特開2017-028617号公報
 上記の従来技術は、目的の計算処理を全て2.の秘密計算フェーズで行っている。
 一般に、秘密計算のアルゴリズムは、データを暗号化せずに計算するアルゴリズムよりも処理が複雑である。このため、秘密計算のアルゴリズムの計算の処理に要する時間は、平文の計算のアルゴリズムの計算の処理に要する時間よりも長い。このため、線型方程式の解決を必要とする線形回帰、行列の固有値及び固有ベクトルの計算を必要とする主成分分析といった複雑な計算を用いるアルゴリズムを秘密計算で全て処理してしまうと、処理に要する時間が膨大になってしまう可能性がある。
 この発明の目的は、データを秘匿化したまま従来よりも速い速度で秘密計算を行うことができる秘密計算システム及び方法を提供することである。
 この発明の一態様による秘密計算システムは、データを秘匿化したまま計算を行う秘密計算システムであって、データを暗号化することにより暗号文を生成する暗号文生成装置と、暗号文を秘匿化したまま暗号文を用いて所定の基礎統計量を秘密計算することにより暗号化された基礎統計量を生成する秘密計算装置と、暗号化された基礎統計量を復号することにより復号された基礎統計量を生成し、復号された基礎統計量を用いて所定の計算を行う計算装置と、を備えている。
 データを秘匿化したまま従来よりも速い速度で秘密計算を行うことができる。
秘密計算システムの例を示すブロック図。 秘密計算方法の例を説明するための流れ図。 第一実施形態を説明するための図。
 以下、図面を参照して、この発明の一実施形態について説明する。
 [記法]
 m,Lをそれぞれ1以上の自然数とする。単一のデータをaのように記述する。また、m次のベクトルをa=(a1,…,am)のように記述する。また、m行L列の行列をA=(aj,k)1≦j≦m,1≦k≦L、または、A=(a1 T,…,aL T)のように記述する。ai(i=1,…,L)はm次元ベクトルである。Tは、ベクトル又は行列の転置を意味する。
 nを1以上の自然数とする。aの暗号文を[a]=([a]1,…,[a]n)のように記述する。[a]iを[a]のi番目のシェアと呼ぶ。ただし、n=1のとき、[a]=[a]1である。また、[a]=([a]1,…,[a]m)をm次のベクトルaの暗号文とする。同様に、[A]=([aj,k])1≦j≦m,1≦k≦Lをm行L列の行列Aの暗号文とする。
 ベクトルa内の要素の総和saを次式のように記述する。
 saj=1 maj
 また、ベクトルaとベクトルbの要素同士の積abを次式の様に記述する。
 ab=(a1b1,…,ambm)
 更に、a2=aaとする。
 [統計量]
 a又はAの性質を示す量を統計量と呼ぶ。図3に、本発明で用いる統計量の例を示す。図3では、各統計量の記号・記法、定義及び定義と等価な式が示されている。
 なお、図3の統計量の中の、レコード数、属性数、総和、二乗和及び積和の5つの統計量の少なくとも1つを基礎統計量と呼ぶことにする。
 なお、図3では、レコード数、属性数、総和、二乗和及び積和は以下のように定義されている。
 レコード数m:aの要素数、または、Aの行数
 属性数L:Aの列数
 総和saj=1 maj
 二乗和s(a^2)j=1 maj 2
 積和sabj=1 majbj
 [技術の概要]
 後述する実施形態は、基礎統計量(すなわち、例えば、レコード数、属性数、総和、二乗和及び積和の少なくとも1つ)を秘密計算によって安全に計算し、基礎統計量を平文に復号して高速に分析等の計算を行う。後述する実施形態は、以下の3つのフェーズに分かれた処理を行う。
 1. 暗号化フェーズ:データを暗号化し、秘匿する。
 2. 秘密計算フェーズ:暗号文のままで、個々のデータから基礎統計量の計算を処理する。
 3. 計算フェーズ:計算された基礎統計量の暗号文を復号し、復号された基礎統計量を用いて目的とする計算を平文で処理する。
 後述する実施形態は、基礎統計量の計算処理にのみ秘密計算を適用している点で、従来手法と異なる。この手法を適用することで、線形回帰、主成分分析等の処理に比較的時間がかかる計算を従来よりも高速に処理可能である。
 なお、線形回帰で用いる線型方程式は、例えば以下の式(1)に示す通り、基礎統計量によって構成される。
Figure JPOXMLDOC01-appb-M000001
 したがって、基礎統計量を秘密計算で安全に計算した後に、例えば線型方程式を平文で解決することによって効率的にパラメータを推定することが可能である。
 また、主成分分析は、例えば、Aの分散共分散行列V=(σas,at)1≦s,t≦L又は相関係数行列C=(ρas,at)1≦s,t≦Lに対して、固有値及び固有ベクトル計算を行うことにより実施することができる。
 図3から、分散共分散行列は、基礎統計量から計算できることがわかる。さらに、相関係数行列も分散及び共分散から計算可能である。したがって、何れかの行列を用いる場合においても、基礎統計量さえ安全に計算することができれば、以降はその計算された基礎統計量を用いる事で主成分分析を実現できる。
 [暗号方式]
 本発明では、暗号文を復号することなく、例えば以下の演算を実現できる暗号方式を用いる。このような暗号方式を実現する手段として、参考文献1,2が知られている。
 1.加算: [a],[b]を入力として、加算a+bの暗号文[a+b]を生成する。
 2.乗算: [a],[b] を入力として、乗算abの暗号文[ab]を生成する。
 3.総和: [a]を入力として、総和saの暗号文[sa]を生成する。
 4.積和:[a],[b]を入力として、積和sabの暗号文[sab]を生成する。
 〔参考文献1〕SHAMIR, Adi. "How to share a secret", Communications of the ACM, 1979, 22.11: p.612-613.
 〔参考文献2〕GENTRY, Craig, et al. "Fully homomorphic encryption using ideal lattices", In: STOC. 2009. p.169-178.
 [実施形態]
 秘密計算システムの実施形態は、図1に示すように、暗号文生成装置1、管理サーバ2、秘密計算装置3及び計算装置4を例えば備えている。この例では、暗号文生成装置1は、複数の登録端末THである。また、秘密計算装置3は、n台の秘密計算サーバM1,…,Mnである。nは2以上の所定の整数である。さらに、計算装置4は、分析端末TAである。
 暗号文生成装置1、管理サーバ2、秘密計算装置3及び計算装置4は、互いにネットワークを通じて通信可能であり、互いにデータの送受信が可能である。
 秘密計算システムは、[暗号方式]で述べた演算を処理できる秘密計算サーバM1,…,Mnを用いる。各秘密計算サーバMi(i=1,…,n)はネットワークを通じて、別の秘密計算サーバMjにアクセス可能であり、互いにデータの送受信が可能である。
 秘密計算方法は、秘密計算システムを構成する装置が、図2及び以下に説明するステップS1からS11の処理を行うことにより例えば実現される。
 暗号文生成装置1は、データを暗号化することにより暗号文を生成する(ステップS1)。生成された暗号文は、管理サーバ2に送信される(ステップS2)。
 暗号文生成装置1は、例えば複数の登録端末THである。この場合、複数の登録端末THのそれぞれは、自身が持つデータを例えば参考文献1,2に記載された手法で秘密分散することにより、データのシェアを生成する。この生成されたシェアが暗号文の一例である。
 管理サーバ2は、受信した暗号文を、秘密計算装置3に送信する(ステップS3)。
 秘密計算装置3は、受信した暗号文を記憶部に記憶させる(ステップS4)。例えば、受信した暗号文は、秘密計算装置3の秘密計算サーバMi(i=1,…,n)の図示していない記憶部に記憶される。
 計算装置4は、管理サーバ2に計算依頼を送信する(ステップS5)。計算装置4は、例えば分析端末TAである。この場合、分析端末TAは、計算依頼としての分析依頼を管理サーバ2に送信する。
 管理サーバ2は、受信した計算依頼に対応する計算を行うために必要な基礎統計量の計算依頼である基礎統計量計算依頼を秘密計算装置3に送信する(ステップS6)。
 秘密計算装置3は、記憶部から読み込んだ暗号文を用いて、この暗号文を秘匿化したまま、所定の基礎統計量を秘密計算することにより暗号化された基礎統計量を生成する(ステップS7)。
 秘密計算装置3は、例えば秘密計算サーバM1,…,Mnである。この場合、秘密計算サーバM1,…,Mnが、共同して、例えば参考文献1,2に記載された手法を用いて、記憶部から読み込んだ暗号文を用いて、この暗号文を秘匿化したまま、所定の基礎統計量を秘密計算する。
 生成された暗号化された基礎統計量は、管理サーバ2に送信される(ステップS8)。
所定の基礎統計量は、受信した基礎統計量計算依頼に対応する基礎統計量である。
 管理サーバ2は、受信した暗号化された基礎統計量を計算装置4に送信する(ステップS9)。
 計算装置4は、受信した暗号化された基礎統計量を復号することにより復号された基礎統計量を生成する(ステップS10)。
 計算装置4は、復号された基礎統計量を用いて所定の計算を行う(ステップS11)。所定の計算の例は、上記の実施形態のポイントの1つは、統計量のみで計算できる分析の特徴と秘密計算の性質を組み合わせた部分にある。
 レコード数、総和、平均及び分散といった統計量は、個々のデータではなくデータ集合の特徴を示す数値である。そのため、これらの統計量のみを用いて計算する分析においては、データ集合について解ればよく、個々のデータそのものは必要としない。しかし、分析のアルゴリズム上、統計量を計算することは不可避であり、その統計量を計算するために個々のデータに触れなければならない。
 一方で、秘密計算は、暗号文によりデータを秘匿したまま安全に計算可能だが、一般に平文による計算よりも遅い。特に、除算等の複雑な計算処理に対しては速度差が顕著に現れるため、複雑な計算を要する分析を秘密計算で全て実装することはコストが高い。反対に、[暗号方式]の欄で示した加算や乗算は秘密計算でも十分高速であり、これらの演算に基づく基礎統計量は秘密計算で高速に処理できる。
 したがって、基礎統計量に基づく統計量から計算できる分析では、基礎統計量を計算する部分のみを秘密計算で処理することで個々のデータの中身は秘匿し、計算した基礎統計量を平文に復号することで、分析の計算を高速に処理することができる。これにより、安全性と高速性を両立させた分析が実現される。
 なお、上記の実施形態では、管理サーバ2と計算装置4とが別装置として記述されているが、管理サーバ2と計算装置4は同一の装置に実現されていてもよい。
 [実施例]
 [[実施例1]]
 実施例1は、線形単回帰分析を行う実施例である。より具体的には、実施例1は、計算装置4である分析端末TAが、秘密計算装置3であるn台の秘密計算サーバM1,…,Mnを用いて、暗号文生成装置1である登録端末THが持つm世帯の収入データaと支出データb間の以下の線形モデル
b=w0+w1a
について、パラメータw0,w1の推定を行う実施例である。
 <暗号化フェーズ>
 暗号化フェーズとして、ステップS1からS3において、以下の処理が行われる。
 登録端末THは、例えば参考文献1,2の暗号方式を用いて、a,b,mを暗号化する。
 登録端末THは、暗号文であるシェア[a]i, [b]i, [m]i と平文mを秘密計算サーバM1,…,Mnに対して送信する。
 <秘密計算フェーズ>
 秘密計算フェーズとして、ステップS7からS9において、以下の処理が行われる。
 各秘密計算サーバMiは、[暗号方式]の欄で示した総和の秘密計算により、[a]i, [b]iを用いて、[sa]i, [sb]iを求める。ここで、a=(a1,…,am)としてsaj=1 majであり、b=(b1,…,bm)としてsbj=1 mbjである。
 各秘密計算サーバMiは、[暗号方式]の欄で示した積和の秘密計算により、[a]i, [b]iを用いて、[sa^2]iと[sab]iを求める。ここで、a=(a1,…,am),b=(b1,…,bm)としてsa^2j=1 maj 2,sabj=1 majbjである。
 各秘密計算サーバMiは、求めた[sa]i,[sb]i,[sa^2]i,[sab]iと[m]iを分析端末TAに送信する。
 <計算フェーズ>
 計算フェーズとして、ステップS10及びS11において、以下の処理が行われる。
 分析端末TAは、受け取ったシェアを用いて、sa, sb, sa^2, sab, mを復号する。
 分析端末TAは、sa, sb, mを用いて、μa=(1/m)sa, μb=(1/m)sbを計算する。
 分析端末TAは、sa, sb, sa^2, sab, mを用いて、σa 2=(1/m)sa^2-(1/m2)sa 2, σa,b=(1/m)sab-(1/m2)sasbを計算する。
 分析端末TAは、w1=(σa,b)/(σa 2)を計算する。
 分析端末TAは、w0b-w1μaを計算する。
 [[実施例2]]
 実施例2は、線形回帰分析を行う実施例である。より具体的には、実施例2は、計算装置4である分析端末TAが、秘密計算装置3であるn台の秘密計算サーバM1,…,Mnを用いて、暗号文生成装置1である登録端末THが持つレコード数m、属性数Lの行列Aとレコード数mのベクトルb間の以下の線形モデル
b=w0+w1a1+…+wLaL
について、パラメータw=(w0,w1,…,wL)の推定を行う実施例である。
 <暗号化フェーズ>
 暗号化フェーズとして、ステップS1からS3において、以下の処理が行われる。
 登録端末THは、例えば参考文献1,2の暗号方式を用いて、A,b,m,Lを暗号化する。
 登録端末THは、暗号文であるシェア[A]i, [b]i, [m]i, [L]iと平文m,Lを秘密計算サーバM1,…,Mnに対して送信する。
 <秘密計算フェーズ>
 秘密計算フェーズとして、ステップS7からS9において、以下の処理が行われる。
 各秘密計算サーバMiは、[暗号方式]の欄で示した総和の秘密計算により、[A]i, [b]iを用いて、[sA]i=([sa1]i,…, [saL]i), [sb]iを求める。ここで、q=1,…,Lとしてsaqj=1 maj,qであり、b=(b1,…,bm)としてsbj=1 mbjである。
 各秘密計算サーバMiは、[暗号方式]の欄で示した積和により、[A]i, [b]iを用いて、[SA]i=([sajak]i)1≦j,k≦L=と[sAb]i= ([sa1b]i,…, [saLb]i)を計算する。ここで、sajakr=1 mar,jar,kであり、q=1,…,Lとしてsaqbr=1 mar,qbrである。
 各秘密計算サーバMiは、求めた[sA]i, [sb]i, [SA]i, [sAb]iと[m]i, [L]iを分析端末TAに送信する。
 <計算フェーズ>
 計算フェーズとして、ステップS10及びS11において、以下の処理が行われる。
 分析端末TAは、受け取ったシェアを用いて、sA, sb, SA, sAb, m, Lを復号する。
 分析端末TAは、sA, sb, SA, sAb, m, Lを用いて、式(1)の線形方程式を構成する。
 分析端末TAは、例えばGauss の消去法を用いて式(1)を解き、w=(w0,…,wL)を求める。
 [[実施例3]]
 実施例3は、主成分分析を行う実施例である。より具体的には、実施例2は、計算装置4である分析端末TAが、秘密計算装置3であるn台の秘密計算サーバM1,…,Mnを用いて、暗号文生成装置1である登録端末THが持つレコード数m、属性数Lの行列であるデータAに対して主成分分析を行い、各主成分p=(p1,…,pL)を求める実施例である。
 <暗号化フェーズ>
 暗号化フェーズとして、ステップS1からS3において、以下の処理が行われる。
 登録端末THは、例えば参考文献1,2の暗号方式を用いて、A,m,Lを暗号化する。
 登録端末THは、暗号文であるシェア[A]i, [m]i, [L]iと平文m,Lを秘密計算サーバM1,…,Mnに対して送信する。
 <秘密計算フェーズ>
 秘密計算フェーズとして、ステップS7からS9において、以下の処理が行われる。
 各秘密計算サーバMiは、[暗号方式]の欄で示した総和により、[A]iを用いて、[s]i=([sa1]i,…,[saL]i)を求める。ここで、q=1,…,Lとしてsaij=1 maq,jである。
 各秘密計算サーバMiは、[暗号方式]の欄で示した積和により、[A]iを用いて、[S]i=([sajak]i)1≦j,k≦Lを計算する。ここで、sajakr=1 mar,jar,kである。
 各秘密計算サーバMiは、求めた[s]i, [S]iと[m]i, [L]iを分析端末TAに送信する。
 <計算フェーズ>
 計算フェーズとして、ステップS10及びS11において、以下の処理が行われる。
 分析端末TAは、受け取ったシェアを用いて、s, S, m, Lを復号する。
 分析端末TAは、s, S, m, Lを用いて、V=(σaj,ak)1≦j,k≦L=((1/m)sajak-(1/m2)sajsak)1≦j,k≦Lを求める。
 分析端末TAは、Vを用いて、C=((σaj,ak)/(σaj 2σak 2)1/2)1≦j,k≦Lを求める。ここで、σaj 2=(1/m)saj^2-(1/m2)saj 2であり、σak 2=(1/m)sak^2-(1/m2)sak 2である。
 分析端末TAは、Cに対して固有値及び固有ベクトルの計算を行い、p=(p1,…,pL)を求める。
 [プログラム及び記録媒体]
 例えば、各装置における処理をコンピュータによって実現する場合、各装置の各部が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、その各装置の処理がコンピュータ上で実現される。
 この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
 また、各部の処理は、コンピュータ上で所定のプログラムを実行させることにより構成することにしてもよいし、これらの処理の少なくとも一部をハードウェア的に実現することとしてもよい。
 その他、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。

Claims (3)

  1.  データを秘匿化したまま計算を行う秘密計算システムであって、
     上記データを暗号化することにより暗号文を生成する暗号文生成装置と、
     上記暗号文を秘匿化したまま上記暗号文を用いて所定の基礎統計量を秘密計算することにより暗号化された基礎統計量を生成する秘密計算装置と、
     上記暗号化された基礎統計量を復号することにより復号された基礎統計量を生成し、上記復号された基礎統計量を用いて所定の計算を行う計算装置と、
     を含む秘密計算システム。
  2.  請求項1の秘密計算システムにおいて、
     上記所定の基礎統計量は、上記データのレコード数、属性数、総和、二乗和、積和の少なくとも1つである、
     秘密計算システム。
  3.  データを秘匿化したまま計算を行う秘密計算方法であって、
     暗号文生成装置が、上記データを暗号化することにより暗号文を生成する暗号文生成装置と、
     秘密計算装置が、上記暗号文を秘匿化したまま上記暗号文を用いて所定の基礎統計量を秘密計算することにより暗号化された基礎統計量を生成する秘密計算ステップと、
     計算装置が、上記暗号化された基礎統計量を復号することにより復号された基礎統計量を生成し、上記復号された基礎統計量を用いて所定の計算を行う計算ステップと、
     を含む秘密計算方法。
PCT/JP2018/046130 2017-12-18 2018-12-14 秘密計算システム及び方法 Ceased WO2019124260A1 (ja)

Priority Applications (3)

Application Number Priority Date Filing Date Title
JP2019561048A JP6988918B2 (ja) 2017-12-18 2018-12-14 秘密計算システム及び方法
US16/772,543 US11537726B2 (en) 2017-12-18 2018-12-14 Secret computation system and method
AU2018387969A AU2018387969B2 (en) 2017-12-18 2018-12-14 Secret computation system and method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-241895 2017-12-18
JP2017241895 2017-12-18

Publications (1)

Publication Number Publication Date
WO2019124260A1 true WO2019124260A1 (ja) 2019-06-27

Family

ID=66994679

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/046130 Ceased WO2019124260A1 (ja) 2017-12-18 2018-12-14 秘密計算システム及び方法

Country Status (4)

Country Link
US (1) US11537726B2 (ja)
JP (1) JP6988918B2 (ja)
AU (1) AU2018387969B2 (ja)
WO (1) WO2019124260A1 (ja)

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022203062A1 (ja) 2021-03-26 2022-09-29 エヌ・ティ・ティ・コミュニケーションズ株式会社 処理システム、処理方法及び処理プログラム
WO2022203061A1 (ja) 2021-03-26 2022-09-29 エヌ・ティ・ティ・コミュニケーションズ株式会社 処理システム、処理方法及び処理プログラム
JPWO2022264372A1 (ja) * 2021-06-17 2022-12-22
WO2023063119A1 (ja) * 2021-10-12 2023-04-20 株式会社Acompany 秘密計算用の計算サーバ、計算方法およびプログラム
CN116324935A (zh) * 2020-10-16 2023-06-23 日本电信电话株式会社 参数估计装置、参数估计系统、参数估计方法及程序
WO2023189207A1 (ja) 2022-03-31 2023-10-05 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報提供装置、情報提供方法及び情報提供プログラム
WO2024228290A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 処理システム、処理方法及び処理プログラム
WO2024228295A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228297A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228293A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228296A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228294A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228299A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11190336B2 (en) * 2019-05-10 2021-11-30 Sap Se Privacy-preserving benchmarking with interval statistics reducing leakage

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016178291A1 (ja) * 2015-05-07 2016-11-10 日本電気株式会社 秘密計算データ利用システムと方法と装置並びにプログラム

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8429421B2 (en) * 2010-12-17 2013-04-23 Microsoft Corporation Server-side encrypted pattern matching
US9224000B1 (en) * 2011-06-14 2015-12-29 Ionic Security, Inc. Systems and methods for providing information security using context-based keys
JP5963936B2 (ja) * 2013-02-25 2016-08-03 三菱電機株式会社 サーバ装置、秘匿検索プログラム,記録媒体及び秘匿検索システム
US20150381349A1 (en) * 2013-03-04 2015-12-31 Thomson Licensing Privacy-preserving ridge regression using masks
US20150371059A1 (en) * 2014-06-18 2015-12-24 Palo Alto Research Center Incorporated Privacy-sensitive ranking of user data
US10482263B2 (en) * 2015-04-01 2019-11-19 Microsoft Technology Licensing, Llc Computing on encrypted data using deferred evaluation
JP6034927B1 (ja) 2015-07-27 2016-11-30 日本電信電話株式会社 秘密計算システム、秘密計算装置、およびプログラム
US9846785B2 (en) * 2015-11-25 2017-12-19 International Business Machines Corporation Efficient two party oblivious transfer using a leveled fully homomorphic encryption

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2016178291A1 (ja) * 2015-05-07 2016-11-10 日本電気株式会社 秘密計算データ利用システムと方法と装置並びにプログラム

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TANAKA SATOSHI ET AL.: "Statistical analysis of microdata for applying secure computation to official statistics", PORCEEDINGS OF MUTIMEDIAA, DISTRIBUTED, COOPERATIVE AND MOBILE (DICOMO 2017) SYMPOSIUM, 21 June 2017 (2017-06-21), pages 424 - 429 *

Cited By (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116324935A (zh) * 2020-10-16 2023-06-23 日本电信电话株式会社 参数估计装置、参数估计系统、参数估计方法及程序
WO2022203062A1 (ja) 2021-03-26 2022-09-29 エヌ・ティ・ティ・コミュニケーションズ株式会社 処理システム、処理方法及び処理プログラム
WO2022203061A1 (ja) 2021-03-26 2022-09-29 エヌ・ティ・ティ・コミュニケーションズ株式会社 処理システム、処理方法及び処理プログラム
US12524559B2 (en) 2021-03-26 2026-01-13 Ntt Communications Corporation Processing system, processing method, and processing program
US12505235B2 (en) 2021-03-26 2025-12-23 Ntt Communications Corporation Processing system, processing method, and processing program
JPWO2022264372A1 (ja) * 2021-06-17 2022-12-22
JP7662034B2 (ja) 2021-06-17 2025-04-15 日本電信電話株式会社 モデル生成システム、秘密計算装置、分析装置、モデル生成方法、プログラム
WO2023063119A1 (ja) * 2021-10-12 2023-04-20 株式会社Acompany 秘密計算用の計算サーバ、計算方法およびプログラム
WO2023189207A1 (ja) 2022-03-31 2023-10-05 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報提供装置、情報提供方法及び情報提供プログラム
JP2023150937A (ja) * 2022-03-31 2023-10-16 エヌ・ティ・ティ・コミュニケーションズ株式会社 情報提供装置、情報提供方法及び情報提供プログラム
JP7720512B2 (ja) 2022-03-31 2025-08-08 Nttドコモビジネス株式会社 情報提供装置、情報提供方法及び情報提供プログラム
WO2024228294A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
EP4708260A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Analysis device, analysis method, and analysis program
WO2024228299A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228293A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228297A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228295A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
WO2024228290A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 処理システム、処理方法及び処理プログラム
WO2024228296A1 (ja) 2023-05-01 2024-11-07 エヌ・ティ・ティ・コミュニケーションズ株式会社 分析装置、分析方法及び分析プログラム
EP4708258A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Processing system, processing method, and processing program
EP4708262A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Analysis device, analysis method, and analysis program
EP4708084A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Analysis device, analysis method, and analysis program
EP4708263A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Analysis device, analysis method, and analysis program
EP4708261A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Analysis device, analysis method, and analysis program
EP4708259A1 (en) 2023-05-01 2026-03-11 NTT DOCOMO BUSINESS, Inc. Analysis device, analysis method, and analysis program

Also Published As

Publication number Publication date
JP6988918B2 (ja) 2022-01-05
JPWO2019124260A1 (ja) 2020-12-10
AU2018387969A1 (en) 2020-07-02
US11537726B2 (en) 2022-12-27
AU2018387969B2 (en) 2021-07-22
US20200387616A1 (en) 2020-12-10

Similar Documents

Publication Publication Date Title
JP6988918B2 (ja) 秘密計算システム及び方法
EP2924911B1 (en) Secure pattern matching using somewhat homomorphic encryption
US9571268B2 (en) Method and system for homomorphicly randomizing an input
JP6413743B2 (ja) 暗号処理装置、暗号処理方法、及び暗号処理プログラム
US11374742B2 (en) Conversion key generation device, ciphertext conversion device, privacy-preserving information processing system, conversion key generation method, ciphertext conversion method, and computer
JP6083234B2 (ja) 暗号処理装置
CN111162896A (zh) 双方联合进行数据处理的方法及装置
EP3032775B1 (en) Homomorphic cryptographic processing method and cryptographic processing device for randomized pattern matching
JP6459658B2 (ja) 暗号処理装置、暗号処理方法、および暗号処理プログラム
US20140185794A1 (en) Encryption processing apparatus and method
CN110169010B (zh) 同态运算装置、加密系统和计算机能读取的存储介质
JP5814880B2 (ja) 暗号システム、暗号方法、暗号プログラム及び復号装置
CN113434878B (zh) 基于联邦学习的建模及应用方法、装置、设备及存储介质
CN113904808B (zh) 一种私钥分发、解密方法、装置、设备及介质
US11909873B2 (en) Decryption device, cryptographic system, and decryption method
CN107852324A (zh) 用于加密消息的方法和加密节点
WO2014030706A1 (ja) 暗号化データベースシステム、クライアント装置およびサーバ、暗号化データ加算方法およびプログラム
CN117254898B (zh) 基于Batch-OT的隐私集合求交方法、系统、电子设备及介质
CN116170142B (zh) 分布式协同解密方法、设备和存储介质
CN117349888A (zh) 一种车辆仿真模型联合训练方法、系统、设备及存储介质
KR101865703B1 (ko) 키 생성 방법 및 장치, 암호화 장치 및 방법
CN115276950A (zh) 隐私数据的处理方法和装置
CN121814321A (zh) 一种抗量子阈值加密方法及系统
HK40029307A (en) Method and device for jointly processing data by two parties
HK40029307B (en) Method and device for jointly processing data by two parties

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019561048

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2018387969

Country of ref document: AU

Date of ref document: 20181214

Kind code of ref document: A

122 Ep: pct application non-entry in european phase

Ref document number: 18893070

Country of ref document: EP

Kind code of ref document: A1