(57)【要約】【課題】  分散コンピューティングシステムにおいて機密性の高いパラメータの漏洩を防ぐ。【解決手段】  複数の部分計算を実行させる分散コンピューティングシステムであって、複数のパラメータにより構成されるパラメータセットを格納するパラメータ格納手段と、複数のパラメータセットのそれぞれにおいて部分計算の結果と線形性を有する線形パラメータを変換パラメータに変換する変換手段と、変換されたパラメータセットのそれぞれをパラメータセットのパラメータ識別情報に対応付けて送信し複数の計算処理装置において複数の部分計算をそれぞれ行わせる送信手段と、パラメータの変換比率を格納する変換比率格納手段と、パラメータ識別情報に対応する変換比率を検索する変換比率検索手段と、計算結果に当該変換比率の逆数を乗じて部分計算の結果を生成し、部分計算の結果の組を出力する逆変換出力手段とを備える分散コンピューティングシステムを提供する。【選択図】図１
2005044204.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、前記複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムであって、
前記計算要求装置は、
複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、
前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、
前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信する送信手段と、
前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段と
を有し、
前記複数の計算処理装置のそれぞれは、
前記計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算手段と、
当該パラメータセットを識別する前記パラメータ識別情報に対応付けて前記計算手段の計算結果を前記計算要求装置に送信する結果送信手段と
を有し、
前記計算要求装置は、更に、
前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、
前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した前記部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段と
を有する分散コンピューティングシステム。
【請求項２】
前記計算処理は、複数の金融資産により構成されるポートフォリオについて、当該ポートフォリオの金融リスクを算出する処理であり、
前記パラメータ格納手段は、当該ポートフォリオに含まれる金融資産の金額を示す金融資産情報及び乱数の初期値を含み、かつ前記乱数の初期値が互いに異なる複数のパラメータセットを格納し、
前記変換手段は、前記複数のパラメータセットのそれぞれについて、前記線形パラメータである当該金融資産の金額を、前記複数の計算処理装置から秘匿するべく所定の金額を示す変換パラメータに変換し、
前記計算手段は、他の計算処理装置と並行して行う前記部分計算として、金融資産が前記所定の金額である場合の将来価値の予測値を計算し、
前記逆変換出力手段は、前記複数の計算処理装置のそれぞれから受け取った前記金融資産の将来価値の予測値に、当該計算処理装置から受け取ったパラメータ識別情報に対応する変換比率の逆数を乗じることにより、金融資産の金額に基づく将来価値の予測値を前記部分計算の結果として生成し、前記複数の計算処理装置のそれぞれにおける部分計算の結果の組に基づく前記金融リスクを前記計算処理の結果として出力する
請求項１記載の分散コンピューティングシステム。
【請求項３】
前記パラメータ格納手段は、当該ポートフォリオに含まれる金融資産の格付け及び当該金融資産の満期を更に含む前記金融資産情報を格納し、
前記計算手段は、当該金融資産の格付け及び当該金融資産の満期に更に基づいて、金融資産が前記所定の金額である場合の将来価値の予測値を計算し、
前記逆変換出力手段は、当該金融資産の格付け及び当該金融資産の満期に基づく前記金融リスクを前記計算処理の結果として出力する
請求項２記載の分散コンピューティングシステム。
【請求項４】
前記パラメータ格納手段は、前記ポートフォリオを構成する互いに異なる複数の金融資産のそれぞれにおける前記金融資産情報と、前記複数の金融資産における価格変動の相関を示す相関情報と、前記乱数の初期値とによりそれぞれ構成され、少なくとも前記乱数の初期値が互いに異なる複数のパラメータセットを格納し、
前記計算手段は、他の計算処理装置と並行して行う前記部分計算として、前記ポートフォリオを構成する各金融資産の将来価値の予測値を、前記乱数の初期値に応じて生成される乱数及び前記相関情報に基づいて計算する
請求項３記載の分散コンピューティングシステム。
【請求項５】
前記変換手段は、前記複数のパラメータセットのそれぞれにおいて、当該パラメータセットの前記線形パラメータである前記金融資産の数量を、当該金融資産の取引単位量である前記変換パラメータに変換する
請求項２記載の分散コンピューティングシステム。
【請求項６】
前記変換手段は、前記複数のパラメータセットのそれぞれにおいて、当該パラメータセットの線形パラメータを、当該パラメータセットにおける前記乱数の初期値に応じて異なる変換パラメータに変換する
請求項２記載の分散コンピューティングシステム。
【請求項７】
前記変換手段は、前記複数のパラメータセットのそれぞれにおける前記線形パラメータを、互いに同一の値に予め定められた変換パラメータに変換する
請求項１記載の分散コンピューティングシステム。
【請求項８】
前記変換手段は、前記線形パラメータを乱数である変換パラメータに変換する
請求項１記載の分散コンピューティングシステム。
【請求項９】
前記変換手段は、前記線形パラメータを、当該線形パラメータと桁数が同一の乱数である変換パラメータに変換する
請求項８記載の分散コンピューティングシステム。
【請求項１０】
前記パラメータ格納手段は、前記複数のパラメータセットのそれぞれとして、複数の前記線形パラメータを含むパラメータセットを格納し、
前記変換手段は、同一の計算処理装置に送信する複数の線形パラメータのそれぞれを、総和が前記複数の線形パラメータの総和と略同一である複数の変換パラメータのそれぞれに変換する
請求項１記載の分散コンピューティングシステム。
【請求項１１】
前記パラメータ格納手段は、前記複数のパラメータセットのそれぞれとして、複数の前記線形パラメータを含むパラメータセットを格納し、
前記変換手段は、当該パラメータセットにおける一の前記線形パラメータ及び他の前記線形パラメータが互いに異なる場合に、前記一の線形パラメータ及び前記他の線形パラメータのそれぞれを、同一の変換パラメータに変換する
請求項１記載の分散コンピューティングシステム。
【請求項１２】
前記パラメータ格納手段は、前記複数のパラメータセットのそれぞれとして、複数の前記線形パラメータを含むパラメータセットを格納し、
前記変換手段は、当該パラメータセットにおける一の前記線形パラメータ及び他の前記線形パラメータが同一の場合に、前記一の線形パラメータ及び前記他の線形パラメータのそれぞれを、互いに異なる一の前記変換パラメータ及び他の前記変換パラメータのそれぞれに変換する
請求項１記載の分散コンピューティングシステム。
【請求項１３】
前記変換手段は、前記複数のパラメータセットのそれぞれにおいて、当該パラメータセットの線形パラメータを、当該パラメータセットの送信先である計算処理装置に予め対応付けられた値である変換パラメータに変換する
請求項１記載の分散コンピューティングシステム。
【請求項１４】
前記分散コンピューティングシステムは、利用者からの入力に応じて前記計算処理のサービスを行う計算サービスシステムであり、
前記計算要求装置は、
前記パラメータセットのうち前記線形パラメータを含む少なくとも一のパラメータである入力パラメータを前記利用者に入力させる入力手段を更に備え、
前記パラメータ格納手段は、前記入力パラメータ及び予め定められた他のパラメータを、前記パラメータセットとして格納し、
前記逆変換出力手段は、前記計算処理の結果を前記利用者に対して出力する
請求項１記載の分散コンピューティングシステム。
【請求項１５】
複数の計算処理装置のそれぞれに、予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる計算要求装置であって、
複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、
前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、
前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信することにより、前記複数の計算処理装置のそれぞれにおいて前記複数の部分計算のそれぞれを行わせる送信手段と、
前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段と、
前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、
前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段と
を備える計算要求装置。
【請求項１６】
複数の情報処理装置のそれぞれに予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる分散コンピューティング提供方法であって、
単位時間当たりに処理可能な最大計算処理量に対する所定の単位時間に行うべき計算処理量が予め定められた基準割合以下の情報処理装置である計算余力保持装置を複数選択する計算余力保持装置選択段階と、
予め定められた一の前記情報処理装置である計算要求装置において、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納させるパラメータ格納段階と、
前記計算要求装置において、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算余力保持装置から秘匿するべく変換パラメータに変換させる変換段階と、
前記計算要求装置において、前記変換段階において変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算余力保持装置のそれぞれに送信させる送信段階と、
前記計算要求装置において、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けてメモリに格納させる変換比率格納段階と、
前記複数の計算余力保持装置のそれぞれにおいて、前記計算要求装置から取得させたパラメータセットに基づいて他の計算余力保持装置と並行して部分計算を行わせる計算段階と、
前記計算要求装置において、前記複数の計算余力保持装置のそれぞれから受け取らせた前記パラメータ識別情報に対応する変換比率を前記メモリから検索させて取得させる変換比率検索段階と、
前記計算要求装置において、前記複数の計算余力保持装置のそれぞれから受け取らせた計算結果に、当該計算余力保持装置から受け取らせた前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成させ、生成させた部分計算の結果の組を前記計算処理の結果として出力させる逆変換出力段階と
を備える分散コンピューティング提供方法。
【請求項１７】
予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、前記複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムを制御する制御方法であって、
前記計算要求装置が、
複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納段階と、
前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換段階と、
前記変換段階において変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信する送信段階と、
前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納段階と、
前記複数の計算処理装置のそれぞれが、
前記計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算段階と、
当該パラメータセットを識別する前記パラメータ識別情報に対応付けて前記計算段階における計算結果を前記計算要求装置に送信する結果送信段階と、
前記計算要求装置が、更に、
前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納段階において格納されたデータから検索して取得する変換比率検索段階と、
前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力段階と
を備える制御方法。
【請求項１８】
複数の計算処理装置のそれぞれに、予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる計算要求装置を制御する制御方法であって、
複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納段階と、
前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換段階と、
前記変換段階において変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信することにより、前記複数の計算処理装置のそれぞれにおいて前記複数の部分計算のそれぞれを行わせる送信段階と、
前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納段階と、
前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納段階において格納されたデータから検索して取得する変換比率検索段階と、
前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力段階と
を備える制御方法。
【請求項１９】
予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、前記複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムを制御するプログラムであって、
前記計算要求装置を、
複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、
前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、
前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信する送信手段と、
前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段と
して機能させ、
前記複数の計算処理装置のそれぞれを、
前記計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算手段と、
当該パラメータセットを識別する前記パラメータ識別情報に対応付けて前記計算手段の計算結果を前記計算要求装置に送信する結果送信手段と
して機能させ、
前記計算要求装置を、更に、
前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、
前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段と
して機能させるプログラム。
【請求項２０】
複数の計算処理装置のそれぞれに、予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる計算要求装置を制御するプログラムであって、
前記計算要求装置を、
複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、
前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、
前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信することにより、前記複数の計算処理装置のそれぞれにおいて前記複数の部分計算のそれぞれを行わせる送信手段と、
前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段と、
前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、
前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段と
して機能させるプログラム。
【請求項２１】
請求項１９又は請求項２０に記載のプログラムを記録した記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、分散コンピューティングシステムに関する。特に本発明は、機密性の高いパラメータに基づく計算を行う分散コンピューティングシステムに関する。
【背景技術】
【０００２】
近年、ネットワーク技術の発達に伴い、莫大な計算資源を必要とする計算を、不特定多数のコンピュータにより並列に行うグリッドコンピューティング技術が注目されている（非特許文献１参照。）。例えば、従来、遺伝子情報の解明等、科学技術計算の分野において、グリッドコンピューティング技術が効果的に用いられている。
【非特許文献１】M. Ben-Or, S. Goldwasser, and A. Wigderson. Completeness theorems for non-cryptographic fault-tolerant distributed computation. In Proceedings of the 20th Annual ACM Symposium on Theory of Computing, STOC'88, pages 1--10, Chicago, IL USA, May 2--4, 1988. ACM.
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、グリッドコンピューティング技術によると、計算を要求する装置は、計算に必要なパラメータを不特定多数のコンピュータに送信する必要がある。これにより、計算を行うコンピュータの管理者等は、パラメータを読み出すことができる。また、通信回線の傍受により、パラメータを読み出すこともできる。従って、グリッドコンピューティング技術を、機密性の高い計算、例えば投資家の金融リスク等の算出に適用することは困難であった。
また、従来、本来必要な計算に不必要な計算を追加して計算させ、本来必要な計算の結果のみを利用することにより計算結果の機密性を保つ秘密計算という技術が用いられている。しかしながら、この技術は、パラメータ自体の機密性を保持することはできず、また、不要な計算を行わせるため計算資源を有効に活用できなかった。
そこで本発明は、上記の課題を解決することのできる分散コンピューティングシステムを提供することを目的とする。この目的は特許請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、本発明の第１の形態においては、予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムであって、計算要求装置は、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、変換手段により変換されたパラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて複数の計算処理装置のそれぞれに送信する送信手段と、複数のパラメータセットのそれぞれについて、線形パラメータに対する変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段とを有し、複数の計算処理装置のそれぞれは、計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算手段と、当該パラメータセットを識別するパラメータ識別情報に対応付けて計算手段の計算結果を計算要求装置に送信する結果送信手段とを有し、計算要求装置は、更に、複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取ったパラメータ識別情報に対応する変換比率を変換比率格納手段から検索して取得する変換比率検索手段と、複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取ったパラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、複数の計算処理装置のそれぞれにおける部分計算の結果の組を計算処理の結果として出力する逆変換出力手段とを有する分散コンピューティングシステム、当該分散コンピューティングシステムを制御する制御方法、プログラム、及びプログラムを記録した記録媒体を提供する。
【０００５】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではなく、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【発明の効果】
【０００６】
本発明によれば、分散コンピューティングシステムにおいて機密性の高いパラメータの漏洩を防ぐことができる。
【発明を実施するための最良の形態】
【０００７】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は特許請求の範囲にかかる発明を限定するものではなく、また実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。
【０００８】
図１は、分散コンピューティングシステム１０の機能ブロック図を示す。分散コンピューティングシステム１０は、複数の金融資産により構成されるポートフォリオについて、当該ポートフォリオの金融リスク、例えば将来価値の予測値を算出する計算処理を、計算処理装置４０−１〜Ｎを用いて行うことを目的とする。
【０００９】
分散コンピューティングシステム１０は、入力端末２０の利用者からの入力に応じて計算処理のサービスを行う計算サービスシステムであり、入力端末２０と、計算要求装置３０と、それぞれが計算要求装置３０と電気通信回線を通じて接続される複数の情報処理装置である情報処理装置群４５とを備える。入力端末２０は、利用者から受け付けた入力パラメータを計算要求装置３０に送る。計算要求装置３０は、情報処理装置群４５のうち所定の条件を満たす装置を、計算処理装置４０−１〜Ｎとして選択する。そして、計算要求装置３０は、当該金融リスクの計算処理に用いられる複数のパラメータのうち、金融資産の金額を示す情報を他の装置等から秘匿するべく変換パラメータに変換して計算処理装置４０−１〜Ｎに送信する。
【００１０】
計算処理装置４０−１〜Ｎのそれぞれは、当該計算処理を構成する複数の部分計算のそれぞれを他の計算処理装置と並行に実行し、計算結果を計算要求装置３０に送る。これを受けて、計算要求装置３０は、部分計算の結果に、金融資産の金額及び変換パラメータの変換比率の逆数を乗じることにより所望の結果を生成する。そして、計算要求装置３０は、部分計算の計算結果の組を用いて金融リスク等を算出し、入力端末２０に出力する。このように、分散コンピューティングシステム１０は、計算処理装置４０−１〜Ｎを用いて計算処理を迅速かつ適切に行うと共に、通信回線の傍受者及び計算処理装置４０−１〜Ｎの管理者から機密性の高い情報を秘匿する。これにより、機密性の高い金融リスク等の計算処理であっても、データ漏洩に対する対策が不充分なインターネット又はイントラネットにおける複数の情報処理装置に行わせることができる。
【００１１】
計算要求装置３０は、計算処理装置４０−１〜Ｎのそれぞれに部分計算の実行を要求する装置であり、入力手段３００と、パラメータ格納手段３１０と、計算余力保持装置選択手段３２０と、変換手段３３０と、変換比率格納手段３４０と、パラメータ送信手段３５０と、変換比率検索手段３６０と、逆変換出力手段３７０とを有する。入力手段３００は、複数のパラメータにより構成されるパラメータセットのうち、当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを含む少なくとも一のパラメータである入力パラメータを、入力端末２０を用いて利用者に入力させ、パラメータ格納手段３１０に送る。
【００１２】
ここで、線形パラメータは、例えば、金融資産の金額を示す情報である。即ち、以下に示すように、金融資産の金額は、部分計算の結果である金融資産の将来価値の予測値に対して線形性を有する。
将来価値の予測値  ＝  金額以外のパラメータにより定まる値  ×  金融資産の金額
なお、線形パラメータは、本例における金融資産の金額に限定されず、部分計算の結果と線形性を有するパラメータであればよい。
【００１３】
パラメータ格納手段３１０は、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納する。例えば、パラメータ格納手段３１０は、利用者により入力手段３００に対して入力された入力パラメータ及び予め定められた他のパラメータの組をパラメータセットとして、当該パラメータを識別するパラメータ識別情報に対応付けて格納する。
【００１４】
計算余力保持装置選択手段３２０は、単位時間当たりに処理可能な最大計算処理量に対する所定の単位時間に行うべき計算処理量が予め定められた基準割合以下の情報処理装置である計算余力保持装置を、部分計算を行わせる計算処理装置として複数選択する。そして、計算余力保持装置選択手段３２０は、選択した計算処理装置４０−１〜Ｎを識別する情報をパラメータ送信手段３５０に送る。
【００１５】
変換手段３３０は、パラメータ格納手段３１０に格納された複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、計算処理装置４０−１〜Ｎから秘匿するべく変換パラメータに変換し、変換パラメータを含むパラメータセットをパラメータ識別情報に対応付けてパラメータ送信手段３５０に送る。また、変換手段３３０は、変換前の線形パラメータ及び変換後の変換パラメータを、パラメータ識別情報に対応付けて変換比率格納手段３４０に送る。
【００１６】
変換比率格納手段３４０は、変換手段３３０から受け取った線形パラメータ及び変換パラメータに基づいて、複数のパラメータセットのそれぞれについて、線形パラメータに対する変換パラメータの比率である変換比率を算出し、変換手段３３０から受け取ったパラメータ識別情報に対応付けて格納する。
【００１７】
パラメータ送信手段３５０は、変換手段３３０により変換されたパラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて、計算処理装置４０−１〜Ｎのそれぞれに送信する。これにより、パラメータ送信手段３５０は、計算処理装置４０−１〜Ｎのそれぞれにおいて複数の部分計算のそれぞれを行わせる。
【００１８】
変換比率検索手段３６０は、複数の部分計算のそれぞれにおける計算結果である計算結果６１０−１〜Ｎのそれぞれを、当該部分計算に用いられたパラメータセットを識別するパラメータ識別情報に対応付けて計算処理装置４０−１〜Ｎから受け取り逆変換出力手段３７０に送る。また、変換比率検索手段３６０は、計算処理装置４０−１〜Ｎのそれぞれについて、当該計算処理装置から受け取ったパラメータ識別情報に対応する変換比率を変換比率格納手段３４０から検索して取得し、逆変換出力手段３７０に送る。
【００１９】
逆変換出力手段３７０は、計算結果６１０−１〜Ｎを変換比率検索手段３６０を介して計算処理装置４０−１〜Ｎから受け取る。また、逆変換出力手段３７０は、パラメータ識別情報に対応付けられた変換比率を変換比率格納手段３４０から受け取る。そして、逆変換出力手段３７０は、計算処理装置４０−１〜Ｎから受け取った計算結果６１０−１〜Ｎのそれぞれに、計算処理装置４０−１〜Ｎから受け取ったパラメータ識別情報に対応する変換比率の逆数を乗じることにより部分計算の結果を生成する。続いて、逆変換出力手段３７０は、生成した当該部分計算の結果の組を計算結果６２０として入力端末２０の利用者に対して出力する。
【００２０】
計算処理装置４０−１は、計算手段４００と、結果送信手段４１０とを有する。計算手段４００は、計算要求装置３０から受け取ったパラメータセット６００−１に基づいて、他の計算処理装置、例えば計算処理装置４０−２〜Ｎと並行して部分計算を行い、計算結果を結果送信手段４１０に送る。結果送信手段４１０は、パラメータセット６００−１を識別するパラメータ識別情報に対応付けて計算手段４００による部分計算の計算結果６１０−１を計算要求装置３０に送る。計算処理装置４０−２〜Ｎのそれぞれは、パラメータセット６００−２〜Ｎのそれぞれに基づいて計算結果６１０−２〜Ｎを算出する他は、計算処理装置４０−１と略同一であるので詳細な説明を省略する。
【００２１】
このように、分散コンピューティングシステム１０は、部分計算に必要なパラメータセットのうち当該部分計算の結果と線形性を有する線形パラメータを、変換パラメータに変換する。これにより、計算要求装置３０及び計算処理装置４０−１〜Ｎ間の通信が傍受された場合又は計算の要求者が計算処理装置４０−１〜Ｎの管理者等が線形パラメータを不当に読み出した場合であっても、線形パラメータの具体的内容が漏洩することを防ぐことができる。
【００２２】
なお、本例において、計算要求装置３０は、入力端末２０からの指示に応じて分散コンピューティングを提供するサーバ装置である。これに代えて、計算要求装置３０は、入力端末２０と一体に設けられたクライアント装置であってもよい。この場合、計算要求装置３０は、利用者に入力させた線形パラメータを変換パラメータに変換し、計算処理装置４０−１〜Ｎに送信して部分計算を行わせる。これにより、利用者は、機密性の高い線形パラメータを、計算処理装置のみならずサーバ装置からも秘匿することができる。
【００２３】
図２は、パラメータ格納手段３１０に格納されるパラメータセットの一例を示す。パラメータ格納手段３１０は、複数のパラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する。例えば、パラメータ格納手段３１０は、パラメータセットとして、ポートフォリオを構成する互いに異なる複数の金融資産のそれぞれにおける当該金融資産の金額等を示す金融資産情報と、複数の金融資産における価格変動の相関を示す相関情報と、乱数の初期値とを格納する。
【００２４】
ここで、乱数の初期値とは、金融資産の将来価値の予測値を算出する場合に用いられる乱数において、当該乱数として出現する各値の発生順序を定める値である。これに代えて、乱数の初期値とは、乱数として出現する値の少なくとも一部を示す数列であってもよい。即ち、乱数の初期値とは、１つの値に限定されるものではなく、乱数の発生順序を定める情報であればよい。また、相関情報とは、例えば、複数の金融資産のそれぞれにおける価格変動が、他の金融資産の価格変動とどの程度相関を有するかを示す情報であり、例えば、行列状のデータ構造を有する相関行列である。
【００２５】
パラメータ格納手段３１０は、ポートフォリオに含まれる金融資産毎に、当該金融資産を識別する資産識別情報と、当該金融資産の格付けを示す格付け情報と、当該金融資産の金額と、当該金融資産の満期とを金融資産情報として格納する。金融資産とは、実物資産に対して貨幣の支払いを目的とする債権であり、例えば、預貯金、貸付金、債券、株式、信託、又は保険であってもよい。格付け情報とは、格付機関により評価された金融資産の償還及び配当の確度を示す情報であり、金融資産の一例である有価証券の格付けであってもよいし、金融資産の一例である有価証券の発行体の格付けであってもよい。また、金融資産の金額とは、線形パラメータの一例であり、例えば、ポートフォリオにおける当該金融資産の額面価格の総和である。これに代えて、金融資産の金額とは、当該金融資産の現在価値（時価）の総和であってもよいし、当該金融資産の償還価格の総和であってもよい。
【００２６】
パラメータ格納手段３１０は、一例として、パラメータ識別情報が１であるパラメータセットとして、乱数の初期値である６５２４１２５と、資産識別情報が１から５である金融資産の金融資産情報と、相関情報とを格納している。また、パラメータ格納手段３１０は、パラメータ識別情報が２であるパラメータセットとして、乱数の初期値である３４５６５４３と、資産識別情報が１から５である金融資産の金融資産情報と、相関情報とを格納している。このように、パラメータ格納手段３１０は、少なくとも乱数の初期値が互いに異なる複数のパラメータセットを格納している。
【００２７】
計算要求装置３０は、複数の金融資産について将来価値の予測値を算出させるべく、本図で示したパラメータセットを、計算処理装置４０−１〜Ｎに対して送信する。ここで、複数の金融資産の価格変動には相関が定まっているので、計算要求装置３０は、金融資産毎に別個に送信することはできず、ポートフォリオを構成する複数の金融資産全体について金融資産情報を送信しなければならない。しかし、計算要求装置３０は、ポートフォリオを構成する複数の金融資産情報全体をそのまま送信してしまうと、金融資産の数量等の機密性の高い情報を、通信回線の傍受等により第３者に漏洩させてしまう場合がある。この場合、ポートフォリオの所有者である投資家等は、投資家の経営リスクを示す情報、例えば、格付けの低い金融資産を多量に保持しているか否か等の情報を第３者に知られてしまう恐れがある。そこで、計算要求装置３０は、機密性の高い金融資産の数量等の情報を秘匿する必要がある。
【００２８】
図３は、パラメータ送信手段３５０が計算処理装置４０−１に送信するパラメータセット６００−１の内容の一例を示す。変換手段３３０は、線形パラメータである金融資産の金額を、計算処理装置４０−１から秘匿するべく所定の数量を示す変換パラメータに変換する。例えば本図において、変換手段３３０は、資産識別情報が１から５である金融資産のそれぞれについて、線形パラメータである当該金融資産の金額を変換パラメータである１に変換する。これを受けて、パラメータ送信手段３５０は、変換パラメータを含むパラメータセット６００−１を計算処理装置４０−１に送信する。
【００２９】
本図の例において、変換手段３３０は、線形パラメータである金融資産の金額を、当該金融資産の価値を示す通貨の取引単位量である変形パラメータ、例えば、１円に変換する。これに代えて、変換手段３３０は、線形パラメータである金融資産の金額を、当該金融資産の取引単位量、例えば、金融資産が債券である場合の額面価格である１００円又は金融資産が株式である場合の額面価格である５０円、５００円、若しくは５０００円等に変換してもよい。
【００３０】
なお、パラメータセット６００−２〜Ｎのそれぞれは、パラメータセット６００−１と比べて乱数の初期値が異なる他は、パラメータセット６００−１と略同一であってよい。例えば、変換手段３３０は、図２に示したパラメータ識別情報が２であるパラメータセットにおいても、金融資産の金額を示す線形パラメータを変換パラメータである１に変換してもよい。このように、変換手段３３０は、複数のパラメータセットのそれぞれにおいて、当該パラメータセットの送信先に関わらず、当該パラメータセットの線形パラメータを、互いに同一の値（例えば１円）に予め定められた値である変換パラメータに変換してもよい。
【００３１】
図４は、変換比率格納手段３４０に格納される情報の一例を示す。変換比率格納手段３４０は、複数のパラメータセットのそれぞれについて、線形パラメータに対する変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報及び金融資産を識別する資産識別情報に対応付けて格納する。
【００３２】
例えば、パラメータ送信手段３５０が、資産識別情報が１の金融資産の金額７，０００，０００を、変換パラメータである１に変換したので、変換比率格納手段３４０は、変換比率として１／７００００００を格納する。なお、本図の例において変換比率格納手段３４０は、線形パラメータに対する変換パラメータの比率である変換比率として、変換パラメータを線形パラメータで除した数値を格納する。これに代えて、変換比率格納手段３４０は、線形パラメータを変換パラメータで除した数値を変換比率として格納してもよい。即ち、変換比率格納手段３４０が格納する変換比率とは、線形パラメータ及び変換パラメータの比率を示すものであればよい。
【００３３】
図５は、計算処理装置４０−１が計算要求装置３０に送信する計算結果６１０−１の内容の一例を示す。計算手段４００は、他の計算処理装置と並行して行う部分計算として、金融資産情報に基づいて、金融資産が所定の金額、例えば１円である場合の将来価値の予測値を計算する。例えば、計算手段４００は、資産識別情報が１円である金融資産の将来価値の予測値として、１．１１７２９２円を算出する。そして、結果送信手段４１０は、将来価値の予測値を含む計算結果６１０−１を計算要求装置３０に送信する。
【００３４】
また、計算処理装置４０−２〜Ｎのそれぞれは、計算処理装置４０−１とは異なる乱数の初期値を用いて部分計算を行うことにより、計算結果６１０−１と異なる将来価値の予測値を示す計算結果６１０−２〜Ｎのそれぞれを算出し、計算要求装置３０に送信する。
【００３５】
図６は、計算結果６２０の内容の一例を示す。変換比率検索手段３６０は、計算処理装置４０−１〜Ｎのそれぞれについて、当該計算処理装置から受け取ったパラメータ識別情報に対応する変換比率を変換比率格納手段３４０から検索して取得する。そして、逆変換出力手段３７０は、計算処理装置４０−１から受け取った計算結果６１０−１における将来価値の予測値に、計算処理装置４０−１から受け取ったパラメータ識別情報に対応する変換比率の逆数を乗じることにより、ポートフォリオにおける実際の金融資産の金額に基づく将来価値の予測値である計算結果６２０を生成し、入力端末２０に対して出力する。
【００３６】
具体的には、変換比率検索手段３６０は、計算結果６１０−１におけるパラメータ識別情報である１に基づいて、当該パラメータ識別情報に対応する変換比率である１／７００００００、１／１００００００、１／１００００００、１／３００００００、及び１／１０００００００を変換比率格納手段３４０から検索して取得する。そして、逆変換出力手段３７０は、計算結果６１０−１の各金融資産における将来価値の予測値である１．１１７２９２、１．１７７２６８、１．２２２３４５、１．０６０４１５、及び１．４２２９０７に、当該変換比率の逆数のそれぞれを乗じることにより、将来価値の予測値である７，８２１，０４４、１，１７７，２６８、１，２２２，３４５、３，１８１，２４５、及び１４，２２９，０７０を生成する。
【００３７】
同様に、逆変換出力手段３７０は、計算処理装置４０−２〜Ｎのそれぞれから受け取った計算結果６１０−２〜Ｎのそれぞれにおける将来価値の予測値に、計算処理装置４０−２〜Ｎのそれぞれから受け取ったパラメータ識別情報に対応する変換比率の逆数を乗じることにより、ポートフォリオにおける実際の金融資産の金額に基づく将来価値の予測値である計算結果６２０を、乱数の初期値毎に生成する。
【００３８】
これにより、分散コンピューティングシステム１０は、金融資産の金額及び金融資産の金額に基づく将来価値の予測値を、通信路の傍受者及び計算処理装置４０−１〜Ｎの管理者等から秘匿すると共に、ポートフォリオにおける実際の金融資産の金額に基づく将来価値の予測値を生成することができる。
【００３９】
図７は、分散コンピューティングシステム１０の動作フローの一例を示す。入力手段３００は、線形パラメータを含む少なくとも一のパラメータである入力パラメータを入力端末２０を用いて利用者に入力させる（Ｓ７００）。そして、パラメータ格納手段３１０は、利用者により入力手段３００に対して入力された入力パラメータ及び予め定められた他のパラメータの組をパラメータセットとして、当該パラメータを識別するパラメータ識別情報に対応付けて格納する（Ｓ７０５）。
【００４０】
一方、情報処理装置群４５における各情報処理装置、例えば計算処理装置４０−１は、単位時間当たりに処理可能な最大計算処理量に対する所定の単位時間に行うべき計算処理量を示す計算余力割合を計算要求装置３０に対して出力する（Ｓ７１０）。これを受けて、計算余力保持装置選択手段３２０は、計算余力割合が基準割合以下の情報処理装置である計算余力保持装置を複数選択する（Ｓ７２０）。例えば、計算余力保持装置選択手段３２０は、計算余力保持装置として計算処理装置４０−１〜Ｎを選択する。
【００４１】
ここで、Ｓ７２０に示した計算余力保持装置を選択する処理は、計算要求装置３０による処理に限定されない。例えば、分散コンピューティングシステム１０の管理者は、計算余力割合が基準割合以下の情報処理装置を、各情報処理装置の利用者から聞き取り調査することにより選択し、計算要求装置３０のパラメータ送信手段３５０に設定してもよい。
【００４２】
変換手段３３０は、パラメータ格納手段３１０に格納された複数のパラメータセットのそれぞれについて、当該パラメータセットにおける線形パラメータを、計算処理装置４０−１〜Ｎから秘匿するべく変換パラメータに変換する（Ｓ７３０）。そして、変換比率格納手段３４０は、複数のパラメータセットのそれぞれについて、線形パラメータに対する変換パラメータの比率である変換比率を算出し、パラメータ識別情報に対応付けて格納する（Ｓ７４０）。
【００４３】
パラメータ送信手段３５０は、変換手段３３０により変換されたパラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて、計算処理装置４０−１〜Ｎのそれぞれに送信する（Ｓ７４５）。これにより、パラメータ送信手段３５０は、計算処理装置４０−１〜Ｎのそれぞれにおいて複数の部分計算のそれぞれを行わせる。
【００４４】
これに加えて、パラメータ送信手段３５０は、それぞれが互いに異なる乱数の初期値を含む複数のパラメータセットを、一の計算処理装置、例えば、計算処理装置４０−１に送信してもよい。この場合、パラメータ送信手段３５０は、計算処理装置４０−１において複数の部分計算を行わせることができる。一例として、計算要求装置３０は、１００００個の乱数の初期値のそれぞれに対して部分計算の結果を生成するべく、１００台の計算処理装置のそれぞれに、それぞれが互いに異なる乱数の初期値を含む１００のパラメータセットを送信してもよい。
【００４５】
計算処理装置４０−１における計算手段４００は、パラメータセットを計算要求装置３０から受信すると（Ｓ７５０：ＹＥＳ）、当該パラメータセットに基づいて計算処理装置４０−２〜Ｎと並行して部分計算を行う（Ｓ７６０）。そして、結果送信手段４１０は、計算手段４００の計算結果をパラメータ識別情報に対応付けて計算要求装置３０に送る（Ｓ７７０）。
【００４６】
部分計算の例を説明する。計算手段４００は、パラメータセットとして、複数の金融資産のそれぞれにおける当該金融資産の各付け、数量、及び満期を含む金融資産情報と、当該複数の金融資産における価格変動の相関を示す相関情報と、乱数の初期値とを受信する。そして、計算手段４００は、予め定められた確率分布である標準正規分布を、相関情報に基づいて、当該複数の金融資産における価格変動の確率モデルを示す相関正規分布に変換する。
【００４７】
計算手段４００は、乱数の初期値に応じて生成される乱数に基づいて、当該相関正規分布に従って発生する乱数を金融資産毎に生成する。そして、計算手段４００は、複数の金融資産のそれぞれに対応する乱数に基づいて、当該金融資産の将来価値の予測値を生成する。より具体的には、金融資産が債券である場合、計算手段４００は、格付け情報に応じて定まるイールドカーブに更に基づいて金融資産の将来価値の予測値を生成してもよい。一例として、計算手段４００は、信用リスク計算であるＣｒｅｄｉｔＭｅｔｒｉｃｓ（登録商標）技術を用いた計算を行ってもよい。
計算処理装置４０−２〜Ｎのそれぞれにおける動作フローは、計算処理装置４０−１と略同一であるので説明を省略する。
【００４８】
計算要求装置３０が、部分計算の計算結果を計算処理装置４０−１〜Ｎのそれぞれから受信した場合に（Ｓ７８０：ＹＥＳ）、変換比率検索手段３６０は、計算結果の送信元である計算処理装置４０−１〜Ｎのそれぞれについて、当該計算処理装置から受け取ったパラメータ識別情報に対応する変換比率を変換比率格納手段３４０から検索して取得する（Ｓ７９０）。
【００４９】
そして、逆変換出力手段３７０は、計算処理装置４０−１〜Ｎから受け取った部分計算の計算結果のそれぞれに、計算処理装置４０−１〜Ｎから受け取ったパラメータ識別情報に対応する変換比率の逆数を乗じることにより部分計算の結果を生成し、部分計算の結果の組に基づく金融リスクを計算処理の結果として出力する（Ｓ７９５）。
【００５０】
一例として、逆変換出力手段３７０は、部分計算の結果である金融資産の将来価値の予測値に基づいて、ポートフォリオの金融リスクを計算してもよい。例えば、各部分計算の結果は、互いに異なる複数の乱数の初期値に基づいて算出されている。これらを用いて、逆変換出力手段３７０は、互い異なる当該複数の部分計算の結果に基づくモンテカルロシミュレーションにより、所定のポートフォリオ全体における価値変動の平均値、分散値、標準偏差値、確率分布、及びＶａＲ（バリュー・アット・リスク）値を計算してもよい。
【００５１】
以上、本図で示すように、分散コンピューティングシステム１０によれば、利用者は、計算処理装置４０−１〜Ｎのそれぞれにおける計算資源を有効に利用して、機密性の高い計算を行うことができる。ここで、本図に示す各処理段階は、計算要求装置３０又は計算処理装置４０−１〜Ｎ等の装置による処理に限定されず、管理者等による動作であってもよい。例えば、イントラネットの管理者が、分散コンピューティングシステム１０中の各装置を操作することにより、当該イントラネットに接続されている複数の情報処理装置を分散コンピューティングシステム１０として機能させる分散コンピューティング提供サービスも、本発明の権利範囲となる。
【００５２】
図８（ａ）は、変形例におけるパラメータセット６００−１の内容の一例を示す。図８（ｂ）は、変形例におけるパラメータセット６００−２の内容の一例を示す。本図を用いて、変換手段３３０による変換処理の変形例を説明する。なお、本変形例における各ブロックの機能及び動作フローは、図１及び図７において説明した実施形態における各ブロックの機能および動作フローと略同一であるので、相違点を説明する。
【００５３】
本例の前提として、パラメータ格納手段３１０が格納している内容は、図２に示す情報と略同一である。即ち、パラメータ格納手段３１０は、パラメータセットを構成する複数の金融資産情報として、資産識別情報が１である金融資産が７，０００，０００円、資産識別情報が２である金融資産が１，０００，０００円、資産識別情報が３である金融資産が１，０００，０００円、資産識別情報が４である金融資産が３，０００，０００円、及び資産識別情報が５である金融資産が１０，０００，０００円である旨の情報を格納している。
【００５４】
図８（ａ）に示すように、変換手段３３０は、線形パラメータである金融資産の金額を、線形パラメータと桁数が同一の乱数である変換パラメータに変換してもよい。例えば、変換手段３３０は、資産識別情報が１である金融資産の金額７，０００，０００円を、７，０００，０００円と桁数が同一の乱数である４，０００，０００円に変換してもよい。
【００５５】
また、変換手段３３０は、同一の計算処理装置に送信する複数の線形パラメータのそれぞれを、総和が当該複数の線形パラメータの総和と略同一である複数の変換パラメータに変換してもよい。例えば、変換手段３３０は、図２に示す金融資産の金額のそれぞれを、総和が当該金融資産の金額の総和である２２，０００，０００円と略同一である複数の変換パラメータ、例えば、４，０００，０００円、２，０００，０００円、３，０００，０００円、２，０００，０００円、及び１１，０００，０００円に変換してもよい。
これにより、通信の傍受者等は、傍受した金融資産の金額の総和が、実際の金融資産の総和と略同一であるので、傍受したデータの真偽を区別することが困難となる。例えば、ポートフォリオの所有者が上場企業等であって、当該ポートフォリオの所有者における総資産額が公開されている場合であっても、当該ポートフォリオにおける金融資産の内訳を適切に秘匿することができる。
【００５６】
更に、変換手段３３０は、パラメータセットにおける一の線形パラメータ及び他の線形パラメータが互いに異なる場合に、当該一の線形パラメータ及び当該他の線形パラメータのそれぞれを同一の変換パラメータに変換してもよい。例えば、変換手段３３０は、資産識別情報が２である金融資産の金額１，０００，０００円及び資産識別情報が４である金融資産の金額３，０００，０００円のそれぞれを、互いに同一の変換パラメータである２，０００，０００円に変換してもよい。
【００５７】
更に、変換手段３３０は、パラメータセットにおける一の線形パラメータ及び他の線形パラメータが同一の場合に、当該一の線形パラメータ及び当該他の線形パラメータのそれぞれを、互いに異なる一の線形パラメータ及び他の線形パラメータのそれぞれに変換してもよい。例えば、変換手段３３０は、資産識別情報が２である金融資産の金額１，０００，０００円及び資産識別情報が３である金融資産の金額１，０００，０００円のそれぞれを、互いに異なる２，０００，０００円及び３，０００，０００円に変更してもよい。
これにより、所定の複数の金融資産について、ポートフォリオにおける所有数量が同じか否かを示す情報を適切に秘匿することができる。
【００５８】
また、図８（ｂ）に示すように、変換手段３３０は、資産識別情報が１の金融資産における線形パラメータである数量を、パラメータセット６００−１において変換パラメータである４，０００，０００円に変換する一方、パラメータセット６００−２において変換パラメータである５，０００，０００円に変換する。このように、変換手段３３０は、複数のパラメータセットのそれぞれにおいて、当該パラメータセットの線形パラメータを、当該パラメータセットにおける乱数の初期値に応じて異なる値である変形パラメータに変換してもよい。
これにより、計算処理装置４０−１〜Ｎの管理者は、乱数の初期値に応じて異なるポートフォリオを受信するので、計算処理又は部分計算の目的を推測することが困難となる。例えば、同一のポートフォリオについて複数の乱数の初期値を用いた金融リスクの生成という計算の目的を秘匿することができる。
【００５９】
また、パラメータセット６００−１及びパラメータセット６００−２のそれぞれにおける金融資産の金額は、パラメータセット６００−１及びパラメータセット６００−２の送信先の計算処理装置に予め対応付けられていてもよい。即ち、変換手段３３０は、複数のパラメータセットのそれぞれにおいて、当該パラメータセットの線形パラメータを、線形パラメータの値又は乱数の初期値に関わらず、当該パラメータセットの送信先である計算処理装置に予め対応付けられた値である変換パラメータに変換してもよい。
【００６０】
以上、本図の変形例によると、変換手段３３０は、通信の傍受者等による変換パラメータ及び線形パラメータの区別を困難にすることができる。
【００６１】
図９は、計算要求装置３０のハードウェア構成の一例を示す。計算要求装置３０は、ホストコントローラ１０８２により相互に接続されるＣＰＵ１０００、ＲＡＭ１０２０、グラフィックコントローラ１０７５、及び表示装置１０８０を有するＣＰＵ周辺部と、入出力コントローラ１０８４によりホストコントローラ１０８２に接続される通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を有する入出力部と、入出力コントローラ１０８４に接続されるＲＯＭ１０１０、フレキシブルディスクドライブ１０５０、及び入出力チップ１０７０を有するレガシー入出力部とを備える。
【００６２】
ホストコントローラ１０８２は、ＲＡＭ１０２０と、高い転送レートでＲＡＭ１０２０をアクセスするＣＰＵ１０００及びグラフィックコントローラ１０７５とを接続する。ＣＰＵ１０００は、ＲＯＭ１０１０及びＲＡＭ１０２０に格納されたプログラムに基づいて動作し、各部の制御を行う。グラフィックコントローラ１０７５は、ＣＰＵ１０００等がＲＡＭ１０２０内に設けたフレームバッファ上に生成する画像データを取得し、表示装置１０８０上に表示させる。これに代えて、グラフィックコントローラ１０７５は、ＣＰＵ１０００等が生成する画像データを格納するフレームバッファを、内部に含んでもよい。
【００６３】
入出力コントローラ１０８４は、ホストコントローラ１０８２と、比較的高速な入出力装置である通信インターフェイス１０３０、ハードディスクドライブ１０４０、及びＣＤ−ＲＯＭドライブ１０６０を接続する。通信インターフェイス１０３０は、ネットワークを介して外部の装置、例えば入力端末２０及び情報処理装置群４５と通信する。ハードディスクドライブ１０４０は、計算要求装置３０が使用するプログラム及びデータを格納する。ＣＤ−ＲＯＭドライブ１０６０は、ＣＤ−ＲＯＭ１０９５からプログラム又はデータを読み取り、ＲＡＭ１０２０を介して入出力チップ１０７０に提供する。
【００６４】
また、入出力コントローラ１０８４には、ＲＯＭ１０１０と、フレキシブルディスクドライブ１０５０や入出力チップ１０７０等の比較的低速な入出力装置とが接続される。ＲＯＭ１０１０は、計算要求装置３０の起動時にＣＰＵ１０００が実行するブートプログラムや、計算要求装置３０のハードウェアに依存するプログラム等を格納する。フレキシブルディスクドライブ１０５０は、フレキシブルディスク１０９０からプログラム又はデータを読み取り、ＲＡＭ１０２０を介して入出力チップ１０７０に提供する。入出力チップ１０７０は、フレキシブルディスク１０９０や、例えばパラレルポート、シリアルポート、キーボードポート、マウスポート等を介して各種の入出力装置を接続する。
【００６５】
計算要求装置３０に提供されるプログラムは、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５、又はＩＣカード等の記録媒体に格納されて利用者によって提供される。プログラムは、入出力チップ１０７０及び／又は入出力コントローラ１０８４を介して、記録媒体から読み出され計算要求装置３０にインストールされて実行される。また、計算要求装置３０に提供されるプログラムは、記録媒体から読み出され、通信インターフェイス１０３０を介して計算処理装置４０−１〜Ｎにインストールされて実行されてもよい。
【００６６】
計算要求装置３０にインストールされて実行されるプログラムは、入力モジュールと、パラメータ格納モジュールと、計算余力保持装置選択モジュールと、変換モジュールと、変換比率格納モジュールと、パラメータ送信モジュールと、変換比率検索モジュールと、逆変換出力モジュールとを含む。また、計算処理装置４０−１〜Ｎにインストールされて実行されるプログラムは、計算モジュールと、結果送信モジュールとを含む。各モジュールが計算要求装置３０及び計算処理装置４０−１〜Ｎに働きかけて行わせる動作は、図１から図８において説明した計算要求装置３０及び計算処理装置４０−１〜Ｎにおける、対応する部材の動作と同一であるから、説明を省略する。
【００６７】
以上に示したプログラム又はモジュールは、外部の記憶媒体に格納されてもよい。記憶媒体としては、フレキシブルディスク１０９０、ＣＤ−ＲＯＭ１０９５の他に、ＤＶＤやＰＤ等の光学記録媒体、ＭＤ等の光磁気記録媒体、テープ媒体、ＩＣカード等の半導体メモリ等を用いることができる。また、専用通信ネットワークやインターネットに接続されたサーバシステムに設けたハードディスク又はＲＡＭ等の記憶装置を記録媒体として使用し、ネットワークを介してプログラムを計算要求装置３０に提供してもよい。
【００６８】
以上の説明から明らかなように、分散コンピューティングシステム１０は、部分計算に必要なパラメータセットのうち当該部分計算の結果と線形性を有する線形パラメータを、変換パラメータに変換する。これにより、分散コンピューティングシステム１０は、線形パラメータを、通信回線の傍受者及び計算処理装置４０−１〜Ｎの管理者等から適切に秘匿することができると共に、部分計算の結果が傍受されることを防ぐこともできる。
更に、分散コンピューティングシステム１０は、本来必要な部分計算のみを計算処理装置４０−１〜Ｎに行わせるので、従来の秘密計算と比較して計算処理装置４０−１〜Ｎの計算能力を有効に利用することができる。
【００６９】
また、本実施形態に示す方法は、線形パラメータを用いる多様な計算処理に応用が可能である。例えば、分散コンピューティングシステム１０は、ポートフォリオの価値計算のみならず、住宅ローンの返済額又は借り入れ可能額を算出してもよいし、年金の積立額又は受給額等を算出してもよい。
【００７０】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、特許請求の範囲の記載から明らかである。
【００７１】
以上の実施形態によると、以下の各項目に示す分散コンピューティングシステム、分散コンピューティングシステム提供方法、制御方法、プログラム、及び記録媒体が実現される。
【００７２】
（項目１）  予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、前記複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムであって、前記計算要求装置は、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信する送信手段と、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段とを有し、前記複数の計算処理装置のそれぞれは、前記計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算手段と、当該パラメータセットを識別する前記パラメータ識別情報に対応付けて前記計算手段の計算結果を前記計算要求装置に送信する結果送信手段とを有し、前記計算要求装置は、更に、前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した前記部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段とを有する分散コンピューティングシステム。
（項目２）  前記計算処理は、複数の金融資産により構成されるポートフォリオについて、当該ポートフォリオの金融リスクを算出する処理であり、前記パラメータ格納手段は、当該ポートフォリオに含まれる金融資産の金額を示す金融資産情報及び乱数の初期値を含み、かつ前記乱数の初期値が互いに異なる複数のパラメータセットを格納し、前記変換手段は、前記複数のパラメータセットのそれぞれについて、前記線形パラメータである当該金融資産の金額を、前記複数の計算処理装置から秘匿するべく所定の金額を示す変換パラメータに変換し、前記計算手段は、他の計算処理装置と並行して行う前記部分計算として、金融資産が前記所定の金額である場合の将来価値の予測値を計算し、前記逆変換出力手段は、前記複数の計算処理装置のそれぞれから受け取った前記金融資産の将来価値の予測値に、当該計算処理装置から受け取ったパラメータ識別情報に対応する変換比率の逆数を乗じることにより、金融資産の金額に基づく将来価値の予測値を前記部分計算の結果として生成し、前記複数の計算処理装置のそれぞれにおける部分計算の結果の組に基づく前記金融リスクを前記計算処理の結果として出力する項目１記載の分散コンピューティングシステム。
【００７３】
（項目３）  前記パラメータ格納手段は、当該ポートフォリオに含まれる金融資産の格付け及び当該金融資産の満期を更に含む前記金融資産情報を格納し、前記計算手段は、当該金融資産の格付け及び当該金融資産の満期に更に基づいて、金融資産が前記所定の金額である場合の将来価値の予測値を計算し、前記逆変換出力手段は、当該金融資産の格付け及び当該金融資産の満期に基づく前記金融リスクを前記計算処理の結果として出力する項目２記載の分散コンピューティングシステム。
（項目４）  前記パラメータ格納手段は、前記ポートフォリオを構成する互いに異なる複数の金融資産のそれぞれにおける前記金融資産情報と、前記複数の金融資産における価格変動の相関を示す相関情報と、前記乱数の初期値とによりそれぞれ構成され、少なくとも前記乱数の初期値が互いに異なる複数のパラメータセットを格納し、前記計算手段は、他の計算処理装置と並行して行う前記部分計算として、前記ポートフォリオを構成する各金融資産の将来価値の予測値を、前記乱数の初期値に応じて生成される乱数及び前記相関情報に基づいて計算する項目３記載の分散コンピューティングシステム。
（項目５）  前記変換手段は、前記複数のパラメータセットのそれぞれにおいて、当該パラメータセットの前記線形パラメータである前記金融資産の数量を、当該金融資産の取引単位量である前記変換パラメータに変換する項目２記載の分散コンピューティングシステム。
【００７４】
（項目６）  前記変換手段は、前記複数のパラメータセットのそれぞれにおいて、当該パラメータセットの線形パラメータを、当該パラメータセットにおける前記乱数の初期値に応じて異なる変換パラメータに変換する項目２記載の分散コンピューティングシステム。
（項目７）  前記変換手段は、前記複数のパラメータセットのそれぞれにおける前記線形パラメータを、互いに同一の値に予め定められた変換パラメータに変換する項目１記載の分散コンピューティングシステム。
（項目８）  前記変換手段は、前記線形パラメータを乱数である変換パラメータに変換する項目１記載の分散コンピューティングシステム。
（項目９）  前記変換手段は、前記線形パラメータを、当該線形パラメータと桁数が同一の乱数である変換パラメータに変換する項目８記載の分散コンピューティングシステム。
（項目１０）  前記パラメータ格納手段は、前記複数のパラメータセットのそれぞれとして、複数の前記線形パラメータを含むパラメータセットを格納し、前記変換手段は、同一の計算処理装置に送信する複数の線形パラメータのそれぞれを、総和が前記複数の線形パラメータの総和と略同一である複数の変換パラメータのそれぞれに変換する項目１記載の分散コンピューティングシステム。
（項目１１）  前記パラメータ格納手段は、前記複数のパラメータセットのそれぞれとして、複数の前記線形パラメータを含むパラメータセットを格納し、前記変換手段は、当該パラメータセットにおける一の前記線形パラメータ及び他の前記線形パラメータが互いに異なる場合に、前記一の線形パラメータ及び前記他の線形パラメータのそれぞれを、同一の変換パラメータに変換する項目１記載の分散コンピューティングシステム。
【００７５】
（項目１２）  前記パラメータ格納手段は、前記複数のパラメータセットのそれぞれとして、複数の前記線形パラメータを含むパラメータセットを格納し、前記変換手段は、当該パラメータセットにおける一の前記線形パラメータ及び他の前記線形パラメータが同一の場合に、前記一の線形パラメータ及び前記他の線形パラメータのそれぞれを、互いに異なる一の前記変換パラメータ及び他の前記変換パラメータのそれぞれに変換する項目１記載の分散コンピューティングシステム。
（項目１３）  前記変換手段は、前記複数のパラメータセットのそれぞれにおいて、当該パラメータセットの線形パラメータを、当該パラメータセットの送信先である計算処理装置に予め対応付けられた値である変換パラメータに変換する項目１記載の分散コンピューティングシステム。
（項目１４）  前記分散コンピューティングシステムは、利用者からの入力に応じて前記計算処理のサービスを行う計算サービスシステムであり、前記計算要求装置は、前記パラメータセットのうち前記線形パラメータを含む少なくとも一のパラメータである入力パラメータを前記利用者に入力させる入力手段を更に備え、前記パラメータ格納手段は、前記入力パラメータ及び予め定められた他のパラメータを、前記パラメータセットとして格納し、前記逆変換出力手段は、前記計算処理の結果を前記利用者に対して出力する項目１記載の分散コンピューティングシステム。
【００７６】
（項目１５）  複数の計算処理装置のそれぞれに、予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる計算要求装置であって、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信することにより、前記複数の計算処理装置のそれぞれにおいて前記複数の部分計算のそれぞれを行わせる送信手段と、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段と、前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段とを備える計算要求装置。
【００７７】
（項目１６）  複数の情報処理装置のそれぞれに予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる分散コンピューティング提供方法であって、単位時間当たりに処理可能な最大計算処理量に対する所定の単位時間に行うべき計算処理量が予め定められた基準割合以下の情報処理装置である計算余力保持装置を複数選択する計算余力保持装置選択段階と、予め定められた一の前記情報処理装置である計算要求装置において、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納させるパラメータ格納段階と、前記計算要求装置において、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算余力保持装置から秘匿するべく変換パラメータに変換させる変換段階と、前記計算要求装置において、前記変換段階において変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算余力保持装置のそれぞれに送信させる送信段階と、前記計算要求装置において、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けてメモリに格納させる変換比率格納段階と、前記複数の計算余力保持装置のそれぞれにおいて、前記計算要求装置から取得させたパラメータセットに基づいて他の計算余力保持装置と並行して部分計算を行わせる計算段階と、前記計算要求装置において、前記複数の計算余力保持装置のそれぞれから受け取らせた前記パラメータ識別情報に対応する変換比率を前記メモリから検索させて取得させる変換比率検索段階と、前記計算要求装置において、前記複数の計算余力保持装置のそれぞれから受け取らせた計算結果に、当該計算余力保持装置から受け取らせた前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成させ、生成させた部分計算の結果の組を前記計算処理の結果として出力させる逆変換出力段階とを備える分散コンピューティング提供方法。
【００７８】
（項目１７）  予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、前記複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムを制御する制御方法であって、前記計算要求装置が、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納段階と、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換段階と、前記変換段階において変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信する送信段階と、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納段階と、前記複数の計算処理装置のそれぞれが、前記計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算段階と、当該パラメータセットを識別する前記パラメータ識別情報に対応付けて前記計算段階における計算結果を前記計算要求装置に送信する結果送信段階と、前記計算要求装置が、更に、前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納段階において格納されたデータから検索して取得する変換比率検索段階と、前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力段階とを備える制御方法。
（項目１８）  複数の計算処理装置のそれぞれに、予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる計算要求装置を制御する制御方法であって、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納段階と、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換段階と、前記変換段階において変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信することにより、前記複数の計算処理装置のそれぞれにおいて前記複数の部分計算のそれぞれを行わせる送信段階と、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納段階と、前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納段階において格納されたデータから検索して取得する変換比率検索段階と、前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力段階とを備える制御方法。
【００７９】
（項目１９）  予め定められた計算処理を構成する複数の部分計算をそれぞれ実行する複数の計算処理装置と、前記複数の計算処理装置に部分計算を要求する計算要求装置とを備える分散コンピューティングシステムを制御するプログラムであって、前記計算要求装置を、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信する送信手段と、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段として機能させ、前記複数の計算処理装置のそれぞれを、前記計算要求装置から取得したパラメータセットに基づいて他の計算処理装置と並行して部分計算を行う計算手段と、当該パラメータセットを識別する前記パラメータ識別情報に対応付けて前記計算手段の計算結果を前記計算要求装置に送信する結果送信手段として機能させ、前記計算要求装置を、更に、前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段として機能させるプログラム。
（項目２０）  複数の計算処理装置のそれぞれに、予め定められた計算処理を構成する複数の部分計算のそれぞれを実行させる計算要求装置を制御するプログラムであって、前記計算要求装置を、複数のパラメータによりそれぞれ構成され少なくとも１つのパラメータが互いに異なる複数のパラメータセットを格納するパラメータ格納手段と、前記複数のパラメータセットのそれぞれについて、当該パラメータセットにおける複数のパラメータのうち当該パラメータセットを用いた部分計算の結果と線形性を有する線形パラメータを、前記複数の計算処理装置から秘匿するべく変換パラメータに変換する変換手段と、前記変換手段により変換された前記パラメータセットのそれぞれを、当該パラメータセットを識別するパラメータ識別情報に対応付けて前記複数の計算処理装置のそれぞれに送信することにより、前記複数の計算処理装置のそれぞれにおいて前記複数の部分計算のそれぞれを行わせる送信手段と、前記複数のパラメータセットのそれぞれについて、前記線形パラメータに対する前記変換パラメータの比率である変換比率を、当該パラメータセットを識別するパラメータ識別情報に対応付けて格納する変換比率格納手段と、前記複数の計算処理装置のそれぞれについて、当該計算処理装置から受け取った前記パラメータ識別情報に対応する変換比率を前記変換比率格納手段から検索して取得する変換比率検索手段と、前記複数の計算処理装置のそれぞれから受け取った計算結果に、当該計算処理装置から受け取った前記パラメータ識別情報に対応する当該変換比率の逆数を乗じることにより部分計算の結果を生成し、生成した部分計算の結果の組を前記計算処理の結果として出力する逆変換出力手段として機能させるプログラム。
（項目２１）  項目１９又は項目２０に記載のプログラムを記録した記録媒体。
【図面の簡単な説明】
【００８０】
【図１】図１は、分散コンピューティングシステム１０の機能ブロック図を示す。
【図２】図２は、パラメータ格納手段３１０に格納される情報の一例を示す。
【図３】図３は、パラメータ送信手段３５０が計算処理装置４０−１に送信するパラメータセット６００−１の内容の一例を示す。
【図４】図４は、変換比率格納手段３４０に格納される情報の一例を示す。
【図５】図５は、計算処理装置４０−１が計算要求装置３０に送信する計算結果６１０−１の内容の一例を示す。
【図６】図６は、計算結果６２０の内容の一例を示す。
【図７】図７は、分散コンピューティングシステム１０の動作フローの一例を示す。
【図８】図８（ａ）は、変形例におけるパラメータセット６００−１の内容の一例を示す。  図８（ｂ）は、変形例におけるパラメータセット６００−２の内容の一例を示す。
【図９】図９は、計算要求装置３０のハードウェア構成の一例を示す。
【符号の説明】
【００８１】
１０  分散コンピューティングシステム
２０  入力端末
３０  計算要求装置
４０  計算処理装置
４５  情報処理装置群
３００  入力手段
３１０  パラメータ格納手段
３２０  計算余力保持装置選択手段
３３０  変換手段
３４０  変換比率格納手段
３５０  パラメータ送信手段
３６０  変換比率検索手段
３７０  逆変換出力手段
４００  計算手段
４１０  結果送信手段
６００  パラメータセット
６１０  計算結果
６２０  計算結果
【図１】
2005044204.tif 000003
【図２】
2005044204.tif 000004
【図３】
2005044204.tif 000005
【図４】
2005044204.tif 000006
【図５】
2005044204.tif 000007
【図６】
2005044204.tif 000008
【図７】
2005044204.tif 000009
【図８】
2005044204.tif 000010
【図９】
2005044204.tif 000011