JP6059162B2 - シェア復元システム、シェア復元装置、シェア復元方法、プログラム - Google Patents

シェア復元システム、シェア復元装置、シェア復元方法、プログラム Download PDF

Info

Publication number
JP6059162B2
JP6059162B2 JP2014006166A JP2014006166A JP6059162B2 JP 6059162 B2 JP6059162 B2 JP 6059162B2 JP 2014006166 A JP2014006166 A JP 2014006166A JP 2014006166 A JP2014006166 A JP 2014006166A JP 6059162 B2 JP6059162 B2 JP 6059162B2
Authority
JP
Japan
Prior art keywords
share
restoration
consistency
values
algorithm
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
JP2014006166A
Other languages
English (en)
Other versions
JP2015135383A (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
Priority to JP2014006166A priority Critical patent/JP6059162B2/ja
Publication of JP2015135383A publication Critical patent/JP2015135383A/ja
Application granted granted Critical
Publication of JP6059162B2 publication Critical patent/JP6059162B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、安全に分散されたシェアを一貫性を保ち、不正を検知しつつ復元するシェア復元システム、シェア復元装置、シェア復元方法、プログラムに関する。
非特許文献1では、Shamirの秘密分散を、一貫性を保ちつつ復元する方法を提案している。本発明が属する技術において、登場人物は秘密分散を使って分散されたデータを保持するパーティPi(0≦i≦n-1)である。データaは秘密分散を用いてn個のシェアと呼ばれる断片([a]0,…,[a]n-1)に分割され、パーティPiがそれぞれ[a]iを持っている。秘密分散のパラメータとしてデータがn個のシェアに分割され、任意のk個のシェアを集めることで復元が可能であり、t台までのパーティの結託に対し安全であるとする。kを復元しきい値、tを安全しきい値とも呼ぶ。この3変数の間にはt<k≦nが成り立つ。
秘密分散を用いる際考慮すべき安全性として、分散されているデータがaのとき、少なくともk個のシェアが正しいシェアならば、攻撃者が不正をしたとしてもa以外の値に復元されることがない、すなわち復元の値が改ざんされることがないというものがある。この性質は、n人が参加すれば自明に満たすことができるが、その際の通信量はO(n2)かかる。非特許文献1において、Beerliova-TrubiniovaとHirtは、復元する秘密分散がShamir秘密分散且つ3t<nのとき、O(n)個の秘密分散値をO(n2)の通信量で復元でき、結果として1つあたりO(n)の通信量で復元できることを示した。
Zuzana Beerliova-Trubiniova and Martin Hirt. Perfectly-secure MPC with linear communication complexity. In Ran Canetti, editor, TCC, Vol. 4948 of Lecture Notes in Computer Science, pp. 213-230. Springer, 2008.
Beerliova-TrubiniovaとHirtの復元方法(非特許文献1の方法)は、復元する秘密分散がShamir秘密分散限定であり、かつ3t<nを充たさなければ、通信量がO(n)とならない問題があった。そこで本発明では、従来よりも少ない通信量でシェアを復元することができるシェア復元システムを提供することを目的とする。
本発明のシェア復元システムは、n台のシェア復元装置からなる。kを復元しきい値とする。シェア復元装置はk個のRamp型の平文のシェアを入力とし、第1シェア列生成部と、分割値生成部と、第1分割値送信部と、第1コンシステンシー検証部と、第2分割値送信部と、第2コンシステンシー検証部と、第2シェア列生成部と、復元部を含む。
第1シェア列生成部は、k個のRamp型の平文のシェアから自装置を生成元とするシェア列を生成する。分割値生成部は、シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する。第1分割値送信部は、n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する。第1コンシステンシー検証部は、コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する。第2分割値送信部は、受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する。第2コンシステンシー検証部は、所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する。第2シェア列生成部は、所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する。復元部は、所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個のRamp型の平文のシェアにRamp型のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する。
本発明のシェア復元システムによれば、従来よりも少ない通信量でシェアを復元することができる。
本発明の実施例1のシェア復元システムの概要を示すブロック図。 本発明の実施例1のシェア復元装置の構成を示すブロック図。 本発明の実施例1のシェア復元装置の動作を示すフローチャート。 本発明の実施例2のシェア復元システムの概要を示すブロック図。 本発明の実施例2のシェア復元装置の構成を示すブロック図。 本発明の実施例2のシェア復元装置の動作を示すフローチャート。
以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。
≪アルゴリズム、プロトコル≫
以下、本発明で用いられるアルゴリズム、プロトコルについて説明する。本明細書では、通信手順を含まない一連の動作をアルゴリズム、通信手順を含む一連の動作をプロトコルと呼ぶ。秘密分散のパラメータとしてデータがn個のシェアに分割され、任意のk個のシェアを集めることで復元が可能であり、t台までのパーティの結託に対し安全であるとする。kを復元しきい値、tを安全しきい値とも呼ぶ。この3変数の間にはt<k≦nが成り立つ。Ramp情報伝播アルゴリズム(k,n)-RIDAを以下の2つのアルゴリズムの組(RIDA.Split,RIDA.Rec)とする。
<RIDA.Splitアルゴリズム>
RIDA.Splitアルゴリズムでは、
Figure 0006059162
を入力とし、分割値
Figure 0006059162
をi=0,1,…,n-1について計算し、n個の分割値
Figure 0006059162
を出力する。
<RIDA.Recアルゴリズム>
RIDA.Recアルゴリズムでは、n個のインデクス(0,1,…,n-1)のうち任意のk個のインデクスを(i0,i2,…,ik-1)とし、任意のk個の分割値である
Figure 0006059162
を入力とし、x座標を前述のインデクス(i0,i2,…,ik-1)とし、y座標を対応する分割値としたk個の座標群である
Figure 0006059162
のk個の座標点を通るk-1次多項式
Figure 0006059162
を計算し、当該多項式の0次〜k-1次の項である
Figure 0006059162
を復号結果として出力する。ランプ型((k,t,n)-Ramp)を以下の2つのアルゴリズムの組(Ramp.Share,Ramp.Rec)とする。
<Ramp.Shareアルゴリズム>
Ramp.Shareアルゴリズムでは、Ramp型の平文空間である
Figure 0006059162
からランダムに選択したk-t個のRamp型の平文
Figure 0006059162
を入力とし、Ramp型の平文空間から決定する体
Figure 0006059162
からランダムに選択されたt個の乱数
Figure 0006059162
を用いて、Ramp型の平文のシェア
Figure 0006059162
を計算し、n個のRamp型の平文のシェア
Figure 0006059162
を出力する。
<Ramp.Recアルゴリズム>
Ramp.Recアルゴリズムでは、n個のインデクス(0,1,…,n-1)のうち任意のk個のインデクスを(i1,i2,…,ik)とし、任意のk個のRamp型の平文のシェアである
Figure 0006059162
を入力とし、x座標を前述のインデクス(i1,i2,…,ik)とし、y座標を対応するRamp型の平文のシェアとしたk個の座標群である
Figure 0006059162
のk個の座標点を通るk-1次多項式
Figure 0006059162
を計算し、当該多項式の0次〜k-1次の項である
Figure 0006059162
を復号結果として出力する。
線型秘密分散は2つのアルゴリズム(Lin.Share,Lin.Rec)の組であり、復元が線形式で記述可能な秘密分散のことである。特に本明細書では閾値を持つような線形秘密分散であり、(t,n)-Linearとかく。ここで、線型秘密分散ではk=t+1なので、kを省略する。線型秘密分散であれば、任意のデータa、任意の
Figure 0006059162
であるようなパーティのインデクス集合
Figure 0006059162
について、線形秘密分散の復元係数と任意のデータaの線形秘密分散のシェアの線形結合がaと等しくなる、つまり
Figure 0006059162
であるような公知の線形秘密分散の復元係数
Figure 0006059162
が存在する。特に区別するとき、(k,t,n)-Rampおよび(t,n)-Linearのシェアをそれぞれ[a]Ramp,[a]Linと書く。(k,t,n)-Rampに対する復元方法は後述するprotocol1であり、(t,n)-Linearに対する復元方法は後述するprotocol2である。
<CheckConsistencyアルゴリズム>
本発明で用いられるCheckConsistencyアルゴリズムとはコンシステンシー(consistency)と呼ばれる「n個のシェアのうちどのk個のシェアを用いても同じ値が復元される」性質が満たされているかチェックするものであり、例えば、n個のシェアのうち全てのk個のシェアの組に対して復元を行い、同じ値が復元されるかどうかチェックするという方法がある。また、(k,n)-RIDAであれば後述するalgorithm3でもよいし、(t,n)-Linearであれば後述するalgorithm4でもよい。[algorithm3:CheckConsistency for (k,n)-RIDA]
以下、Ramp情報伝播アルゴリズムにおける分割値のコンシステンシーを検証するalgorithm3について説明する。algorithm3は、後述する実施例1および2のステップS116において、第2コンシステンシー検証部116が実行するアルゴリズムである。このアルゴリズムでは、任意のn個の分割値
Figure 0006059162
を入力とし、true信号、またはfalse信号を出力する。具体的には、k≦i≦n-1(i=k,k+1,…,n-1)について、
Figure 0006059162
であれば、false信号を出力し、そうでなければtrue信号を出力する。
[algorithm4:CheckConsistency for (t,n)-Linear]
以下、線形秘密分散のシェアのコンシステンシーを検証するalgorithm4について説明する。algorithm4は、後述する実施例2のステップS214において、第1コンシステンシー検証部214が実行するアルゴリズムである。このアルゴリズムでは、任意のn個の線形秘密分散の平文のシェア
Figure 0006059162
を入力とし、true信号、またはfalse信号を出力する。具体的には、パラメータ用のインデクスの集合が
Figure 0006059162
かつ
Figure 0006059162
であるものとし、
Vに含まれるインデクスlを選び,
検証用インデクスの集合を
Figure 0006059162
とし、
インデクスの集合Vに含まれない各iについて、
Figure 0006059162
である場合には、false信号を出力し、そうでなければtrue信号を出力する。
以下、図1を参照して実施例1のシェア復元システムの概要について説明する。図1は本実施例のシェア復元システム1の概要を示すブロック図である。図1に示すように、本実施例のシェア復元システム1は、n台のシェア復元装置11−1,11−2,…,11−nからなる。n台のシェア復元装置11−1,11−2,…,11−nは、NW9を介して通信可能に接続されている。n台のシェア復元装置11−1,11−2,…,11−nは全て同じ機能を備えるため、これらの代表として、以下シェア復元装置11について述べる。なお、シェア復元装置11が実行する一連の通信手順(プロトコル)をprotocol1と呼ぶ。
以下、図2を参照してシェア復元装置11の構成を説明する。図2は本実施例のシェア復元装置11の構成を示すブロック図である。図2に示すように、シェア復元装置11は第1シェア列生成部111と、分割値生成部112と、第1分割値送信部113と、第1コンシステンシー検証部114と、第2分割値送信部115と、第2コンシステンシー検証部116と、第2シェア列生成部117と、復元部118を含む。シェア復元装置11はk個のRamp型の平文のシェアを入力とする。シェア復元装置11への入力は、
Figure 0006059162
と表す。なお、kを復元しきい値とする。
以下、図3を参照してシェア復元装置11の動作を説明する。図3は、本実施例のシェア復元装置11の動作を示すフローチャートである。なお、n台のシェア復元装置のインデクスをi=0,1,2,…,n-1と表すものとし、し、Piをインデクスi番目のシェア復元装置を表すものとする。図3に示すように、第1シェア列生成部111は、k個のRamp型の平文のシェアから自装置を生成元とするシェア列を生成する(S111)。本ステップで生成されるシェア列を
Figure 0006059162
と表し、各文字の右下に付与した下付き文字は、生成元の装置のインデックスを意味するものとする。従って、
Figure 0006059162
は、インデクスiのシェア復元装置Piで生成されたシェア列を意味する。なお、以下ではインデクスiを自装置を表すインデクスとする。本発明において、シェア復元装置はn台であるため、ステップS111が実行されることにより、システム全体でシェア列は合計n個生成される。分割値生成部112は、シェア列にRamp情報伝播アルゴリズム(前述したRIDA.Splitアルゴリズム)を実行して、各シェア復元装置を送信先とするn個の分割値を生成する(S112)。本ステップで生成されるn個の分割値を、
Figure 0006059162
と表すこととし、ステップS112を、
Figure 0006059162
と表す。なお、n個の各分割値の右肩に示したカッコつきの上付き文字(0),…,(n-1)は、それぞれ、送信先のシェア復元装置のインデクスを示している。第1分割値送信部113は、n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する(S113)。つまりステップS113は、インデクスjを0≦j≦n-1(j=0,1,…,n-1,全装置のインデクス)かつ、j≠i(自装置を含まないインデクス)とし、
Figure 0006059162
と表現できる。第1コンシステンシー検証部114は、コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する(S114)。より詳細には、第1コンシステンシー検証部114は、あるk個のシェア復元装置を生成元とし自装置を送信先とするk個の分割値から計算される分割値が、計算に用いられなかったn−k個のシェア復元装置を生成元とし自装置を送信先とする分割値のそれぞれと等しくない場合に、リジェクトシンボル(┴)を出力して処理を停止する(S114)。あるk個のシェア復元装置を生成元とし自装置を送信先とするk個の分割値から計算される分割値は、あるk個のシェア復元装置のインデクスをm=0,1,…,k-1と表現すれば、
Figure 0006059162
と計算できる。ここでインデクスjをk≦j≦n-1(j=k,k+1,…,n-1)として、前述のk個の装置以外のn−k個のシェア復元装置のインデクスを表すものとすると、計算に用いられなかったn−k個のシェア復元装置を生成元とし自装置を送信先とする分割値は、
Figure 0006059162
と表せる。従ってステップS114は、
Figure 0006059162
と表される。第2分割値送信部115は、受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する(S115)。前述のように自装置のインデクスをiで表すため、自装置を送信先とするn個の分割値は、右肩に送信先である自装置のインデクス(i)、右下に生成元である各装置のインデクス0,1,…,n-1を付与して
Figure 0006059162
と表される。従って、ステップS115は、0≦j≦n-1(j=0,1,…,n-1,全装置のインデクス)かつ、j≠i(自装置を含まないインデクス)とし、
Figure 0006059162
と表される。第2コンシステンシー検証部116は、所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証するCheckConsistencyアルゴリズム(例えば、前述したalgorithm3)を実行してコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボル(┴)を出力して処理を停止する(S116)。0≦j≦k-1(j=0,1,…,k-1)とすれば、所定のk台のシェア復元装置を生成元とする各n個の分割値の列は、
Figure 0006059162
と表される。すなわちステップS116は、0≦j≦k-1(j=0,1,…,k-1)として、
Figure 0006059162
と表される。第2シェア列生成部117は、所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズム(前述したRIDA.Recアルゴリズム)を実行して、所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する(S117)。すなわち、ステップS117は、0≦j≦k-1(j=0,1,…,k-1)として、
Figure 0006059162
と表される。復元部118は、所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個のRamp型の平文のシェアにRamp型のシェアを復元するアルゴリズム(前述のRamp.Recアルゴリズム)を実行して、k個の平文を取得して出力する(S118)。すなわち、ステップS118は、0≦j≦k-1(j=0,1,…,k-1)として、
Figure 0006059162
と表される。このように、シェア復元装置11はk個の平文
Figure 0006059162
を出力する。本実施例のシェア復元システム1(シェア復元装置11)によれば、n≧2t+1(ただしtは安全しきい値)の場合であっても、シェア1つあたりO(n)の通信量で復元可能となる。また、Shamir秘密分散だけでなく、Ramp型にも適応可能である。本実施例のシェア復元システム1(シェア復元装置11)は、RIDAに埋め込んだ後、a(0),…,a(k-1)からa(k)が線形式で記述可能であることを用いてステップS114のように、復元せずにコンシステンシーの検証を可能とした点がポイントである。
以下、図4を参照して線形秘密分散のシェアを復元する実施例2のシェア復元システムの概要について説明する。図4は本実施例のシェア復元システム2の概要を示すブロック図である。図4に示すように、本実施例のシェア復元システム2は、n台のシェア復元装置21−1,21−2,…,21−nからなる。n台のシェア復元装置21−1,21−2,…,21−nは、NW9を介して通信可能に接続されている。n台のシェア復元装置21−1,21−2,…,21−nは全て同じ機能を備えるため、これらの代表として、以下シェア復元装置21について述べる。なお、シェア復元装置21が実行する一連の通信手順(プロトコル)をprotocol2と呼ぶ。
以下、図5を参照してシェア復元装置21の構成を説明する。図5は本実施例のシェア復元装置21の構成を示すブロック図である。図5に示すように、シェア復元装置21は第1シェア列生成部211と、分割値生成部112と、第1分割値送信部113と、第1コンシステンシー検証部214と、第2分割値送信部115と、第2コンシステンシー検証部116と、第2シェア列生成部117と、復元部218を含む。実施例1との違いは、第1シェア列生成部211、第1コンシステンシー検証部214、復元部218のみである。従って、実施例1と同一番号を付した各構成要件については説明を略する。
シェア復元装置21はk個の線形秘密分散の平文のシェアを入力とする。シェア復元装置21への入力は、
Figure 0006059162
と表す。
第1シェア列生成部211は、k個の線形秘密分散の平文のシェアから自装置を生成元とするシェア列を生成する(S211)。すなわち、ステップS211は、
Figure 0006059162
と表される。第1コンシステンシー検証部214は、コンシステンシーを検証するアルゴリズム(前述のalgorithm4)を実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する(S214)。従って、ステップS214は、
Figure 0006059162
と表される。復元部218は、所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個の線形秘密分散の平文のシェアに線形秘密分散のシェアを復元するアルゴリズム(前述したLin.Recアルゴリズム)を実行して、k個の平文を取得して出力する(S218)。0≦j≦k-1(j=0,1,…,k-1)とし、ステップS218は、
Figure 0006059162
と表される。このように、シェア復元装置11はk個の平文
Figure 0006059162
を出力する。本実施例のシェア復元システム2(シェア復元装置21)によれば、n≧2t+1(ただしtは安全しきい値)の場合であっても、シェア1つあたりO(n)の通信量で復元可能となる。また、Shamir秘密分散だけでなく、線形秘密分散にも適応可能である。本実施例のシェア復元システム2(シェア復元装置21)は、RIDAに埋め込んだ後、a(0),…,a(k-1)からa(k)が線形式で記述可能であることを用いてステップS214のように、復元せずにコンシステンシーの検証を可能とした点がポイントである。
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。
また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの(コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等)を含むものとする。
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。

Claims (7)

  1. n台のシェア復元装置からなるシェア復元システムであって、
    kを復元しきい値とし、
    前記シェア復元装置はk個のRamp型の平文のシェアを入力とし、
    前記k個のRamp型の平文のシェアから自装置を生成元とするシェア列を生成する第1シェア列生成部と、
    前記シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する分割値生成部と、
    前記n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する第1分割値送信部と、
    コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第1コンシステンシー検証部と、
    受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する第2分割値送信部と、
    所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第2コンシステンシー検証部と、
    前記所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、前記所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する第2シェア列生成部と、
    前記所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個のRamp型の平文のシェアにRamp型のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する復元部と、
    を含むシェア復元システム。
  2. n台のシェア復元装置からなるシェア復元システムであって、
    kを復元しきい値とし、
    前記シェア復元装置はk個の線形秘密分散の平文のシェアを入力とし、
    前記k個の線形秘密分散の平文のシェアから自装置を生成元とするシェア列を生成する第1シェア列生成部と、
    前記シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する分割値生成部と、
    前記n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する第1分割値送信部と、
    コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第1コンシステンシー検証部と、
    受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する第2分割値送信部と、
    所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第2コンシステンシー検証部と、
    前記所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、前記所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する第2シェア列生成部と、
    前記所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個の線形秘密分散の平文のシェアに線形秘密分散のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する復元部と、
    を含むシェア復元システム。
  3. kを復元しきい値とし、
    k個のRamp型の平文のシェアを入力とし、
    前記k個のRamp型の平文のシェアから自装置を生成元とするシェア列を生成する第1シェア列生成部と、
    前記シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する分割値生成部と、
    前記n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する第1分割値送信部と、
    コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第1コンシステンシー検証部と、
    受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する第2分割値送信部と、
    所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第2コンシステンシー検証部と、
    前記所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、前記所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する第2シェア列生成部と、
    前記所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個のRamp型の平文のシェアにRamp型のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する復元部と、
    を含むシェア復元装置。
  4. kを復元しきい値とし、
    k個の線形秘密分散の平文のシェアを入力とし、
    前記k個の線形秘密分散の平文のシェアから自装置を生成元とするシェア列を生成する第1シェア列生成部と、
    前記シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する分割値生成部と、
    前記n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する第1分割値送信部と、
    コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第1コンシステンシー検証部と、
    受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する第2分割値送信部と、
    所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第2コンシステンシー検証部と、
    前記所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、前記所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する第2シェア列生成部と、
    前記所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個の線形秘密分散の平文のシェアに線形秘密分散のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する復元部と、
    を含むシェア復元装置。
  5. n台のシェア復元装置が実行するシェア復元方法であって、
    kを復元しきい値とし、
    前記シェア復元装置はk個のRamp型の平文のシェアを入力とし、
    前記k個のRamp型の平文のシェアから自装置を生成元とするシェア列を生成する第1シェア列生成ステップと、
    前記シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する分割値生成ステップと、
    前記n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する第1分割値送信ステップと、
    コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第1コンシステンシー検証ステップと、
    受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する第2分割値送信ステップと、
    所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第2コンシステンシー検証ステップと、
    前記所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、前記所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する第2シェア列生成ステップと、
    前記所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個のRamp型の平文のシェアにRamp型のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する復元ステップと、
    を実行するシェア復元方法。
  6. n台のシェア復元装置が実行するシェア復元方法であって、
    kを復元しきい値とし、
    前記シェア復元装置はk個の線形秘密分散の平文のシェアを入力とし、
    前記k個の線形秘密分散の平文のシェアから自装置を生成元とするシェア列を生成する第1シェア列生成ステップと、
    前記シェア列にRamp情報伝播アルゴリズムを実行して、各シェア復元装置を送信先とするn個の分割値を生成する分割値生成ステップと、
    前記n個の分割値を送信先である他のシェア復元装置のそれぞれに送信する第1分割値送信ステップと、
    コンシステンシーを検証するアルゴリズムを実行して分割値のコンシステンシーを検証して、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第1コンシステンシー検証ステップと、
    受信および生成した全ての分割値のうち自装置を送信先とするn個の分割値を他の全てのシェア復元装置に送信する第2分割値送信ステップと、
    所定のk台のシェア復元装置を生成元とする各n個の分割値の列、合計k列の各列についてコンシステンシーを検証し、検証が失敗である場合にリジェクトシンボルを出力して処理を停止する第2コンシステンシー検証ステップと、
    前記所定のk台のシェア復元装置を生成元とする各k個の分割値の列、合計k列の各列にRamp情報伝播アルゴリズムによる分割値を復元するアルゴリズムを実行して、前記所定のk台のシェア復元装置それぞれを生成元とするシェア列を生成する第2シェア列生成ステップと、
    前記所定のk台のシェア復元装置それぞれを生成元とするシェア列から取得したk個の線形秘密分散の平文のシェアに線形秘密分散のシェアを復元するアルゴリズムを実行して、k個の平文を取得して出力する復元ステップと、
    を実行するシェア復元方法。
  7. コンピュータを、請求項3または4に記載のシェア復元装置として機能させるためのプログラム。
JP2014006166A 2014-01-16 2014-01-16 シェア復元システム、シェア復元装置、シェア復元方法、プログラム Active JP6059162B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014006166A JP6059162B2 (ja) 2014-01-16 2014-01-16 シェア復元システム、シェア復元装置、シェア復元方法、プログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014006166A JP6059162B2 (ja) 2014-01-16 2014-01-16 シェア復元システム、シェア復元装置、シェア復元方法、プログラム

Publications (2)

Publication Number Publication Date
JP2015135383A JP2015135383A (ja) 2015-07-27
JP6059162B2 true JP6059162B2 (ja) 2017-01-11

Family

ID=53767265

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014006166A Active JP6059162B2 (ja) 2014-01-16 2014-01-16 シェア復元システム、シェア復元装置、シェア復元方法、プログラム

Country Status (1)

Country Link
JP (1) JP6059162B2 (ja)

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013009245A (ja) * 2011-06-27 2013-01-10 Nec Corp 秘密情報分散システム及び秘密情報分散方法並びに秘密情報生成プログラム及び秘密情報復元プログラム

Also Published As

Publication number Publication date
JP2015135383A (ja) 2015-07-27

Similar Documents

Publication Publication Date Title
US20180225431A1 (en) Secure computation system, secure computation device, secure computation method, and program
US10665137B2 (en) Inconsistency detecting method, inconsistency detecting system, inconsistency detecting device, and program
JP6009697B2 (ja) 秘密計算方法、秘密計算システム、ソート装置及びプログラム
EP2947642A1 (en) Secure-computation system, computing device, secure-computation method, and program
JPWO2015107952A1 (ja) 秘密計算方法、秘密計算システム、ランダム置換装置及びプログラム
JPWO2014007310A1 (ja) 秘密分散システム、データ分散装置、分散データ変換装置、秘密分散方法、およびプログラム
JP5860557B1 (ja) 秘密公開方法、秘密公開システム、秘密公開装置、およびプログラム
JPWO2014007311A1 (ja) 秘密分散システム、データ分散装置、分散データ変換装置、秘密分散方法、およびプログラム
US8483386B2 (en) Share generation apparatus, reconstruction apparatus, verification apparatus, and secret sharing system
US10873631B2 (en) Method for storing data in a cloud and network for carrying out the method
US8861717B2 (en) Verification device, secret information restoration device, verification method, program, and secret sharing system
US20180218650A1 (en) Secret computation apparatus, method for the same, and program
KR20170122048A (ko) 블룸 필터와 이진 트리를 이용한 암호 데이터 검색 시스템 및 그 방법
JP5961561B2 (ja) 分散管理装置、復元装置、パーティ装置、およびプログラム
JP5972181B2 (ja) 改ざん検知装置、改ざん検知方法、およびプログラム
JP6053238B2 (ja) 秘密改ざん検知システム、秘密計算装置、秘密改ざん検知方法、およびプログラム
US20150358162A1 (en) Decryption service providing device, processing device, safety evaluation device, program, and recording medium
JP6059159B2 (ja) シェア変換システム、シェア変換方法、プログラム
AU2019223507B2 (en) Secure computation device, secure computation authentication system, secure computation method, and program
JP6059162B2 (ja) シェア復元システム、シェア復元装置、シェア復元方法、プログラム
JP7042414B2 (ja) 学習装置、学習システム、学習方法及び学習プログラム
JP7420147B2 (ja) シャッフルシステム、シャッフル方法及びプログラム
JP6251163B2 (ja) 暗号化署名システム、暗号化署名装置、調停装置、暗号化検証装置、暗号化署名演算装置、暗号化署名方法、プログラム
JP6273224B2 (ja) 暗号化システム、暗号化装置、復号装置、暗号化方法
JP6059160B2 (ja) シェア変換システム、シェア変換方法、プログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20160122

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161125

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20161208

R150 Certificate of patent or registration of utility model

Ref document number: 6059162

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150