(57)【特許請求の範囲】
【請求項１】
入力データを、秘匿化の対象として利用者が選択可能に表示し、利用者により選択されたデータのみを秘匿処理する複数の変換装置と、
前記複数の変換装置の各々からの入力データを、秘匿化の対象となるデータについては秘匿化済みデータのままで統合し、統合された秘匿化済みデータを、秘密計算の対象として利用者が選択可能に表示するデータ統合装置と、
前記データ統合装置にて選択された秘密計算の対象となる秘匿化済みデータの秘密計算を行い、計算結果を前記データ統合装置に送信するサーバと、を有し、
前記サーバは、
第１の秘密計算装置と、
第２の秘密計算装置と、を有し、
前記複数の変換装置の各々は、
秘匿化済みデータを２つの断片に分割し、
前記データ統合装置は、
秘密計算の演算種別を利用者が選択可能に表示し、利用者により選択された演算種別の情報を、秘匿化済みデータの一方の断片とともに、前記第１の秘密計算装置に送信し、秘匿化済みデータの他方の断片を前記第２の秘密計算装置に送信し、
前記第１の秘密計算装置は、
前記データ統合装置にて選択された演算種別の演算を実行するための乱数化回路を、前記秘匿化済みデータの一方の断片を基に生成し、
前記第２の秘密計算装置は、
前記乱数化回路と秘匿化済みデータの他方の断片を用いて、秘匿化済みデータの秘密計算を実行する、秘密計算システム。
【請求項２】
前記複数の変換装置の各々は、
セル内のデータに対して表計算を実行する表計算手段を有し、該表計算手段上のセルに表示されている入力データを、秘匿化の対象として利用者が矩形選択可能に表示し、利用者により矩形選択されたデータを秘匿処理した秘匿化済みデータを該表計算手段上のセルに表示する、請求項１に記載の秘密計算システム。
【請求項３】
前記データ統合装置は、
セル内のデータに対して表計算を実行する表計算手段を有し、該表計算手段上のセルにて、統合された秘匿化済みデータを、秘密計算の対象として利用者が矩形選択可能に表示する、請求項１または２に記載の秘密計算システム。
【請求項４】
複数の変換装置の各々が、入力データを、秘匿化の対象として利用者が選択可能に表示し、利用者により選択されたデータのみを秘匿処理する第１のステップと、
データ統合装置が、前記複数の変換装置の各々からの入力データを、秘匿化の対象となるデータについては秘匿化済みデータのままで統合し、統合された秘匿化済みデータを、秘密計算の対象として利用者が選択可能に表示する第２のステップと、
サーバが、前記データ統合装置にて選択された秘密計算の対象となる秘匿化済みデータの秘密計算を行い、計算結果を前記データ統合装置に送信する第３のステップと、を有し、
前記第１のステップでは、
秘匿化済みデータを２つの断片に分割し、
前記第２のステップでは、
秘密計算の演算種別を利用者が選択可能に表示し、利用者により選択された演算種別の情報を、秘匿化済みデータの一方の断片とともに、前記サーバを構成する第１の秘密計算装置に送信し、秘匿化済みデータの他方の断片を、前記サーバを構成する第２の秘密計算装置に送信し、
前記第３のステップでは、
前記第１の秘密計算装置が、前記データ統合装置にて選択された演算種別の演算を実行するための乱数化回路を、前記秘匿化済みデータの一方の断片を基に生成し、
前記第２の秘密計算装置が、前記乱数化回路と秘匿化済みデータの他方の断片を用いて、秘匿化済みデータの秘密計算を実行する、秘密計算方法。
【請求項５】
前記複数の変換装置の各々は、セル内のデータに対して表計算を実行する表計算手段を有するものであり、
前記第１のステップでは、
前記表計算手段上のセルに表示されている入力データを、秘匿化の対象として利用者が矩形選択可能に表示し、利用者により矩形選択されたデータを秘匿処理した秘匿化済みデータを該表計算手段上のセルに表示する、請求項４に記載の秘密計算方法。
【請求項６】
前記データ統合装置は、セル内のデータに対して表計算を実行する表計算手段を有するものであり、
前記第２のステップでは、
前記表計算手段上のセルにて、統合された秘匿化済みデータを、秘密計算の対象として利用者が矩形選択可能に表示する、請求項４または５に記載の秘密計算方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、暗号応用技術に関し、特に、任意の属性を持つ入力値を指定し、その入力値を秘匿したまま、その入力値に対する演算の結果を得る技術に関する。
【背景技術】
【０００２】
複数の個人や組織においてデータベース上で管理されているデータを用いて統計分析などを行う際に、当該データが個人情報や機密情報である場合、複数の個人や組織が当該データを開示して統計分析に利用するにあたっては、個人情報保護および情報漏洩対策の観点から何らかの対策を講じる必要がある。
【０００３】
上記対策の１つとして、入力値を秘匿したまま、その入力値に対する演算を行う秘密計算システムを用いることが考えられる。この種の秘密計算システムは、例えば、特許文献１および非特許文献１に開示されている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００９−１９９０６８号公報
【非特許文献】
【０００５】
【非特許文献１】Koji Chida and Katsumi Takahashi, "Privacy Preserving Computations without, Public Key Cryptographic Operation", IWSEC 2008, LNCS 5312, pp. 184-200, 2008.
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、従来の秘密計算システムには、入力データを秘匿化したままでのデータベース上での名寄せ等の統合が困難であるという課題がある。
【０００７】
また、入力データの秘匿化および統計演算実行の際に、ＧＵＩ（Graphical User Interface）ベースのコマンド（例えば、ＳＱＬ（Structured Query Language）など）を用いる場合、以下の３つの課題がある。
【０００８】
１）利用者が当該コマンドを記憶して実行する必要があり、利便性が低い。
【０００９】
２）秘匿化を行う際の入力（どのデータを秘匿化するのか）と出力（秘匿化の結果どのようなデータに変換されたのか）が明示的でない。
【００１０】
３）秘匿化済みのデータに対する統計演算を実行する際に、統計演算の入力（どのデータを対象として演算を実行するのか）が明示的でない。
【００１１】
そこで、本発明の目的は、上述した課題のいずれかを解決することができる秘密計算システム、秘密計算方法を提供することにある。
【課題を解決するための手段】
【００１２】
本発明の秘密計算システムは、
入力データの中から、秘匿化の対象となるデータを選択させて、選択されたデータのみを秘匿処理する複数の変換装置と、
前記複数の変換装置の各々の入力データを、秘匿化の対象となるデータについては秘匿化済みデータのままで統合し、統合された秘匿化済みデータの中から、秘密計算の対象となる秘匿化済みデータを選択させるデータ統合装置と、
秘密計算の対象となる秘匿化済みデータの秘密計算を行い、計算結果を前記データ統合装置に送信するサーバと、を有する。
【００１３】
なお、前記サーバは、
第１の秘密計算装置と、
第２の秘密計算装置と、を有し、
前記複数の変換装置の各々は、
秘匿化済みデータを２つの断片に分割し、
前記データ統合装置は、
秘密計算の演算種別を選択させ、選択された演算種別の情報を、秘匿化済みデータの一方の断片とともに、前記第１の秘密計算装置に送信し、秘匿化済みデータの他方の断片を前記第２の秘密計算装置に送信し、
前記第１の秘密計算装置は、
前記データ統合装置にて選択された演算種別の演算を実行するための乱数化回路を、前記秘匿化済みデータの一方の断片を基に生成し、
前記第２の秘密計算装置は、
前記乱数化回路と秘匿化済みデータの他方の断片を用いて、秘匿化済みデータの秘密計算を実行することとしてもよい。
【００１４】
また、前記複数の変換装置の各々は、
セル内のデータに対して表計算を実行する表計算手段を有し、該表計算手段上のセルに表示されている入力データの中から、秘匿化の対象となるデータを矩形選択させ、矩形選択されたデータを秘匿処理した秘匿化済みデータを該表計算手段上のセルに表示することとしてもよい。
【００１５】
また、前記データ統合装置は、
セル内のデータに対して表計算を実行する表計算手段を有し、該表計算手段上のセルに表示されている、統合された秘匿化済みデータの中から、秘密計算の対象となる秘匿化済みデータを矩形選択させることとしてもよい。
【００１６】
本発明の秘密計算方法は、複数の変換装置の各々が、入力データの中から、秘匿化の対象となるデータを選択させて、選択されたデータのみを秘匿処理する第１のステップと、
データ統合装置が、前記複数の変換装置の各々の入力データを、秘匿化の対象となるデータについては秘匿化済みデータのままで統合し、統合された秘匿化済みデータの中から、秘密計算の対象となる秘匿化済みデータを選択させる第２のステップと、
サーバが、秘密計算の対象となる秘匿化済みデータの秘密計算を行い、計算結果を前記データ統合装置に送信する第３のステップと、を有する。
【発明の効果】
【００１７】
本発明によれば、複数の変換装置の各々において、入力データの中から秘匿化の対象となるデータを選択させて、選択されたデータのみを秘匿処理し、データ統合装置において、複数の変換装置の各々の入力データを、秘匿化の対象となるデータについては秘匿化済みデータのままで統合し、統合した秘匿化済みデータの中から秘密計算の対象となる秘匿化済みデータを選択させて、選択された秘匿化済みデータの秘密計算をサーバにて行う。
【００１８】
すなわち、本発明は、秘匿化の対象となる（開示できない）データと、開示を行っても良いデータとを同時に取り扱えるインタフェースを持つシステム構成となっているため、秘匿化の対象となるデータを秘匿したまま、データの統合を行うことができるという効果が得られる。
【００１９】
また、本発明によれば、表計算ソフトウェア等によって実現される表計算手段をフロントエンドとしており、ＧＵＩでの操作が可能となる。そのため、利用者にとっては、専用のコマンドを覚えて実行する、といった手間が必要ないため、利便性が高いという効果が得られる。
【００２０】
また、本発明によれば、秘匿処理を行う際には、表計算手段上のセルに表示されているデータの中から、秘匿化の対象となるデータを矩形選択させて、選択されたデータの秘匿処理を実行し、秘匿処理した秘匿化済みデータを表計算手段上のセルに表示する。そのため、利用者にとっては、秘匿処理の入力（どのデータを秘匿化するのか）と出力（秘匿化の結果どのようなデータに変換されたのか）が明示的に示されるという効果が得られる。
【００２１】
また、本発明によれば、秘密計算処理を行う際には、表計算手段上のセルに表示されている、統合された秘匿化済みデータの中から、秘密計算の対象となる秘匿化済みデータを矩形選択させて、選択された秘匿化済みデータに対して秘密計算処理を実行する。そのため、利用者にとっては、秘密計算の入力（どのデータを対象として演算を実行するのか）が明示的に示されるという効果が得られる。
【図面の簡単な説明】
【００２２】
【図１】本発明の一実施形態の秘密計算システムの構成を示すブロック図である。
【図２Ａ】図１に示した秘密計算システムにおいて、秘匿処理を行う場合の処理手順を説明するフローチャートである。
【図２Ｂ】図１に示した秘密計算システムにおいて、秘密計算処理を行う場合の処理手順を説明するフローチャートである。
【図３】図２Ａのステップα４において表示される秘匿化結果の表示画面の例を示す図である。
【図４】図１に示した秘密計算システムにおいて、水平統合を行う場合の具体例を示す図である。
【図５】図１に示した秘密計算システムにおいて、垂直統合を行う場合の具体例を示す図である。
【発明を実施するための形態】
【００２３】
以下に、本発明を実施するための形態について図面を参照して説明する。
【００２４】
図１は、本発明の一実施形態の秘密計算システムの構成を示すブロック図である。
【００２５】
図１に示すように、本実施形態の秘密計算システムは、クライアント−サーバ型のシステムとなっている。
【００２６】
クライアント側には、入力データの秘匿化を行う変換装置と、秘匿化済みデータの統合を行うデータ統合装置と、が設けられている。
【００２７】
図１において、クライアント側には、変換装置とデータ統合装置の両方の機能をもつ変換およびデータ統合装置１０が１台と、入力データの秘匿化のみを行う変換装置（＃１〜＃ｎ）２０−１〜２０−ｎ（ｎは１以上の自然数）が複数台存在する構成となっている。ただし、本発明はこれに限らず、秘匿化済みデータの統合のみを行うデータ統合装置１台と、複数台の変換装置が存在する構成とすることも可能である。
【００２８】
変換およびデータ統合装置１０は、セル内のデータに対して表計算を実行する表計算手段１１を有している。また、表計算手段１１は、表計算手段１１上に「秘匿処理実行」と「秘密計算実行」のメニューを表示するメニュー出力手段１２と、入力データの秘匿処理を実行する秘匿処理手段１３と、秘匿化済みデータと演算種別の情報をサーバ側に送信し、秘密計算の実行を指示する秘密計算クライアント手段１４と、を有している。なお、秘匿化済みデータは、２つに分割された断片の状態でサーバ側に送信されるが、これについては後述する。
【００２９】
例えば、変換およびデータ統合装置１０は、ＰＣ（Personal Computer）で実現され、表計算手段１１は、ＰＣにインストールした表計算ソフトウェアで実現され、メニュー出力手段１２、秘匿処理手段１３、および秘密計算クライアント手段１４は、表計算ソフトウェアのプラグインとして動作するソフトウェアで実現される。
【００３０】
変換装置（＃１）２０−１は、変換およびデータ統合装置１０の構成要素のうち秘密計算クライアント手段１４のみを削除した構成となっている。すなわち、変換装置（＃１）２０−１は、メニュー出力手段１２に相当するメニュー出力手段２２と、秘匿処理手段１３に相当する秘匿処理手段２３と、を具備する表計算手段２１を有している。
【００３１】
なお、その他の変換装置（＃２〜＃ｎ）２０−２〜２０−ｎも、変換装置（＃１）２０−１と同様の構成となっている。
【００３２】
また、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎは、変換およびデータ統合装置１０と同様に、例えば、表計算手段１１として表計算ソフトウェアを、また、メニュー出力手段１２、秘匿処理手段１３、および秘密計算クライアント手段１４として表計算ソフトウェアのプラグインとして動作するソフトウェアをインストールしたＰＣで実現される。
【００３３】
一方、サーバ側には、秘匿化済みデータの秘密計算を行う２台の秘密計算装置（＃１，＃２）３１，３２からなる秘密計算装置群３０が設けられている。
【００３４】
秘密計算装置（＃１）３１は、クライアント側から送信されてきた秘匿化済みデータの一方の断片と演算種別の情報を受信し、指定された種別の演算を実行するための乱数化回路を、秘匿化済みデータの一方の断片を基に生成する乱数化回路生成手段３３を有している。
【００３５】
秘密計算装置（＃２）３２は、乱数化回路生成手段３３において生成された乱数化回路とクライアント側から送信されてきた秘匿化済みデータの他方の断片を用いて、秘密計算を実行する秘密計算実行手段３４を有している。
【００３６】
以下、図１に示した秘密計算システムの処理手順について、図２Ａおよび図２Ｂを参照して説明する。
（１）秘匿処理
最初に、秘匿処理を行う場合の処理手順について、図２Ａを参照して説明する。ここでは、変換およびデータ統合装置１０は、秘匿化は行わず、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎの各々にて行われた秘匿化済みデータの統合のみを行うものとする。
【００３７】
まず、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎにおいて、以下のステップα１〜α４の処理が行われる。
【００３８】
すなわち、まず、ステップα１において、利用者は、表計算手段２１上に表示されているセルに数値を入力するなどして、計算に用いるデータを投入し、セルに表示されているデータのうち、秘匿化の対象としたいデータを矩形選択する。
【００３９】
次に、ステップα２において、メニュー出力手段２２は、表計算手段２１のメニュー上に「秘匿処理」を実行するためのボタンを表示し、利用者は、これをクリックする等して秘匿処理の実行を指示する。
【００４０】
次に、ステップα３において、秘匿処理手段２３は、矩形選択された入力データのみを秘匿化し、秘匿化済みデータを２つの断片に分割する。なお、秘匿化・断片への分割化の方法については、特許文献１および非特許文献１に開示された方法を実行することとしてもよい。
【００４１】
次に、ステップα４において、表計算手段２１のセル上に、秘匿化済みデータを秘匿化結果として表示する。秘匿化結果の表示画面の一例を図３に示す。
【００４２】
次に、ステップα５において、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎの各々の表計算手段２１は、電子メール等の手段を用いて、秘匿化済みデータを変換およびデータ統合装置１０に送信する。
【００４３】
その後、ステップα６において、変換およびデータ統合装置１０の秘密計算クライアント手段１４は、利用者の指示の下で、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎから送信されてきた秘匿化済みデータを統合する。
【００４４】
これにより、秘密計算の実行対象となる秘匿化済みデータがすべて揃うこととなる。
（２）秘密計算処理
次に、秘密計算処理を行う場合の処理手順について、図２Ｂを参照して説明する。
【００４５】
まず、ステップβ１において、利用者は、変換およびデータ統合装置１０の表計算手段１１上のセルに表示されている、ステップα６の処理で統合された秘匿化済みデータのうち、秘密計算の対象としたい秘匿化済みデータを矩形選択する。
【００４６】
次に、ステップβ２において、変換およびデータ統合装置１０のメニュー出力手段１２は、表計算手段１１のメニュー上に「秘密計算」を実行するためのボタンを表示し、利用者は、これをクリックする等して秘密計算の実行を指示する。
【００４７】
次に、ステップβ３において、変換およびデータ統合装置１０のメニュー出力手段１２は、表計算手段１１のメニュー上に演算種別を選択するためのメニューを表示し、利用者は、選択肢の中から実行したい演算種別を選択することによって、特定の演算の実行を指示する。
【００４８】
次に、ステップβ４において、変換およびデータ統合装置１０の秘密計算クライアント手段１４は、矩形選択された秘匿化済みデータのうちステップα３で分割された一方の断片およびステップβ３で選択された演算種別の情報を秘密計算装置（＃１）３１へ送信するとともに、秘匿化済みデータの他方の断片を秘密計算装置（＃２）３２へ送信する。
【００４９】
次に、ステップβ５において、秘密計算装置（＃１）３１の乱数化回路生成手段３３は、秘匿化済みデータの一方の断片を基に、秘密計算クライアント手段１４から指示された演算種別の計算を実行する回路を生成し、これを乱数化することによって乱数化回路を生成し、生成した乱数化回路を秘密計算装置（＃２）３２へ送信する。なお、乱数化回路の生成方法については、特許文献１および非特許文献１に開示された方法を実行することとしてもよい。
【００５０】
次に、ステップβ６において、秘密計算装置（＃２）３２の秘密計算実行手段３４は、秘密計算クライアント手段１４から受信したデータの断片とステップβ５で生成された乱数化回路を用いて、秘密計算を実行し、変換およびデータ統合装置１０の秘密計算クライアント手段１４へ計算結果を送信する。
【００５１】
その後、ステップβ７において、変換およびデータ統合装置１０の秘密計算クライアント手段１４は、秘密計算装置（＃２）３２の秘密計算実行手段３４から受信した計算結果を表計算手段１１上に表示する。
【００５２】
ここで、図１に示した秘密計算システムの処理手順の具体例について、図４および図５を参照して説明する。
（Ａ）水平統合
最初に、水平統合を行う場合の処理手順について、図４を参照して説明する。
【００５３】
なお、図４は、同業ではあるが、互いに売上を明かせない３社（Ａ社、Ｂ社、Ｃ社）において業界の売上平均を求める場合の例である。
【００５４】
この場合、まず、Ａ社は、自己の変換装置２０において、「社名」と「売上」のデータを投入し、「売上」のデータを矩形選択して、「秘匿処理」を実行するためのボタンをクリックする。
【００５５】
これを受けて、変換装置２０は、「社名」のデータについては秘匿化を行わず、「売上」のデータのみの秘匿化処理を行う。そして、変換装置２０は、「売上」の秘匿化済みデータを２つの断片に分割する（図中の点線が断片の境界を示す。以下、同じ）。
【００５６】
以上の処理を、Ｂ社、Ｃ社も、自己の変換装置２０において行う。
【００５７】
次に、分析者（第三者）は、変換およびデータ統合装置１０において、Ａ社、Ｂ社、Ｃ社の各データの水平統合を行う。
【００５８】
次に、分析者（第三者）は、変換およびデータ統合装置１０において、水平統合されたデータのうち、「売上」の秘匿化済みデータを矩形選択して、「秘密計算」を実行するためのボタンをクリックする。さらに、分析者（第三者）は、変換およびデータ統合装置１０において、演算種別として「平均値」を選択する。
【００５９】
これを受けて、変換およびデータ統合装置１０は、「売上」の秘匿化済みデータの一方の断片（「Sdifje」、「DIIJFS」、「Fdifji」）および演算種別「平均値」の情報を秘密計算装置（＃１）３１へ送信する。さらに、変換およびデータ統合装置１０は、「売上」の秘匿化済みデータの他方の断片（「wijf」、「fufud」、「wfdks」）を秘密計算装置（＃２）３２へ送信する。
【００６０】
次に、秘密計算装置（＃１）３１は、「売上」の秘匿化済みデータの一方の断片（「Sdifje」、「DIIJFS」、「Fdifji」）を基に、演算種別「平均値」を実行する乱数化回路を生成し、秘密計算装置（＃２）３２は、「売上」の秘匿化済みデータの他方の断片（「wijf」、「fufud」、「wfdks」）と演算種別「平均値」を実行する乱数化回路を用いて、秘密計算を実行し、「平均値」の計算結果を変換およびデータ統合装置１０へ送信する。
（Ｂ）垂直統合
垂直統合を行う場合の処理手順について、図５を参照して説明する。
【００６１】
なお、図５は、異業種のコンテンツ提供企業Iとネット商店IIが、互いの顧客データを
明かすことなく、クロス分析を実施する場合の例である。
【００６２】
この場合、まず、コンテンツ提供企業Iは、自己の変換装置２０において、「ユーザＩ
Ｄ」と「視聴履歴」のデータを投入し、「視聴履歴」のデータを矩形選択して、「秘匿処理」を実行するためのボタンをクリックする。
【００６３】
これを受けて、変換装置２０は、「ユーザＩＤ」のデータについては秘匿化を行わず、「視聴履歴」のデータのみの秘匿化処理を行う。そして、変換装置２０は、「視聴履歴」の秘匿化済みデータを２つの断片に分割する。
【００６４】
一方、ネット商店IIは、自己の変換装置２０において、「ユーザＩＤ」と「購買履歴」
のデータを投入し、「購買履歴」のデータを矩形選択して、「秘匿処理」を実行するためのボタンをクリックする。
【００６５】
これを受けて、変換装置２０は、「ユーザＩＤ」のデータについては秘匿化を行わず、「購買履歴」のデータのみの秘匿化処理を行う。そして、変換装置２０は、「購買履歴」の秘匿化済みデータを２つの断片に分割する。
【００６６】
次に、分析者（第三者）は、変換およびデータ統合装置１０において、コンテンツ提供企業I、ネット商店IIの各データの垂直統合を行う。
【００６７】
次に、分析者（第三者）は、変換およびデータ統合装置１０において、垂直統合されたデータのうち、「視聴履歴」と「購買履歴」の秘匿化済みデータを矩形選択して、「秘密計算」を実行するためのボタンをクリックする。さらに、分析者（第三者）は、変換およびデータ統合装置１０において、演算種別として「クロス集計」を選択する。
【００６８】
これを受けて、変換およびデータ統合装置１０は、「視聴履歴」と「購買履歴」の秘匿化済みデータの一方の断片（「視聴履歴」の「Dfdij」、「Sfids」、・・・と、「購買履歴」の「IIDF」、「DIF」、・・・）および演算種別「クロス集計」の情報を秘密計算装置（＃１）３１へ送信する。さらに、変換およびデータ統合装置１０は、「視聴履歴」と「購買履歴」の秘匿化済みデータの他方の断片（「視聴履歴」の「fsidd」、「jDD」、・・・と、「購買履歴」の「JDIJ」、「hfdf」、・・・）を秘密計算装置（＃２）３２へ送信する。
【００６９】
次に、秘密計算装置（＃１）３１は、「視聴履歴」と「購買履歴」の秘匿化済みデータの一方の断片（「視聴履歴」の「Dfdij」、「Sfids」、・・・と、「購買履歴」の「IIDF」、「DIF」、・・・）を基に、演算種別「クロス集計」を実行する乱数化回路を生成し、秘密計算装置（＃２）３２は、「視聴履歴」と「購買履歴」の秘匿化済みデータの他方の断片（「視聴履歴」の「fsidd」、「jDD」、・・・と、「購買履歴」の「JDIJ」、「hfdf」、・・・）と演算種別「クロス集計」を実行する乱数化回路を用いて、秘密計算を実行し、「クロス集計」の計算結果を変換およびデータ統合装置１０へ送信する。
【００７０】
上述したように本実施形態においては、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎにおいて、入力データの中から秘匿化の対象となるデータを選択させて、選択されたデータのみを秘匿処理し、変換およびデータ統合装置１０において、変換装置（＃１〜＃ｎ）２０−１〜２０−ｎの各々の入力データを、秘匿化の対象となるデータについては秘匿化済みデータのままで統合し、統合した秘匿化済みデータの中から秘密計算の対象となる秘匿化済みデータを選択させて、選択された秘匿化済みデータの秘密計算をサーバにて行う。
【００７１】
すなわち、本実施形態の秘密計算システムは、秘匿化の対象となる（開示できない）データと、開示を行っても良いデータとを同時に取り扱えるインタフェースを持つシステム構成となっているため、秘匿化の対象となるデータを秘匿したまま、データの統合を行うことが可能である。
【００７２】
例えば、図４のように、異なる組織から提供される売上データについて、企業名については秘匿化を行わず、機密情報である売上データのみを秘匿化した上でデータの統合を行い、業界での売上の平均を求める、といった形で、データを秘匿化したまま水平統合することが可能である。
【００７３】
さらに、図５のように、異なる組織から提供される異なる属性のデータについて、ユーザＩＤについては秘匿化を行わず、プライバシー情報となり得る視聴履歴と購買履歴のみを秘匿化した上で名寄せを行い、クロス集計を取って分析する、といった形で、データを秘匿化したまま垂直統合することが可能である。
【００７４】
また、本実施形態においては、表計算ソフトウェア等によって実現される表計算手段をフロントエンドとしており、ＧＵＩでの操作が可能となる。そのため、利用者にとっては、専用のコマンドを覚えて実行する、といった手間が必要ないため、利便性が高い。
【００７５】
また、本実施形態においては、秘匿処理を行う際には、表計算手段上のセルに表示されているデータの中から、秘匿化の対象となるデータを矩形選択させて、選択されたデータの秘匿処理を実行し、秘匿処理した秘匿化済みデータを表計算手段上のセルに表示する。そのため、利用者にとっては、秘匿処理の入力（どのデータを秘匿化するのか）と出力（秘匿化の結果どのようなデータに変換されたのか）が明示的に示されることとなる。
【００７６】
また、本実施形態においては、秘密計算処理を行う際には、表計算手段上のセルに表示されている、統合された秘匿化済みデータの中から、秘密計算の対象となる秘匿化済みデータを矩形選択させて、選択された秘匿化済みデータに対して秘密計算処理を実行する。そのため、利用者にとっては、秘密計算の入力（どのデータを対象として演算を実行するのか）が明示的に示されることとなる。
【符号の説明】
【００７７】
１０    変換およびデータ統合装置
１１    表計算手段
１２    メニュー出力手段
１３    秘匿処理手段
１４    秘密計算クライアント手段
２０−１〜２０−ｎ    変換装置
２１    表計算手段
２２    メニュー出力手段
２３    秘匿処理手段
３０    秘密計算装置群
３１，３２    秘密計算装置
３３    乱数化回路生成手段
３４    秘密計算実行手段
【図１】
0005395609.tif 000002
【図２Ａ】
0005395609.tif 000003
【図２Ｂ】
0005395609.tif 000004
【図３】
0005395609.tif 000005
【図４】
0005395609.tif 000006
【図５】
0005395609.tif 000007