TOP > 国内特許検索 > 分散装置、秘匿演算装置、検証復元装置、分散システム、秘匿演算検証復元システム、及びプログラム

分散装置、秘匿演算装置、検証復元装置、分散システム、秘匿演算検証復元システム、及びプログラム 新技術説明会

国内特許コード P180015344
整理番号 T2018-033,S2018-1014-N0
掲載日 2018年10月17日
出願番号 特願2018-185931
公開番号 特開2020-056840
出願日 平成30年9月28日(2018.9.28)
公開日 令和2年4月9日(2020.4.9)
発明者
  • 岩村 惠市
出願人
  • 学校法人東京理科大学
発明の名称 分散装置、秘匿演算装置、検証復元装置、分散システム、秘匿演算検証復元システム、及びプログラム 新技術説明会
発明の概要 【課題】秘密情報に0を含んでいても、効率よく秘匿演算を繰り返すことを可能にする。
【解決手段】第1生成部は、第1の秘密情報に第1の乱数及び第2の乱数を作用させた第1の値を生成し、前記第1の乱数及び前記第1の秘密情報の少なくとも一方に第3の乱数を作用させた第2の値を生成する。
【選択図】図1
従来技術、競合技術の概要

近年、ビッグデータおよびIoT環境の進歩に伴い、個人に関する情報の活用が期待されている。ただし、個人情報の活用においては、個人情報が漏洩すると個人のプライバシーに影響を与える可能性がある。そのため、ビッグデータの利活用においては、ビッグデータを活用する技術と、個人に関する情報を守る技術とを両立させる必要がある。このような個人に関する情報を守る技術に対するアプローチとして、データを守りながら演算を行うことができる秘匿計算技術が研究されている。

秘匿計算技術は大きく分けると、主に鍵を用いてデータを秘匿する準同型暗号と、鍵を用いずにデータを秘匿する秘密分散法を用いた手法がある。ただし、準同型暗号は一般的に計算量が多く、演算処理に多大な時間がかかるという問題がある。そのため、クラウドシステムへの適用に対しては、計算量が重い準同型暗号よりも、計算量が軽い秘密分散法を用いるというアプローチが検討されている。

秘密分散法とはユーザが持っている秘密情報を複数の異なる値(以降、分散値)に変換し、分散する手法である。秘密分散法の1つであるShamirの(k,n)閾値秘密分散法(以下、「Shamir法」または「(k,n)Shamir法」)が知られている。

また、秘密情報をL個に分割し、分散式の係数として含ませるランプ型秘密分散方式も知られている。ランプ型秘密分散方式によって、分散値の小型化が実現できる。

秘密分散法に関する技術として、例えば、特許文献1には、データを秘匿しながら計算を行い計算結果の正当性を保証する秘匿計算システムが開示されている。

また、特許文献2には、秘密分散によりデータを秘匿しつつ、乗算及び加算からなる式の計算を、計算結果の正当性を保ちながら行う秘匿積和結合システムが開示されている。

また、特許文献3には、完全準同型暗号及び信頼できる第三者を利用せずに、集計対象データ及びその集計結果を秘匿した状態で集計装置に集計処理を実行させる技術が開示されている。

また、秘密分散法の1つに、Shamir法を用いるTUS法がある。TUS法では、他の秘密分散法では実現できないn<2k-1において秘匿演算を実現することが特徴である。

産業上の利用分野

本開示は、分散装置、秘匿演算装置、検証復元装置、分散システム、秘匿演算検証復元システム、及びプログラムに関する。

特許請求の範囲 【請求項1】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
第1の秘密情報に第1の乱数及び第2の乱数を作用させた第1の値を生成し、
前記第1の乱数及び前記第1の秘密情報の少なくとも一方に第3の乱数を作用させた第2の値を生成する第1生成部
を備えた分散装置。

【請求項2】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
第1の秘密情報に第1の乱数及び第2の乱数を作用させた複数の第1の値と、前記第1の乱数又は前記第1の秘密情報に第3の乱数を作用させた複数の第2の値とを用いて、
前記複数の第1の秘密情報同士の演算結果に前記複数の第1の乱数同士の演算結果、及び第4の乱数を作用させた第3の値を生成し、
前記複数の第1の乱数同士又は秘密情報同士の演算結果に第5の乱数を作用させた第4の値を生成する第2生成部
を備えた秘匿演算装置。

【請求項3】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
請求項2に記載の第2生成部によって得られた第3の値及び第4の値の少なくとも一方が0である場合に第6の乱数を生成する第3生成部と、
前記第6の乱数を秘匿加算する加算部と、
を更に備えた秘匿演算装置。

【請求項4】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
請求項2又は請求項3に記載の秘匿演算装置によって得られた、秘密情報に対して乱数を作用させて生成した第3の値から秘密情報と第4の乱数に相当する値を排除する第1排除部と、
前記第1排除部による排除によって得られた第1の乱数同士の演算結果が正しいか否かを判定する第1判定部と、
を備えた検証復元装置。

【請求項5】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
請求項2又は請求項3に記載の秘匿演算装置によって得られた、秘密情報に対して乱数を作用させて生成した第3の値から秘密情報と第4の乱数に相当する値を排除する第2排除部と、
前記第2排除部による排除によって得られた第1の乱数同士の演算結果であって、前記第3の値または第4の値が0の場合に第6の乱数を含む第1の乱数同士の演算結果が正しいか否かを判定する第2判定部と、
を備えた検証復元装置。

【請求項6】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
請求項4に記載の第1排除部、もしくは請求項5に記載の第2排除部から得られる値、又は請求項2に記載の第4の値から各々の第5の乱数に相当する値を排除した値と第3の値から第1の秘密情報同士の演算結果を得る復元部を有する秘匿演算装置。

【請求項7】
請求項1に記載の乱数を前記第1の秘密情報の生成者以外が生成した乱数を用いて生成する第4生成部を含む分散装置、
を備えた分散システム。

【請求項8】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
分散値同士の乗算を行う乗算部と、
前記乗算部による乗算により得られた乗算値と他装置から送られた分離できない乗算値とを用いて分散値の次数変換処理を行う変換部と、
乱数を生成し、生成した乱数を自装置に返信される次数変換後の分散値に加算する加算部と、
備えた秘匿演算装置。

【請求項9】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
秘匿された登録値を用いて、登録値による検証用演算を行う演算部、を含む演算装置と、
前記演算部による演算結果が正しいかどうかを検証する検証部を含む検証復元装置と、
を備えた秘匿演算検証復元システム。

【請求項10】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、プログラムを、
第1の秘密情報に第1の乱数及び第2の乱数を作用させた第1の値を生成し、
前記第1の乱数及び前記第1の秘密情報の少なくとも一方に第3の乱数を作用させた第2の値を生成する第1生成部
として機能させるプログラム。

【請求項11】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、コンピュータを、
第1の秘密情報に第1の乱数及び第2の乱数を作用させた複数の第1の値と、前記第1の乱数又は前記第1の秘密情報に第3の乱数を作用させた複数の第2の値とを用いて、
前記複数の第1の秘密情報同士の演算結果に前記複数の第1の乱数同士の演算結果、及び第4の乱数を作用させた第3の値を生成し、
前記複数の第1の乱数同士又は秘密情報同士の演算結果に第5の乱数を作用させた第4の値を生成する第2生成部
として機能させるプログラム。

【請求項12】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、コンピュータを、
請求項11に記載の第2生成部によって得られた第3の値及び第4の値の少なくとも一方が0である場合に第6の乱数を生成する第3生成部と、
前記第6の乱数を秘匿加算する加算部と、
として機能させるプログラム。

【請求項13】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、コンピュータを、
請求項11又は請求項12に記載のプログラムによって得られた、秘密情報に対して乱数を作用させて生成した第3の値から秘密情報と第4の乱数に相当する値を排除する第1排除部と、
前記第1排除部による排除によって得られた第1の乱数同士の演算結果が正しいか否かを判定する第1判定部と、
として機能させるプログラム。

【請求項14】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、コンピュータを、
請求項11又は請求項12に記載のプログラムによって得られた、秘密情報に対して乱数を作用させて生成した第3の値から秘密情報と第4の乱数に相当する値を排除する第2排除部と、
前記第2排除部による排除によって得られた第1の乱数同士の演算結果であって、前記第3の値または第4の値が0の場合に第6の乱数を含む第1の乱数同士の演算結果が正しいか否かを判定する第2判定部と、
として機能させるプログラム。

【請求項15】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、コンピュータを、
請求項13に記載の第1排除部、もしくは請求項14に記載の第2排除部から得られる値、又は請求項11に記載の第4の値から各々の第5の乱数に相当する値を排除した値と第3の値から第1の秘密情報同士の演算結果を得る手段として機能させるためのプログラム。

【請求項16】
分散装置において、コンピュータを、
請求項10に記載の乱数を前記第1の秘密情報の生成者以外が生成した乱数を用いて生成する第4生成部
として機能させるプログラム。

【請求項17】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、コンピュータを、
分散値同士の乗算を行う乗算部と、
前記乗算部による乗算により得られた乗算値と他装置から送られた分離できない乗算値とを用いて分散値の次数変換処理を行う変換部と、
乱数を生成し、生成した乱数を自装置に返信される次数変換後の分散値に加算する加算部と、
として機能させるプログラム。

【請求項18】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
演算装置において、コンピュータを、秘匿された登録値を用いて、登録値による検証用演算を行う演算部、
として機能させるプログラム。

【請求項19】
nを2以上の整数、kを2以上n以下の整数とし、秘密情報をn個の分散値に分散し、k個の前記分散値によって前記秘密情報を復元でき、k個未満では前記秘密情報を復元できないシステムにおいて、
検証復元装置において、コンピュータを、請求項18に記載の演算部による演算結果が正しいかどうかを検証する検証部、
として機能させるプログラム。
国際特許分類(IPC)
Fターム
画像

※ 画像をクリックすると拡大します。

JP2018185931thum.jpg
出願権利状態 公開
上記の特許・技術に関心のある方は、下記問合せ先にご相談下さい。


PAGE TOP

close
close
close
close
close
close
close