説明

無効化処理システム、無効化処理方法およびプログラム

【課題】簡便な方法で、分散処理後に特定の管理者を無効化する。
【解決手段】演算装置が、無効化の対象ではない管理者が管理する分散情報を受信し、その受信した分散情報から秘密情報を復元する。そして、乱数を生成し、その生成した乱数と、復元した秘密情報と、無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成して、その生成した新たな分散情報を無効化の対象ではない管理者が保有する管理者端末に送信する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システム、無効化処理方法およびプログラムに関する。
【背景技術】
【0002】
近年、情報セキュリティの重要性が高まるにつれ、情報の盗難対策と紛失対策が重要な課題となっている。このようなことから、非特許文献1に示されるような(k,n)閾値秘密分散法は、情報の秘匿と紛失によるリスクの回避を同時に実現する手法として、注目を浴びている。ここで、(k,n)閾値秘密分散は、機密情報をn個の分散情報に分散し、そのうち任意のk個の分散情報が集まれば、復元できることを意味する。
【0003】
しかしながら、非特許文献1に示されている(k,n)閾値秘密分散法は、情報の分散、復元時に、(k−1)次の多項式を処理する必要があり、その計算量が膨大になり、処理動作が低速になるという問題があった。
【0004】
これに対して、XORを用いて、(k,n)閾値秘密分散法を構築することにより、高速に情報の分散および復元を可能とする方式が開示されている(例えば、非特許文献2および3参照。)。この非特許文献2および3で開示された方法は、その構造において等価なものであり、単純に高速動作を行うだけでなく、非特許文献1と同様に、完全な情報論理的安全性が保証されており、分散情報のデータ長が秘密情報のデータ長と等しいという特徴を有している。
【先行技術文献】
【非特許文献】
【0005】
【非特許文献1】A.Shamir,“How to Share a Secret,”Commun.ACM, vol.22 no.11 pp.612−613, 1979.
【非特許文献2】J.Kurihara、S.Kiyomoto、K.Fukushima、T.Tanaka、“A Fast (4、n)−Threshold Secret Sharing Scheme Using Exclusive−OR Operation and its Extension to (k、n)−Threshold Schemes”、電子情報通信学会技術研究報告、vol.107、No.44、情報セキュリティ、ISSN0913−5685、ISEC2007−4
【非特許文献3】藤井吉弘、栃窪孝也、保坂範和、多田美奈子、加藤岳久、“排他的論理和を用いた(k、n)しきい値法の構成法”、電子情報通信学会技術研究報告、vol.107、No.44、情報セキュリティ、ISSN0913−5685、ISEC2007−5
【発明の概要】
【発明が解決しようとする課題】
【0006】
上記の非特許文献2および非特許文献3の技術を用いることにより、処理速度の問題は解決されたが、これらのXOR演算による高速な(k、n)閾値秘密分散法では、分散処理の後に、特定の管理者を無効化しようとする場合に、その手法が明示的に示されていないという問題があった。
【0007】
そこで、本発明は、上述の課題に鑑みてなされたものであり、簡便な方法で、分散処理後に特定の管理者を無効化する無効化処理システム、無効化処理方法およびプログラムを提供することを目的とする。
【課題を解決するための手段】
【0008】
本発明は、上記の課題を解決するために、以下の事項を提案している。
【0009】
(1)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システムであって、前記演算装置が、無効化の対象ではない管理者が管理する分散情報を受信する受信手段と、該受信した分散情報から秘密情報を復元する秘密情報復元器と、乱数を生成する乱数生成手段と、該生成した乱数と、前記復元した秘密情報と、前記無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する分散情報生成器と、該生成した新たな分散情報を前記無効化の対象ではない管理者が保有する管理者端末に送信する送信手段と、を備えたことを特徴とする無効化処理システムを提案している。
【0010】
この発明によれば、演算装置の受信手段が、無効化の対象ではない管理者が管理する分散情報を受信し、秘密情報復元器がその受信した分散情報から秘密情報を復元する。そして、乱数生成手段が乱数を生成し、分散情報生成器が、その生成した乱数と、復元した秘密情報と、無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成して、送信手段が、その生成した新たな分散情報を無効化の対象ではない管理者が保有する管理者端末に送信する。したがって、演算装置だけの処理で、簡便に、特定の管理者を無効化できる。
【0011】
(2)本発明は、(1)の無効化処理システムについて、前記秘密情報復元器が、収集したk個の分散情報をk(n−1)個の部分分散情報に分割する分割手段と、前記乱数を1種類につきn−1個ずつのk−1種類とし、前記各部分分散情報より前記乱数を1種類ずつ消去する乱数消去手段と、を備えたことを特徴とする無効化処理システムを提案している。
【0012】
この発明によれば、収集したk個の分散情報をn(k−1)個の部分分散情報に分割すし、乱数を1種類につきn−1個ずつのk−1種類とし、各部分分散情報より前記乱数を1種類ずつ消去することにより秘密情報を復元する。したがって、k個の分散情報を得ることにより、秘密情報を確実に復元することができる。
【0013】
(3)本発明は、(1)の無効化処理システムについて、前記分散情報生成器が、秘密情報sを、(n−1)個(nは分散数nについてn≧nを満たす素数)の部分秘密情報sに分割する分割手段と、ダミー部分秘密情報snp−1を生成するダミー情報生成手段と、互いに独立な乱数rを発生する(k−1)(n−1)個の乱数発生手段と、ダミー部分秘密情報snp−1及び部分秘密情報sと、乱数rとを用いて、排他的論理和(XOR)演算により、部分分散情報を生成するとともに、前記無効化の対象ではない管理者のインデックス番号に基づいて、前記無効化の対象ではない管理者個別の部分分散情報を生成する部分分散情報生成手段と、前記部分分散情報を前記無効化の対象ではない管理者個別の部分分散情報ごとに連結してn個の分散情報wを生成する連結手段と、を備えたことを特徴とする無効化処理システムを提案している。
【0014】
この発明によれば、分割器が秘密情報sを、(n−1)個(nは分散数nについてn≧nを満たす素数)の部分秘密情報sに分割し、ダミー情報生成器がダミー部分秘密情報snp−1を生成し、(k−1)(n−1)個の乱数発生器が互いに独立な乱数rを発生する。そして、部分分散情報生成器がダミー部分秘密情報K及び部分秘密情報sと、乱数rとを用いて、排他的論理和(XOR)演算により、部分分散情報を生成するとともに、連結器が部分分散情報を連結してn個の分散情報wを生成する。したがって、排他的論理和(XOR)を用いて、高速な処理が可能な(k,n)閾値秘密分散処理を実行することができる。
【0015】
(4)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システムであって、前記演算装置が、乱数ベクトルrを生成する乱数ベクトル生成手段と、該生成した乱数ベクトルrを無効化の対象ではない管理者に送信する送信手段と、を備え、前記無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、該XOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成する分散情報生成手段と、前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する管理手段と、を備えたことを特徴とする無効化処理システムを提案している。
【0016】
この発明によれば、演算装置の乱数ベクトル生成手段が、乱数ベクトルrを生成し、送信手段が、その生成した乱数ベクトルrを無効化の対象ではない管理者に送信する。一方、無効化の対象ではない管理者が保有する管理者端末の分散情報生成手段は、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、そのXOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成し、管理手段が、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。つまり、(1)の発明における処理は、上記のように、演算装置だけの処理で、簡便に、特定の管理者を無効化できる点に特徴があるが、一方で、秘密情報を利用する場合でないときにも、分散情報を構成する秘密情報が一時的ではあるが、演算装置に明らかにされてしまうという問題がある。ところが、本発明では、演算装置が乱数を無効化の対象でない管理者に送付し、各管理者が送付された乱数を用いて、自己の分散情報の更新を行うため、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点がある。
【0017】
(5)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システムであって、前記演算装置が、乱数ベクトルrを生成する乱数ベクトル生成手段と、該生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する乱数生成手段と、該生成した乱数を無効化の対象ではない管理者に送信する送信手段と、を備え、前記無効化の対象ではない管理者が保有する管理者端末が、前記演算装置から前記生成した乱数を受信する受信手段と、該受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する分散情報生成手段と、前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する管理手段と、を備えたことを特徴とする無効化処理システムを提案している。
【0018】
この発明によれば、演算装置の乱数ベクトル生成手段が、乱数ベクトルrを生成し、乱数生成手段が、その生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成して、送信手段が、その生成した乱数を無効化の対象ではない管理者に送信する。一方、無効化の対象ではない管理者が保有する管理者端末の受信手段は、演算装置から生成した乱数を受信し、分散情報生成手段が、その受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成するとともに、管理手段が、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。つまり、(4)の発明と同様に、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点があるとともに、インデックス番号により決定される組み合わせを用いた乱数のXOR演算を演算装置で実行することから、各管理者の端末の処理負荷を軽減できる。
【0019】
(6)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、前記演算装置が、無効化の対象ではない管理者が管理する分散情報を受信する第1のステップと、該受信した分散情報から秘密情報を復元する第2のステップと、乱数を生成する第3のステップと、該生成した乱数と、前記復元した秘密情報と、前記無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する第4のステップと、該生成した新たな分散情報を前記無効化の対象ではない管理者が保有する管理者端末に送信する第5のステップと、を備えたことを特徴とする無効化処理方法を提案している。
【0020】
この発明によれば、演算装置が、無効化の対象ではない管理者が管理する分散情報を受信し、その受信した分散情報から秘密情報を復元する。そして、乱数を生成し、その生成した乱数と、復元した秘密情報と、無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成して、その生成した新たな分散情報を無効化の対象ではない管理者が保有する管理者端末に送信する。したがって、演算装置だけの処理で、簡便に、特定の管理者を無効化できる。
【0021】
(7)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、前記演算装置が、乱数ベクトルrを生成する第1のステップと、該生成した乱数ベクトルrを無効化の対象ではない管理者に送信する第2のステップと、前記無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、該XOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成する第3のステップと、前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第4のステップと、を備えたことを特徴とする無効化処理方法を提案している。
【0022】
この発明によれば、演算装置が、乱数ベクトルrを生成し、その生成した乱数ベクトルrを無効化の対象ではない管理者に送信する。一方で、無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、そのXOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成し、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。つまり、(6)の発明における処理は、上記のように、演算装置だけの処理で、簡便に、特定の管理者を無効化できる点に特徴があるが、一方で、秘密情報を利用する場合でないときにも、分散情報を構成する秘密情報が一時的ではあるが、演算装置に明らかにされてしまうという問題がある。ところが、本発明では、演算装置が乱数を無効化の対象でない管理者に送付し、各管理者が送付された乱数を用いて、自己の分散情報の更新を行うため、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点がある。
【0023】
(8)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、前記演算装置が、乱数ベクトルrを生成する第1のステップと、該生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する第2のステップと、該生成した乱数を無効化の対象ではない管理者に送信する第3のステップと、前記無効化の対象ではない管理者が保有する管理者端末が、前記演算装置から前記生成した乱数を受信する第4のステップと、該受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する第5のステップと、前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第6のステップと、を備えたことを特徴とする無効化処理方法を提案している。
【0024】
この発明によれば、演算装置が、乱数ベクトルrを生成し、その生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する。そして、その生成した乱数を無効化の対象ではない管理者に送信する。一方で、無効化の対象ではない管理者が保有する管理者端末が、演算装置から生成した乱数を受信し、その受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成して、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。つまり、(8)の発明と同様に、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点があるとともに、インデックス番号により決定される組み合わせを用いた乱数のXOR演算を演算装置で実行することから、各管理者の端末の処理負荷を軽減できる。
【0025】
(9)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法をコンピュータに実行させるためのプログラムであって、前記演算装置が、無効化の対象ではない管理者が管理する分散情報を受信する第1のステップと、該受信した分散情報から秘密情報を復元する第2のステップと、乱数を生成する第3のステップと、該生成した乱数と、前記復元した秘密情報と、前記無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する第4のステップと、該生成した新たな分散情報を前記無効化の対象ではない管理者が保有する管理者端末に送信する第5のステップと、をコンピュータに実行させるためのプログラムを提案している。
【0026】
この発明によれば、演算装置が、無効化の対象ではない管理者が管理する分散情報を受信し、その受信した分散情報から秘密情報を復元する。そして、乱数を生成し、その生成した乱数と、復元した秘密情報と、無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成して、その生成した新たな分散情報を無効化の対象ではない管理者が保有する管理者端末に送信する。したがって、演算装置だけの処理で、簡便に、特定の管理者を無効化できる。
【0027】
(10)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法をコンピュータに実行させるためのプログラムであって、前記演算装置が、乱数ベクトルrを生成する第1のステップと、該生成した乱数ベクトルrを無効化の対象ではない管理者に送信する第2のステップと、前記無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、該XOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成する第3のステップと、前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第4のステップと、をコンピュータに実行させるためのプログラムを提案している。
【0028】
この発明によれば、演算装置が、乱数ベクトルrを生成し、その生成した乱数ベクトルrを無効化の対象ではない管理者に送信する。一方で、無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、そのXOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成し、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。つまり、(9)の発明における処理は、上記のように、演算装置だけの処理で、簡便に、特定の管理者を無効化できる点に特徴があるが、一方で、秘密情報を利用する場合でないときにも、分散情報を構成する秘密情報が一時的ではあるが、演算装置に明らかにされてしまうという問題がある。ところが、本発明では、演算装置が乱数を無効化の対象でない管理者に送付し、各管理者が送付された乱数を用いて、自己の分散情報の更新を行うため、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点がある。
【0029】
(11)本発明は、演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、前記演算装置が、乱数ベクトルrを生成する第1のステップと、該生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する第2のステップと、該生成した乱数を無効化の対象ではない管理者に送信する第3のステップと、前記無効化の対象ではない管理者が保有する管理者端末が、前記演算装置から前記生成した乱数を受信する第4のステップと、該受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する第5のステップと、前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第6のステップと、をコンピュータに実行させるためのプログラムを提案している。
【0030】
この発明によれば、演算装置が、乱数ベクトルrを生成し、その生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する。そして、その生成した乱数を無効化の対象ではない管理者に送信する。一方で、無効化の対象ではない管理者が保有する管理者端末が、演算装置から生成した乱数を受信し、その受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成して、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。つまり、(10)の発明と同様に、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点があるとともに、インデックス番号により決定される組み合わせを用いた乱数のXOR演算を演算装置で実行することから、各管理者の端末の処理負荷を軽減できる。
【発明の効果】
【0031】
本発明によれば、XORによる(k、n)閾値秘密分散法を用いたシステムにおいて、分散処理後に、m人の管理者(最大k−1人)を簡便な方法で無効化することができるという効果がある。また、本発明を用いることにより、利便性や柔軟性に優れた秘密情報分散システムを構築できるという効果がある。
【図面の簡単な説明】
【0032】
【図1】本発明のシステム構成を示す図である。
【図2】第1の実施形態に係る演算装置の機能ブロックを示す図である。
【図3】第1の実施形態に係る秘密情報復元器の機能ブロックを示す図である。
【図4】第1の実施形態に係る分散情報生成器の機能ブロックを示す図である。
【図5】第1の実施形態に係る無効化処理システムの処理フローである。
【図6】第2の実施形態に係る演算装置の機能ブロックを示す図である。
【図7】第2の実施形態に係る管理者端末の機能ブロックを示す図である。
【図8】第2の実施形態に係る無効化処理システムの処理フローである。
【図9】第3の実施形態に係る演算装置の機能ブロックを示す図である。
【図10】第3の実施形態に係る管理者端末の機能ブロックを示す図である。
【図11】第3の実施形態に係る無効化処理システムの処理フローである。
【発明を実施するための形態】
【0033】
以下、本発明の実施形態について、図面を用いて、詳細に説明する。
なお、本実施形態における構成要素は適宜、既存の構成要素等との置き換えが可能であり、また、他の既存の構成要素との組合せを含む様々なバリエーションが可能である。したがって、本実施形態の記載をもって、特許請求の範囲に記載された発明の内容を限定するものではない。
【0034】
<第1の実施形態>
図1から図5を用いて、本発明の第1の実施形態について説明する。なお、XOR演算による高速(k、n)閾値秘密分散法では、i番目の管理者P(i=0、・・・、n−1)に与えられる分散情報w=(w(i、0)、・・・、w(i、np−2は、次の数1のように定義される。
【0035】
【数1】

【0036】
ここで、s=(s、s、・・・、snp−2は、秘密情報の断片のベクトルであり、nは、n≧nを満たす素数であり、さらに、r=(r、r、・・・、rnp−2は、乱数ベクトルであり、Lは、以下、数2に定義される(n−1)行(n−1)例のバイナリ行列である。
【0037】
【数2】

【0038】
ここで、Iは、l行l列の単位行列であり、すべてのインデックスは、有限体GF(n)の要素である。また、閾値秘密分散法を説明するに先立ち、本明細書中で使用する演算子及び記号について、以下のように、定義する。
【0039】
【数3】

【0040】
<システムの構成>
本実施形態に係る無効化処理システムは、図1に示すように、分散情報の配布をうけて、これを管理する管理者端末1a、1b、1c、1dと、演算装置2とから構成され、これらが、ネットワーク3を介して接続されている。以下、演算装置2および管理者端末1a、1b、1c、1dの機能について、図面を用いて、詳細に説明する。
【0041】
<演算装置の構成>
本実施形態に係る演算装置は、図2に示すように、受信部20と、秘密情報復元器21と、乱数生成部22と、分散情報生成器23と、送信部24とから構成されている。
【0042】
受信部20は、分散情報の配布をうけて、これを管理する管理者のうち、無効化の対象ではない管理者が管理する分散情報を受信する。
【0043】
秘密情報復元器21は、受信部20が受信した分散情報から秘密情報を復元する。これは、図3に示すように、k入力1出力の装置であり、k+1人以上の管理者が集まったときに、そのうちの任意のk人の管理者から分散情報を得て、その分散情報を入力することにより秘密情報を復元する。
【0044】
以下では、この復元処理の手順について説明する。前提として、k人の相異なる管理者Pi0,・・・Pik−1が集まっているとし、k個の分散情報wi0、・・・、wik−1(0≦i、・・・、ik−1≦n−1、i、・・・、ik−1は全て互いに相違)が秘密情報復元器21入力される。
【0045】
(ステップ1)それぞれの分散情報wi0、・・・、wik−1を部分分散情報に分割する。すなわち、以下のk(n−1)個の部分分散情報が得られる。
【0046】
【数4】

【0047】
(ステップ2)
部分分散情報の構成により、全ての部分秘密情報s、s、・・・、snp−2を復元する。
【0048】
(ステップ3)
全ての部分秘密情報を連結し、元の秘密情報Kを復元する。
【0049】
【数5】

【0050】
乱数生成部22は、乱数を生成し、後述する分散情報生成器23に出力する。
【0051】
分散情報生成器23は、乱数生成部22が生成した乱数と、復元した秘密情報と、無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する。具体的には、分散情報生成器23は、秘密情報Kを分割して部分秘密情報Kを生成する分割器31と、ダミー情報Kを生成するダミー情報生成器32と、乱数r、・・・、rk−2を生成する乱数生成部22と、これらの情報から部分分散情報w(i,m)を生成する部分分散情報生成器33と、生成された部分分散情報w(i,m)を連結して分散情報Sを生成する連結器35とから構成されている。
【0052】
具体的な処理手順は以下の通りである。
【0053】
(ステップ1)
秘密情報Kを(n−1)個の部分秘密情報sに分割する。
【0054】
【数6】

【0055】
(ステップ2)
ダミーの部分秘密情報snp−1を生成する。
【0056】
(ステップ3)
−1個ずつの乱数r、・・・、rk−2の計(k−1)(n−1)個の乱数を全て独立に生成する。
【0057】
(ステップ4)
XOR演算により、以下のように部分分散情報w(i,m)を生成する。
【0058】
【数7】

【0059】
(ステップ5)
部分分散情報w(i、0)、・・・、w(i,np−2)を連結して分散情報wを生成し、管理者Pへセキュアに配付する。
【0060】
【数8】

【0061】
送信部24は、分散情報生成器23が生成した新たな分散情報を無効化の対象ではない管理者が保有する管理者端末1a、1b、1cに送信する。
【0062】
<システムの処理動作>
図5を用いて、本実施形態に係るシステムの処理動作について説明する。
まず、演算装置2の受信部20は、無効化の対象ではない管理者が管理する分散情報を受信する(ステップS101)。演算装置2の秘密情報復元器21は、上記に示した手法により受信部20が受信した分散情報から秘密情報を復元する(ステップS102)。
【0063】
次に、演算装置2の乱数生成部22が乱数を生成する(ステップS103)。演算装置2の分散情報生成器23は、乱数生成部22が生成した乱数と、秘密情報復元器21が復元した秘密情報と、無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する(ステップS104)。
【0064】
そして、分散情報生成器23が生成した新たな分散情報を無効化の対象ではない管理者が保有する管理者端末1a、1b、1cに送信する(ステップS105)。新たな分散情報を受信した無効化の対象ではない管理者が保有する管理者端末1a、1b、1cは、従来、管理していた分散情報を受信した分散情報に更新して管理する。
【0065】
したがって、本実施形態においては、XORを用いた高速な(k、n)閾値分散法において、演算装置だけの処理で、簡便に、特定の管理者を無効化できる。
【0066】
<第2の実施形態>
図6から図8を用いて、本発明に係る第2の実施形態について説明する。なお、システム構成は、第1の実施形態と同様であるため、その詳細な説明は省略する。
【0067】
<演算装置の構成>
図6に示すように、本実施形態に係る演算装置は、乱数ベクトル生成部25と、送信部26とから構成されている。
【0068】
ここで、乱数ベクトル生成部25は、乱数ベクトルrを生成し、送信部26は、乱数ベクトル生成部25が生成した乱数ベクトルrを無効化の対象ではない管理者が保有する管理者端末1a、1b、1cに送信する。
【0069】
<管理者端末の構成>
図7に示すように、本実施形態に係る管理者端末は、受信部10と、分散情報生成部11と、管理部12とから構成されている。
【0070】
ここで、受信部10は、演算装置2から送信された乱数ベクトルrを受信する。分散情報生成部11は、自己のインデックス番号によって決定される組み合わせに基づいて、受信部10において受信した乱数ベクトルrの要素同士に対してXOR演算を実行する。また、このXOR演算された値と自己が管理する分散情報とをさらにXOR演算して、新たな分散情報を生成する。
【0071】
管理部12は、自己が管理する分散情報を分散情報生成部11において生成された新たな分散情報に更新して管理する。
【0072】
<システムの処理動作>
図8を用いて、本実施形態に係るシステムの処理動作について説明する。
まず、演算装置2の乱数ベクトル生成部25が、乱数ベクトルrを生成し(ステップS201)、生成した乱数ベクトルrを無効化の対象ではない管理者に送信する(ステップS202)。具体的には、乱数ベクトル生成部25が、数9に示す乱数ベクトルを生成し、数10に示す乱数ベクトルをすべての無効化の対象ではない管理者が保有する管理者端末1a、1b、1cに送信する。ここで、数11は、演算装置2によって、新規に生成された乱数である。
【0073】
【数9】

【0074】
【数10】

【0075】
【数11】

【0076】
一方、無効化の対象ではない管理者が保有する管理者端末1a、1b、1cの受信部10は、演算装置2から乱数ベクトルrを受信する。分散情報生成部11は、自己のインデックス番号によって決定される組み合わせに基づいて、受信した乱数ベクトルrの要素同士に対してXOR演算を実行する。また、このXOR演算された値と自己が管理する分散情報とをさらにXOR演算して、新たな分散情報を生成する(ステップS203)。
【0077】
具体的には、無効化の対象ではない管理者が保有する管理者端末1a、1b、1cの分散情報生成部11は、数12に示す演算式を計算して、更新された分散情報を得る。そして、無効化の対象ではない管理者が保有する管理者端末1a、1b、1cの管理部12は、自己が管理する分散情報を分散情報生成部11において、生成された新たな分散情報に更新して管理する(ステップS204)。
【0078】
【数12】

【0079】
つまり、第1の実施形態における処理は、上記のように、演算装置だけの処理で、簡便に、特定の管理者を無効化できる点に特徴があるが、一方で、秘密情報を利用する場合でないときにも、分散情報を構成する秘密情報が一時的ではあるが、演算装置に明らかにされてしまうという問題がある。ところが、本実施形態では、演算装置が乱数を無効化の対象でない管理者に送付し、各管理者が送付された乱数を用いて、自己の分散情報の更新を行うため、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点がある。
【0080】
<第3の実施形態>
図9から図11を用いて、本発明に係る第3の実施形態について説明する。なお、システム構成は、第1の実施形態と同様であるため、その詳細な説明は省略する。
【0081】
<演算装置の構成>
図9に示すように、本実施形態に係る演算装置は、乱数ベクトル生成部25と、乱数生成部27と、送信部26とから構成されている。なお、乱数ベクトル生成部25の機能は、第2の実施形態と同様であるため、その詳細な説明は省略する。
【0082】
乱数生成部27は、乱数ベクトル生成部25が生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する。送信部26は、乱数生成部27が生成した乱数を無効化の対象ではない管理者が保有する管理者端末1a、1b、1cに送信する。
【0083】
<管理者端末の構成>
図10に示すように、本実施形態に係る管理者端末1a、1b、1cは、受信部13と、分散情報生成部14と、管理部15とから構成されている。
【0084】
ここで、受信部13は、演算装置2の乱数生成部27が生成した乱数を受信し、分散情報生成部14に出力する。分散情報生成部14は、受信部13から入力した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する。管理部15は、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する。
【0085】
<システムの処理動作>
図11を用いて、本実施形態に係るシステムの処理動作について説明する。
まず、演算装置2の乱数ベクトル生成部25が、数13に示すような乱数ベクトルを生成する(ステップS301)。演算装置2の乱数生成部27は、乱数ベクトル生成部25が生成した数13に示すような乱数ベクトルと無効化の対象ではない管理者のインデックス番号とに基づいて、数14に示すような乱数を生成する(ステップS302)。そして、演算装置2の送信部26は、乱数生成部27が生成した乱数を無効化の対象ではない管理者に送信する(ステップS303)。ここで、数15は、演算装置2によって新規に生成された乱数である。
【0086】
【数13】

【0087】
【数14】

【0088】
【数15】

【0089】
一方、無効化の対象ではない管理者が保有する管理者端末1a、1b、1cの受信部13は、演算装置2のから乱数生成部27が生成した乱数を受信する(ステップS304)。無効化の対象ではない管理者が保有する管理者端末1a、1b、1cの分散情報生成部14は、数15に示される数式にしたがって、その受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する(ステップS305)。そして、無効化の対象ではない管理者が保有する管理者端末1a、1b、1cの管理部15が、自己が管理する分散情報をその生成された新たな分散情報に更新して管理する(ステップS306)。
【0090】
【数16】

【0091】
したがって、本実施形態によれば、第2の実施形態と同様に、元々の分散情報を構成する乱数や秘密情報が演算装置に明らかにされないという利点があるとともに、インデックス番号により決定される組み合わせを用いた乱数のXOR演算を演算装置で実行することから、各管理者の端末の処理負荷を軽減できる。
【0092】
なお、無効化処理システムの処理をコンピュータ読み取り可能な記録媒体に記録し、この記録媒体に記録されたプログラムを無効化処理システムを形成する演算装置あるいは複数の管理者端末に読み込ませ、実行することによって本発明の無効化処理システムを実現することができる。ここでいうコンピュータシステムとは、OSや周辺装置等のハードウェアを含む。
【0093】
また、「コンピュータシステム」は、WWW(World Wide Web)システムを利用している場合であれば、ホームページ提供環境(あるいは表示環境)も含むものとする。また、上記プログラムは、このプログラムを記憶装置等に格納したコンピュータシステムから、伝送媒体を介して、あるいは、伝送媒体中の伝送波により他のコンピュータシステムに伝送されても良い。ここで、プログラムを伝送する「伝送媒体」は、インターネット等のネットワーク(通信網)や電話回線等の通信回線(通信線)のように情報を伝送する機能を有する媒体のことをいう。
【0094】
また、上記プログラムは、前述した機能の一部を実現するためのものであっても良い。更に、前述した機能をコンピュータシステムにすでに記録されているプログラムとの組合せで実現できるもの、いわゆる差分ファイル(差分プログラム)であっても良い。
【0095】
以上、この発明の実施形態につき、図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【0096】
1a、1b、1c、1d・・・管理者端末
2・・・演算装置
3・・・ネットワーク
10・・・受信部
11・・・分散情報生成部
12・・・管理部
13・・・受信部
14・・・分散情報生成部
15・・・管理部
20・・・受信部
21・・・秘密情報復元器
22・・・乱数生成部
23・・・分散情報生成器
24・・・送信部
25・・・乱数ベクトル生成部
26・・・送信部
27・・・乱数生成部
31・・・分割器
32・・・ダミー情報生成器
33・・・部分分散情報生成器
35・・・連結器

【特許請求の範囲】
【請求項1】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システムであって、
前記演算装置が、
無効化の対象ではない管理者が管理する分散情報を受信する受信手段と、
該受信した分散情報から秘密情報を復元する秘密情報復元器と、
乱数を生成する乱数生成手段と、
該生成した乱数と、前記復元した秘密情報と、前記無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する分散情報生成器と、
該生成した新たな分散情報を前記無効化の対象ではない管理者が保有する管理者端末に送信する送信手段と、
を備えたことを特徴とする無効化処理システム。
【請求項2】
前記秘密情報復元器が、
収集したk個の分散情報をk(n−1)個の部分分散情報に分割する分割手段と、
前記乱数を1種類につきn−1個ずつのk−1種類とし、前記各部分分散情報より前記乱数を1種類ずつ消去する乱数消去手段と、
を備えたことを特徴とする請求項1に記載の無効化処理システム。
【請求項3】
前記分散情報生成器が、
秘密情報sを、(n−1)個(nは分散数nについてn≧nを満たす素数)の部分秘密情報sに分割する分割手段と、
ダミー部分秘密情報snp−1を生成するダミー情報生成手段と、
互いに独立な乱数rを発生するk−1個の乱数発生手段と、
ダミー部分秘密情報snp−1及び部分秘密情報sと、乱数rとを用いて、排他的論理和(XOR)演算により、部分分散情報を生成するとともに、前記無効化の対象ではない管理者のインデックス番号に基づいて、前記無効化の対象ではない管理者個別の部分分散情報を生成する部分分散情報生成手段と、
前記部分分散情報を前記無効化の対象ではない管理者個別の部分分散情報ごとに連結してn個の分散情報wを生成する連結手段と、
を備えたことを特徴とする請求項1に記載の無効化処理システム。
【請求項4】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システムであって、
前記演算装置が、
乱数ベクトルrを生成する乱数ベクトル生成手段と、
該生成した乱数ベクトルrを無効化の対象ではない管理者に送信する送信手段と、
を備え、
前記無効化の対象ではない管理者が保有する管理者端末が、
自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、該XOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成する分散情報生成手段と、
前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する管理手段と、
を備えたことを特徴とする無効化処理システム。
【請求項5】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理システムであって、
前記演算装置が、
乱数ベクトルrを生成する乱数ベクトル生成手段と、
該生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する乱数生成手段と、
該生成した乱数を無効化の対象ではない管理者に送信する送信手段と、
を備え、
前記無効化の対象ではない管理者が保有する管理者端末が、
前記演算装置から前記生成した乱数を受信する受信手段と、
該受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する分散情報生成手段と、
前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する管理手段と、
を備えたことを特徴とする無効化処理システム。
【請求項6】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、
前記演算装置が、無効化の対象ではない管理者が管理する分散情報を受信する第1のステップと、
該受信した分散情報から秘密情報を復元する第2のステップと、
乱数を生成する第3のステップと、
該生成した乱数と、前記復元した秘密情報と、前記無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する第4のステップと、
該生成した新たな分散情報を前記無効化の対象ではない管理者が保有する管理者端末に送信する第5のステップと、
を備えたことを特徴とする無効化処理方法。
【請求項7】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、
前記演算装置が、乱数ベクトルrを生成する第1のステップと、
該生成した乱数ベクトルrを無効化の対象ではない管理者に送信する第2のステップと、
前記無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、該XOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成する第3のステップと、
前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第4のステップと、
を備えたことを特徴とする無効化処理方法。
【請求項8】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、
前記演算装置が、乱数ベクトルrを生成する第1のステップと、
該生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する第2のステップと、
該生成した乱数を無効化の対象ではない管理者に送信する第3のステップと、
前記無効化の対象ではない管理者が保有する管理者端末が、前記演算装置から前記生成した乱数を受信する第4のステップと、
該受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する第5のステップと、
前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第6のステップと、
を備えたことを特徴とする無効化処理方法。
【請求項9】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法をコンピュータに実行させるためのプログラムであって、
前記演算装置が、無効化の対象ではない管理者が管理する分散情報を受信する第1のステップと、
該受信した分散情報から秘密情報を復元する第2のステップと、
乱数を生成する第3のステップと、
該生成した乱数と、前記復元した秘密情報と、前記無効化の対象ではない管理者のインデックス番号とから新たな分散情報を生成する第4のステップと、
該生成した新たな分散情報を前記無効化の対象ではない管理者が保有する管理者端末に送信する第5のステップと、
をコンピュータに実行させるためのプログラム。
【請求項10】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法をコンピュータに実行させるためのプログラムであって、
前記演算装置が、乱数ベクトルrを生成する第1のステップと、
該生成した乱数ベクトルrを無効化の対象ではない管理者に送信する第2のステップと、
前記無効化の対象ではない管理者が保有する管理者端末が、自己のインデックス番号によって決定される組み合わせに基づいて、乱数ベクトルrの要素同士に対してXOR演算を実行するとともに、該XOR演算された値と自己が管理する分散情報とをXOR演算して、新たな分散情報を生成する第3のステップと、
前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第4のステップと、
をコンピュータに実行させるためのプログラム。
【請求項11】
演算装置と複数の管理者端末とがネットワークを介して接続され、(k、n)閾値秘密分散法における特定の管理者を無効化する無効化処理方法であって、
前記演算装置が、乱数ベクトルrを生成する第1のステップと、
該生成した乱数ベクトルrと無効化の対象ではない管理者のインデックス番号とに基づいて、乱数を生成する第2のステップと、
該生成した乱数を無効化の対象ではない管理者に送信する第3のステップと、
前記無効化の対象ではない管理者が保有する管理者端末が、前記演算装置から前記生成した乱数を受信する第4のステップと、
該受信した乱数と自己が管理する分散情報とのXOR演算を実行し、新たな分散情報を生成する第5のステップと、
前記自己が管理する分散情報を該生成された新たな分散情報に更新して管理する第6のステップと、
をコンピュータに実行させるためのプログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate