JP2016146530A - 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム - Google Patents
秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム Download PDFInfo
- Publication number
- JP2016146530A JP2016146530A JP2015022190A JP2015022190A JP2016146530A JP 2016146530 A JP2016146530 A JP 2016146530A JP 2015022190 A JP2015022190 A JP 2015022190A JP 2015022190 A JP2015022190 A JP 2015022190A JP 2016146530 A JP2016146530 A JP 2016146530A
- Authority
- JP
- Japan
- Prior art keywords
- secret
- share
- shares
- checksum
- disclosure
- 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.)
- Granted
Links
Images
Abstract
【課題】通信量を低減する。【解決手段】秘密公開装置pj'(j'=1,…,k-1)がシェア[a→]j'を秘密公開装置p0へ送信する。秘密公開装置pj(j=k,…,n-1)がシェア[a→]jからチェックサムcjを計算し、チェックサムcjを秘密公開装置p0へ送信する。秘密公開装置p0がk個のシェア[a→]0,…,[a→]k-1からn-k個のシェア[a→]k,…,[a→]n-1を復旧する。秘密公開装置p0が、j=k,…,n-1について、シェア[a→]jからチェックサムc'jをそれぞれ計算する。秘密公開装置p0が、j=k,…,n-1について、チェックサムcjとチェックサムc'jとをそれぞれ比較してシェア[a→]1,…,[a→]k-1の改ざんを検知する。秘密公開装置p0がシェア[a→]0,…,[a→]k-1から平文列a→を復元する。【選択図】図3
Description
この発明は、秘密分散技術に関し、特に分散値から平文を公開する際に改ざんを検知する技術に関する。
秘密分散とは、データを複数に分割した分散値に変換し、一定個数以上のシェアを用いれば元のデータを復元でき、一定個数未満のシェアからは元のデータを一切復元できなくする技術である。なお、秘密分散した複数個の値の組を分散値と呼び、分散値のうちの1個の断片をシェアと呼ぶ。
秘密分散の一種である(k,n)-秘密分散は、入力された平文をn個に分割した分散値をn個の計算主体に分散して保持しておき、任意のk個のシェアが揃えば平文を復元でき、k個未満のシェアからは平文に関する一切の情報を得られないような秘密分散である。このとき、n,kは1以上の整数であり、n=2k-1である。
各計算主体が保持するシェアが改ざんされた場合、復元するk個のシェアの選び方に依存して復元される値が異なるという問題が発生する。したがって、分散値から平文を公開する際に各シェアに改ざんがなかったかを確認する必要がある。分散値から平文を公開する際に改ざん検知が可能な従来技術には、非特許文献1に記載の方法がある。
I. Damgard, J. B. Nielsen, "Scalable and Unconditionally Secure Multiparty Computation", CRYPTO 2007, vol. 4622 of Lecture Notes in Computer Science, pp. 572-590, 2007.
しかしながら、非特許文献1に記載の公開方法は通信量が大きいという問題がある。この公開方法では、改ざん検知を行わずに分散値から平文を公開する場合と比較して、数倍の通信量を要する。
この発明の目的は、このような点に鑑みて、改ざん検知可能な秘密公開技術において、通信量を低減することである。
上記の課題を解決するために、この発明の秘密公開方法は、[a→]0,…,[a→]n-1を平文列a→から(n,k)-秘密分散により生成したシェアとし、iを0以上n未満の整数とし、jをk以上n未満の整数とし、j'を1以上k未満の整数とし、n台の秘密公開装置piの記憶部に、シェア[a→]iが記憶されており、k-1台の秘密公開装置pj'が、シェア[a→]j'を秘密公開装置p0へ送信するシェア送信ステップと、n-k台の秘密公開装置pjが、シェア[a→]jからチェックサムcjを計算し、チェックサムcjを秘密公開装置p0へ送信するチェックサム送信ステップと、秘密公開装置p0が、k個のシェア[a→]0,…,[a→]k-1からn-k個のシェア[a→]k,…,[a→]n-1を復旧するシェア復旧ステップと、秘密公開装置p0が、j=k,…,n-1について、シェア[a→]jからチェックサムc'jをそれぞれ計算するチェックサム計算ステップと、秘密公開装置p0が、j=k,…,n-1について、チェックサムcjとチェックサムc'jとをそれぞれ比較してシェア[a→]1,…,[a→]k-1の改ざんを検知する改ざん検知ステップと、秘密公開装置p0が、シェア[a→]0,…,[a→]k-1から平文列a→を復元する公開値復元ステップと、を含む。
この発明の秘密公開技術は、改ざん検知のために送受信するデータの一部が情報量の少ないチェックサムであるため、通信量を低減することができる。
実施形態の説明に先立って、以下の説明で用いる表記方法および用語を説明する。
[表記方法]
piは、i番目のシェアを所持するパーティを表す。
P=(p0,…,pn-1)は、シェアを所持するnパーティ全体の集合を表す。
[x](角括弧)は、平文xの(k,n)-秘密分散値を表す。(k,n)-秘密分散値は、平文xを(k,n)-秘密分散で分散した値すべてを集めた組である。秘密分散値[x]は、普段はnパーティ集合Pに分散されて所持されているため、一か所ですべてを所持されることはなく、仮想的である。
[x]iは、(k,n)-秘密分散値[x]のうち、パーティpi∈Pが所持するシェアを表す。
x→(上付き右矢印)は、1つまたは複数の値からなるベクトルを表す。
[x→]は、平文の列がx→となる(k,n)-秘密分散値の列を表す。
[表記方法]
piは、i番目のシェアを所持するパーティを表す。
P=(p0,…,pn-1)は、シェアを所持するnパーティ全体の集合を表す。
[x](角括弧)は、平文xの(k,n)-秘密分散値を表す。(k,n)-秘密分散値は、平文xを(k,n)-秘密分散で分散した値すべてを集めた組である。秘密分散値[x]は、普段はnパーティ集合Pに分散されて所持されているため、一か所ですべてを所持されることはなく、仮想的である。
[x]iは、(k,n)-秘密分散値[x]のうち、パーティpi∈Pが所持するシェアを表す。
x→(上付き右矢印)は、1つまたは複数の値からなるベクトルを表す。
[x→]は、平文の列がx→となる(k,n)-秘密分散値の列を表す。
[秘密分散]
この発明で公開の対象とする秘密分散値は任意の(k,n)-秘密分散による分散値である。(k,n)-秘密分散の例としては、下記参考文献1に記載されたShamir秘密分散(Shamir's Secret Sharing)や、下記参考文献2に記載された複製型秘密分散(Replicated Secret Sharing)が挙げられる。
〔参考文献1〕A. Shamir, “How to share a secret”, Communications of the ACM, vol. 22(11), pp. 612-613, 1979.
〔参考文献2〕R. Cramer, I. Damgard, and Y. Ishai, “Share conversion, pseudorandom secret-sharing and applications to secure computation”, TCC, Vol. 3378 of Lecture Notes in Computer Science, pp. 342-362, Springer, 2005.
この発明で公開の対象とする秘密分散値は任意の(k,n)-秘密分散による分散値である。(k,n)-秘密分散の例としては、下記参考文献1に記載されたShamir秘密分散(Shamir's Secret Sharing)や、下記参考文献2に記載された複製型秘密分散(Replicated Secret Sharing)が挙げられる。
〔参考文献1〕A. Shamir, “How to share a secret”, Communications of the ACM, vol. 22(11), pp. 612-613, 1979.
〔参考文献2〕R. Cramer, I. Damgard, and Y. Ishai, “Share conversion, pseudorandom secret-sharing and applications to secure computation”, TCC, Vol. 3378 of Lecture Notes in Computer Science, pp. 342-362, Springer, 2005.
複製型秘密分散は、例えばn=3, k=2の場合、平文aをa:=a0+a1+a2と変形し、[a0,a1]0、[a1,a2]1、[a2,a0]2の3つのシェアに分散する。シェアを構成する各要素a0,a1,a2はサブシェアと呼ぶ。
[復旧]
復旧とは、シェアを保有する計算主体が利用不能になるなどにより一部のシェアが失われた際に、少なくともk個のシェアが利用可能であることを条件に、利用不能となった一部のシェアを、利用可能なk個のシェアから、秘匿性を失わずに再構築する方法である。Shamir秘密分散では、公知のラグランジュ補間により、k個のシェアから他のn-k個のシェアを復旧することが可能である。複製型秘密分散では、k個のシェアに含まれるサブシェアを組み合わせることで他のn-k個のシェアを復旧することが可能である。
復旧とは、シェアを保有する計算主体が利用不能になるなどにより一部のシェアが失われた際に、少なくともk個のシェアが利用可能であることを条件に、利用不能となった一部のシェアを、利用可能なk個のシェアから、秘匿性を失わずに再構築する方法である。Shamir秘密分散では、公知のラグランジュ補間により、k個のシェアから他のn-k個のシェアを復旧することが可能である。複製型秘密分散では、k個のシェアに含まれるサブシェアを組み合わせることで他のn-k個のシェアを復旧することが可能である。
[復元]
復元とは、n個のシェアのうちk個のシェアを収集し、k個のシェアから元の平文を得る方法である。Shamir秘密分散では、公知のラグランジュ補間により、k個のシェアから元の平文を復元することが可能である。複製型秘密分散では、k個のシェアに含まれるサブシェアを加算することで元の平文を復元することが可能である。
復元とは、n個のシェアのうちk個のシェアを収集し、k個のシェアから元の平文を得る方法である。Shamir秘密分散では、公知のラグランジュ補間により、k個のシェアから元の平文を復元することが可能である。複製型秘密分散では、k個のシェアに含まれるサブシェアを加算することで元の平文を復元することが可能である。
以下、この発明の実施の形態について詳細に説明する。なお、図面中において同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
[第一実施形態]
図1を参照して、第一実施形態の秘密公開システムの構成例を説明する。秘密公開システムは、n(≧3)台の秘密公開装置11,…,1nを含む。本形態では、秘密公開装置11,…,1nはそれぞれ通信網2へ接続される。通信網2は、接続される各装置が相互に通信可能なように構成された回線交換方式もしくはパケット交換方式の通信網であり、例えばインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などを用いることができる。なお、各装置は必ずしも通信網2を介してオンラインで通信可能である必要はない。例えば、秘密公開装置11,…,1nへ入力する情報を磁気テープやUSBメモリなどの可搬型記録媒体に記憶し、その可搬型記録媒体から秘密計算装置11,…,1nへオフラインで入力するように構成してもよい。
図1を参照して、第一実施形態の秘密公開システムの構成例を説明する。秘密公開システムは、n(≧3)台の秘密公開装置11,…,1nを含む。本形態では、秘密公開装置11,…,1nはそれぞれ通信網2へ接続される。通信網2は、接続される各装置が相互に通信可能なように構成された回線交換方式もしくはパケット交換方式の通信網であり、例えばインターネットやLAN(Local Area Network)、WAN(Wide Area Network)などを用いることができる。なお、各装置は必ずしも通信網2を介してオンラインで通信可能である必要はない。例えば、秘密公開装置11,…,1nへ入力する情報を磁気テープやUSBメモリなどの可搬型記録媒体に記憶し、その可搬型記録媒体から秘密計算装置11,…,1nへオフラインで入力するように構成してもよい。
図2を参照して、秘密公開システムに含まれる秘密公開装置1i(i=1,…,n)の構成例を説明する。秘密公開装置1iは、例えば、記憶部10、シェア送信部11、チェックサム送信部12、シェア復旧部13、チェックサム計算部14、改ざん検知部15、および公開値復元部16を含む。
秘密公開装置1iは、例えば、中央演算処理装置(CPU: Central Processing Unit)、主記憶装置(RAM: Random Access Memory)などを有する公知又は専用のコンピュータに特別なプログラムが読み込まれて構成された特別な装置である。秘密公開装置1iは、例えば、中央演算処理装置の制御のもとで各処理を実行する。秘密公開装置1iに入力されたデータや各処理で得られたデータは、例えば、メモリに格納され、メモリに格納されたデータは必要に応じて中央演算処理装置へ読み出されて他の処理に利用される。秘密公開装置1iの各処理部は、少なくとも一部が集積回路等のハードウェアによって構成されていてもよい。
図3を参照して、実施形態の秘密公開方法の処理手続きを説明する。
以下では、p0,…,pn-1をn個のシェアを分散して保有するn台の秘密公開装置とし、p0,…,pk-1は復元に用いるk個のシェアを分散して保有するk台の秘密公開装置とし、p0をk個のシェアから平文を復元して公開する秘密公開装置とする。p0,…,pn-1は論理的に秘密公開装置の役割を指し示す符号であり、どの秘密公開装置11,…,1nがどの秘密公開装置p0,…,pn-1に対応するかは実行時に任意に決定される。以降の説明では、1台の秘密公開装置p0が平文を公開する処理手続きを説明するが、n台の秘密公開装置p0,…,pn-1がそれぞれの役割を入れ替えながら並行して同様の処理を行い、任意の複数台の秘密公開装置がそれぞれ平文を公開するように構成することも可能である。
n台の秘密公開装置pi(i=0,…,n-1)の記憶部10には、シェア[a→]iが記憶されている。シェア[a→]iは平文列a→を(k,n)-秘密分散により分散したシェアである。平文列a→はm(m≧1)個の値a0,…,am-1からなる列である。したがって、シェア[a→]iは平文列a→:=a0,…,am-1の各値をそれぞれ秘密分散したシェアからなるシェア列[a→]i:=([a0]i,…,[am-1]i)である。本形態の(k,n)-秘密分散は、k個のシェアから線形結合で復旧および復元が可能な種類の秘密分散であれば、任意のものを利用することができる。
ステップS11において、k-1台の秘密公開装置pj'(j'=1,…,k-1)のシェア送信部11は、記憶部10に記憶されたシェア[a→]j'を秘密公開装置p0へ送信する。
ステップS12において、n-k台の秘密公開装置pj(j=k,…,n-1)のチェックサム送信部12は、記憶部10に記憶されたシェア[a→]jからチェックサムcjを計算し、そのチェックサムcjを秘密公開装置p0へ送信する。チェックサムは、例えば、入力された情報を規則性のない短い固定長の値に変換したハッシュ値である。もしくは、シェア[a→]jを[a→]j:=([a0]j,…,[am-1]j)とし、rを乱数として、次式で表される情報理論的なチェックサムを計算してもよい。
ステップS13において、秘密公開装置p0のシェア復旧部13は、k-1台の秘密公開装置p1,…,pk-1からそれぞれ受信したk-1個のシェア[a→]1,…,[a→]k-1に自身の記憶部10に記憶されたシェア[a→]0を加えたk個のシェア[a→]0,…,[a→]k-1から、n-k個のシェア[a→]k,…,[a→]n-1を復旧する。復旧の方法は、利用する(k,n)-秘密分散で定められた手順に従って行えばよい。
ステップS14において、秘密公開装置p0のチェックサム計算部14は、j=k,…,n-1について、復旧したシェア[a→]jからチェックサムc'jをそれぞれ計算する。チェックサムの計算方法は、チェックサム送信部12と同様である。
ステップS15aにおいて、秘密公開装置p0の改ざん検知部15は、j=k,…,n-1について、n-k台の秘密公開装置pk,…,pn-1からそれぞれ受信したチェックサムcjと、復旧したシェア[a→]jから計算したチェックサムc'jとをそれぞれ比較する。チェックサムcjとチェックサムc'jがすべて一致した場合には、k個のシェア[a→]0,…,[a→]k-1に改ざんはなかったと判定する。チェックサムcjとチェックサムc'jのいずれかが一致しなかった場合には、k個のシェア[a→]0,…,[a→]k-1のいずれかに改ざんがあったものと判定する。ステップS15bにおいて、改ざんがなかったと判定した場合には、ステップS16へ処理を進める。改ざんがあったと判定した場合には、その旨を示す情報(例えば、「⊥」など)を出力する。
ステップS16において、秘密公開装置p0の公開値復元部16は、k個のシェア[a→]0,…,[a→]k-1から平文列a→を復元し、その平文列a→を公開する。
本形態の秘密公開システムおよび方法は、このように構成することにより、秘密公開装置間で送受信するデータの一部が短い固定長のチェックサムとなるため、通信量を低減することができる。特に、チェックサムは固定長であるため、シェア列に含まれるシェアの個数が多いときに、元のデータ量から削減できる容量が大きくなるため、効率的である。
なお、秘密計算では一般的に代数構造を保存するためにハッシュなどのチェックサムを用いることができない。復元結果については代数構造の制約を受けないため、ハッシュなどを用いることができる点に留意されたい。
[第二実施形態]
この発明の第二実施形態は、公開の対象とする分散値を生成する(k,n)-秘密分散をShamir秘密分散とした秘密公開システムおよび方法の具体例である。
以下、第二実施形態の秘密公開方法の処理手続きを、第一実施形態との差分を中心に説明する。
n台の秘密公開装置pi(i=0,…,n-1)の記憶部10には、平文列a→をShamir秘密分散により分散したシェア[a→]iが記憶されている。Shamir秘密分散の分散方法については、上記参考文献1を参照されたい。
この発明の第二実施形態は、公開の対象とする分散値を生成する(k,n)-秘密分散をShamir秘密分散とした秘密公開システムおよび方法の具体例である。
以下、第二実施形態の秘密公開方法の処理手続きを、第一実施形態との差分を中心に説明する。
n台の秘密公開装置pi(i=0,…,n-1)の記憶部10には、平文列a→をShamir秘密分散により分散したシェア[a→]iが記憶されている。Shamir秘密分散の分散方法については、上記参考文献1を参照されたい。
ステップS13において、秘密公開装置p0のシェア復旧部13は、k個のシェア[a→]0,…,[a→]k-1から、ラグランジュ補間により、n-k個のシェア[a→]k,…,[a→]n-1を復旧する。
ステップS16において、秘密公開装置p0の公開値復元部16は、k個のシェア[a→]0,…,[a→]k-1から、ラグランジュ補間により、平文列a→を復元し、その平文列a→を公開する。
ステップS16において、秘密公開装置p0の公開値復元部16は、k個のシェア[a→]0,…,[a→]k-1から、ラグランジュ補間により、平文列a→を復元し、その平文列a→を公開する。
本形態は、特に秘密公開装置の台数が小さいときに効率的である。例えば、秘密公開装置が3台(すなわちn=3, k=2)のとき、総通信量はmをシェア列の要素数として、約3mである。これは、非特許文献1の従来技術で改ざん検知なしの場合の公開方法と同程度であり、従来技術よりも効率が良い。
[第三実施形態]
この発明の第三実施形態は、公開の対象とする分散値を生成する(k,n)-秘密分散を複製型秘密分散とした秘密公開システムおよび方法の具体例である。
以下、第三実施形態の秘密公開方法の処理手続きを、第一実施形態との差分を中心に説明する。
この発明の第三実施形態は、公開の対象とする分散値を生成する(k,n)-秘密分散を複製型秘密分散とした秘密公開システムおよび方法の具体例である。
以下、第三実施形態の秘密公開方法の処理手続きを、第一実施形態との差分を中心に説明する。
n台の秘密公開装置pi(i=0,…,n-1)の記憶部10には、平文列a→を複製型秘密分散により分散したシェア[a→]iが記憶されている。[a→]iはa→=a→ 0+…+a→ n-1となるサブシェアa→ 0,…,a→ n-1のうちk個を組み合わせたシェア列である。複製型秘密分散の分散方法については、上記参考文献2を参照されたい。
ステップS12において、n-k台の秘密公開装置pj(j=k,…,n-1)のチェックサム送信部12は、記憶部10に記憶されたシェア[a→]jからチェックサムcjを計算する。チェックサムはシェア単位で計算してもよいし、シェアに含まれるサブシェア単位で計算してもよい。
ステップS13において、秘密公開装置p0のシェア復旧部13は、k個のシェア[a→]0,…,[a→]k-1に含まれるサブシェアから相異なるk個の組み合わせを生成することで、n-k個のシェア[a→]k,…,[a→]n-1を復旧する。例えば、パーティp0がシェア[a→ 0,a→ 1]0を、パーティp1がシェア[a→ 1,a→ 2]1を、パーティp2がシェア[a→ 2,a→ 0]2をそれぞれ保持しているとして、パーティp2(すなわちシェア[a→ 2,a→ 0]2)が利用不能となった場合、パーティp0が保持するサブシェアa0とパーティp1が保持するサブシェアa2を組み合わせることで、失われたシェア[a→ 2,a→ 0]2を復旧することができる。
ステップS14において、秘密公開装置p0のチェックサム計算部14は、j=k,…,n-1について、復旧したシェア[a→]jからチェックサムc'jをそれぞれ計算する。チェックサムはチェックサム送信部12と同様に、シェア単位もしくはサブシェア単位で計算する。
ステップS16において、秘密公開装置p0の公開値復元部16は、k個のシェア[a→]0,…,[a→]k-1に含まれる相異なるn個のサブシェアa→ 0,…,a→ n-1を総和して、平文列a→=a→ 0+…+a→ n-1を復元する。
上述のように、本形態のチェックサムは、シェア単位でもサブシェア単位でも計算することができる。秘密計算装置の台数が多い場合にはサブシェアの数が多くなるため、シェア単位でチェックサムを計算した方が通信量を削減することができる。サブシェア単位でチェックサムを計算すると計算対象のデータ量が少ないため計算量を削減することができる。したがって、秘密計算装置の台数と平文のサイズを鑑みて、いずれの単位でチェックサムを計算するかを決定すればよい。
本形態の秘密公開システムおよび方法も、特に秘密公開装置の台数が小さいときに効率的である。総通信量は第二実施形態と同等であり、従来技術よりも効率が良い。
この発明は上述の実施形態に限定されるものではなく、この発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上記実施形態において説明した各種の処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。
[プログラム、記録媒体]
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
上記実施形態で説明した各装置における各種の処理機能をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記各装置における各種の処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
1 秘密公開装置
2 通信網
10 記憶部
11 シェア送信部
12 チェックサム送信部
13 シェア復旧部
14 チェックサム計算部
15 改ざん検知部
16 公開値復元部
2 通信網
10 記憶部
11 シェア送信部
12 チェックサム送信部
13 シェア復旧部
14 チェックサム計算部
15 改ざん検知部
16 公開値復元部
Claims (6)
- [a→]0,…,[a→]n-1を平文列a→から(n,k)-秘密分散により生成したシェアとし、iを0以上n未満の整数とし、jをk以上n未満の整数とし、j'を1以上k未満の整数とし、
n台の秘密公開装置piの記憶部に、上記シェア[a→]iが記憶されており、
k-1台の秘密公開装置pj'が、上記シェア[a→]j'を秘密公開装置p0へ送信するシェア送信ステップと、
n-k台の秘密公開装置pjが、上記シェア[a→]jからチェックサムcjを計算し、上記チェックサムcjを上記秘密公開装置p0へ送信するチェックサム送信ステップと、
上記秘密公開装置p0が、k個の上記シェア[a→]0,…,[a→]k-1からn-k個のシェア[a→]k,…,[a→]n-1を復旧するシェア復旧ステップと、
上記秘密公開装置p0が、j=k,…,n-1について、上記シェア[a→]jからチェックサムc'jをそれぞれ計算するチェックサム計算ステップと、
上記秘密公開装置p0が、j=k,…,n-1について、上記チェックサムcjと上記チェックサムc'jとをそれぞれ比較して上記シェア[a→]1,…,[a→]k-1の改ざんを検知する改ざん検知ステップと、
上記秘密公開装置p0が、上記シェア[a→]0,…,[a→]k-1から上記平文列a→を復元する公開値復元ステップと、
を含む秘密公開方法。 - 請求項1に記載の秘密公開方法であって、
上記(n,k)-秘密分散は、Shamir秘密分散であり、
上記シェア復旧ステップは、ラグランジュ補間により、上記シェア[a→]0,…,[a→]k-1から上記シェア[a→]k,…,[a→]n-1を復旧するものであり、
上記公開値復元ステップは、ラグランジュ補間により、上記シェア[a→]0,…,[a→]k-1から上記平文列a→を復元するものである
秘密公開方法。 - 請求項1に記載の秘密公開方法であって、
上記(n,k)-秘密分散は、複製型秘密分散であり、
上記シェア復旧ステップは、上記シェア[a→]0,…,[a→]k-1に含まれるサブシェアから相異なるk個の組み合わせを生成することで上記シェア[a→]k,…,[a→]n-1を復旧するものであり、
上記公開値復元ステップは、上記シェア[a→]0,…,[a→]k-1に含まれる相異なるn個のサブシェアを総和することで上記平文列a→を復元するものである
秘密公開方法。 - n台の秘密公開装置p0,…,pn-1を含む秘密公開システムであって、
[a→]0,…,[a→]n-1を平文列a→から(n,k)-秘密分散により生成したシェアとし、iを0以上n未満の整数とし、
上記秘密公開装置piは、
上記シェア[a→]iを記憶する記憶部と、
上記シェア[a→]iを他の秘密公開装置へ送信するシェア送信部と、
上記シェア[a→]iからチェックサムciを計算し、上記チェックサムciを上記他の秘密公開装置へ送信するチェックサム送信部と、
k個の上記シェア[a→]0,…,[a→]k-1からn-k個のシェア[a→]k,…,[a→]n-1を復旧するシェア復旧部と、
j=k,…,n-1について、上記シェア[a→]jからチェックサムc'jをそれぞれ計算するチェックサム計算部と、
j=k,…,n-1について、上記チェックサムcjと上記チェックサムc'jとをそれぞれ比較して上記シェア[a→]1,…,[a→]k-1の改ざんを検知する改ざん検知部と、
上記シェア[a→]1,…,[a→]k-1から上記平文列a→を復元する公開値復元部と、
を含む秘密公開システム。 - [a→]0,…,[a→]n-1を平文列a→から(n,k)-秘密分散により生成したシェアとし、iを0以上n未満の整数とし、
上記シェア[a→]iを記憶する記憶部と、
上記シェア[a→]iを他の秘密公開装置へ送信するシェア送信部と、
上記シェア[a→]iからチェックサムciを計算し、上記チェックサムciを上記他の秘密公開装置へ送信するチェックサム送信部と、
k個の上記シェア[a→]0,…,[a→]k-1からn-k個のシェア[a→]k,…,[a→]n-1を復旧するシェア復旧部と、
j=k,…,n-1について、上記シェア[a→]jからチェックサムc'jをそれぞれ計算するチェックサム計算部と、
j=k,…,n-1について、上記チェックサムcjと上記チェックサムc'jとをそれぞれ比較して上記シェア[a→]1,…,[a→]k-1の改ざんを検知する改ざん検知部と、
上記シェア[a→]1,…,[a→]k-1から上記平文列a→を復元する公開値復元部と、
を含む秘密公開装置。 - 請求項5に記載の秘密公開装置としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015022190A JP5860557B1 (ja) | 2015-02-06 | 2015-02-06 | 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2015022190A JP5860557B1 (ja) | 2015-02-06 | 2015-02-06 | 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP5860557B1 JP5860557B1 (ja) | 2016-02-16 |
JP2016146530A true JP2016146530A (ja) | 2016-08-12 |
Family
ID=55305468
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2015022190A Active JP5860557B1 (ja) | 2015-02-06 | 2015-02-06 | 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5860557B1 (ja) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018216512A1 (ja) | 2017-05-25 | 2018-11-29 | 日本電信電話株式会社 | 秘密改ざん検知システム、秘密改ざん検知装置、秘密改ざん検知方法、およびプログラム |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2018321008B2 (en) * | 2017-08-22 | 2021-05-20 | Nippon Telegraph And Telephone Corporation | Share generating device, reconstructing device, secure computation system, share generation method, reconstruction method, program, and recording medium |
WO2019039381A1 (ja) * | 2017-08-22 | 2019-02-28 | 日本電信電話株式会社 | 秘密計算装置、秘密計算方法、プログラム、および記録媒体 |
WO2019039380A1 (ja) * | 2017-08-22 | 2019-02-28 | 日本電信電話株式会社 | シェア生成装置、シェア変換装置、秘密計算システム、シェア生成方法、シェア変換方法、プログラム、および記録媒体 |
WO2020036125A1 (ja) * | 2018-08-13 | 2020-02-20 | 日本電信電話株式会社 | 秘密強写像計算システム、これらの方法、秘密計算装置及びプログラム |
CN112567443B (zh) * | 2018-08-13 | 2024-05-14 | 日本电信电话株式会社 | 秘密联接信息生成系统及方法、秘密联接系统及方法、秘密计算装置、记录介质 |
CN112805769B (zh) * | 2018-10-04 | 2023-11-07 | 日本电信电话株式会社 | 秘密s型函数计算系统、装置、方法及记录介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5396352B2 (ja) * | 2003-04-15 | 2014-01-22 | エヌ・ティ・ティ・コミュニケーションズ株式会社 | データ原本性確保方法およびシステム、ならびにデータ原本性確保用プログラム |
JP5944841B2 (ja) * | 2013-01-18 | 2016-07-05 | 日本電信電話株式会社 | 秘密分散システム、データ分散装置、分散データ保有装置、秘密分散方法、およびプログラム |
JP5961561B2 (ja) * | 2013-01-18 | 2016-08-02 | 日本電信電話株式会社 | 分散管理装置、復元装置、パーティ装置、およびプログラム |
-
2015
- 2015-02-06 JP JP2015022190A patent/JP5860557B1/ja active Active
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2018216512A1 (ja) | 2017-05-25 | 2018-11-29 | 日本電信電話株式会社 | 秘密改ざん検知システム、秘密改ざん検知装置、秘密改ざん検知方法、およびプログラム |
AU2018271515B2 (en) * | 2017-05-25 | 2020-09-10 | Nippon Telegraph And Telephone Corporation | Secret tampering detection system, secret tampering detection apparatus, secret tampering detection method, and program |
EP3633656A4 (en) * | 2017-05-25 | 2021-02-24 | Nippon Telegraph and Telephone Corporation | SECRET ALTERATION DETECTION SYSTEM, SECRET ALTERATION DETECTION DEVICE, SECRET ALTERATION DETECTION METHOD AND PROGRAM |
US11157612B2 (en) | 2017-05-25 | 2021-10-26 | Nippon Telegraph And Telephone Corporation | Secret tampering detection system, secret tampering detection apparatus, secret tampering detection method, and program |
Also Published As
Publication number | Publication date |
---|---|
JP5860557B1 (ja) | 2016-02-16 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP5860556B1 (ja) | 不整合検知方法、不整合検知システム、不整合検知装置、およびプログラム | |
JP5860557B1 (ja) | 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム | |
JP5885840B2 (ja) | 秘密分散システム、データ分散装置、分散データ変換装置、秘密分散方法、およびプログラム | |
JP5826934B2 (ja) | 秘密分散システム、データ分散装置、分散データ変換装置、秘密分散方法、およびプログラム | |
JP6009697B2 (ja) | 秘密計算方法、秘密計算システム、ソート装置及びプログラム | |
JP6095792B2 (ja) | 秘密ビット分解装置、秘密モジュラス変換装置、秘密ビット分解方法、秘密モジュラス変換方法、プログラム | |
JP6016948B2 (ja) | 秘匿計算システム、演算装置、秘匿計算方法、およびプログラム | |
JP5968484B1 (ja) | シェア復旧システム、シェア復旧方法、およびプログラム | |
JP5872085B1 (ja) | 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム | |
JP5872084B1 (ja) | 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム | |
JP5864004B1 (ja) | 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム | |
JP5944841B2 (ja) | 秘密分散システム、データ分散装置、分散データ保有装置、秘密分散方法、およびプログラム | |
JP5299286B2 (ja) | 分散情報生成装置、復元装置、検証装置及び秘密情報分散システム | |
JP6632959B2 (ja) | 検証システム、検証方法及び検証プログラム | |
WO2016104476A1 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
WO2018135511A1 (ja) | 秘密計算方法、秘密計算システム、秘密計算装置、およびプログラム | |
US20220413807A1 (en) | Secure random number generation system, secure computation apparatus, secure random number generation method, and program | |
JP6053238B2 (ja) | 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム | |
WO2018216512A1 (ja) | 秘密改ざん検知システム、秘密改ざん検知装置、秘密改ざん検知方法、およびプログラム | |
JP5889454B1 (ja) | 分散値変換システム、分散値変換装置、分散値変換方法、およびプログラム | |
JP6781397B2 (ja) | 秘密分散システム | |
JP6059159B2 (ja) | シェア変換システム、シェア変換方法、プログラム | |
Jaikar et al. | Verifying Data Integrity in Cloud |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20151209 |
|
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: 20151215 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20151218 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 5860557 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |