"N個の秘密検索装置R1,...,RNで構成され、検索キーkmと属性値vmを含むM個の情報k1,v1,...,kM,vMがそれぞれ秘密分散された情報[k1],[v1],...,[kM],[vM]から、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km],[vm]を検索するセキュア検索システムであって、Mは2以上の整数、Nは3以上の整数、mは1以上M以下の整数、[]はカッコ内の情報が要素ごとに秘密分散された情報を示す記号、tは検索キーkmがとり得る値、qは検索キーkmが取り得る最大値よりも大きい整数、情報[k1],[v1],...,[kM],[vM]は検索キーkmに基づいてソートされた情報とし、秘密分散された乱数[r]を生成し、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目もしくはmrmodM番目に移動させ、移動後の情報を情報[k1’],[v1’],...,[kM’],[vM’]とするランダムスライド手段と、取得した値[t]と検索キー[km’]との大小比較を、t-k1’modqとkm’-k1’modqの大小比較によって行う要素探索手段と、前記要素探索手段の大小比較の結果に基づいて、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km’],[vm’]を検索する検索手段と、を備えるセキュア検索システム。請求項1記載のセキュア検索システムであって、N=3であり、前記ランダムスライド手段は、検索キー[km]にインデックス[m]を付加し、検索キー[km],[m]を生成するインデックス付加手段と、情報[km],[vm]を、秘密検索装置R1と秘密検索装置R2が乱数r12を生成して秘密計算によって乱数r12分スライドさせ、移動後の情報をさらに秘密検索装置R2と秘密検索装置R3が乱数r23を生成して秘密計算によって乱数r23分スライドさせ、移動後の情報をさらに秘密検索装置R3と秘密検索装置R1が乱数r31を生成して秘密計算によって乱数r31分スライドさせることで、r12r23r31を前記のrとしてm番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させる処理を行うスライド実行手段と、値[M-r]を秘密計算で求める比較用計算手段と、を有することを特徴とするセキュア検索システム。前記の値tを検索値として、検索キーk1’,...,kM’の中に検索値tと一致する検索キーがある場合には少なくとも1つの秘密分散された情報[km’],[vm’]を出力する請求項1または2記載のセキュア検索システムであって、前記ランダムスライド手段は、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させる手段であり、前記要素探索手段は、t=km’かを秘密計算で確認し、真ならば等しいとし、偽ならばkm’=k1’かを秘密計算で確認し、真ならばm≧M-rのときは検索値[t]が小さい、m<M-rのときは検索値[t]が大きいとし、偽ならばt-k1’modq>km’-k1’modqのときは検索値[t]が小さい、t-k1’modq<km’-k1’modqのときは検索値[t]が大きい、t-k1’modq=km’-k1’modqのときは等しいとすることを特徴とするセキュア検索システム。秘密分散された検索区間に該当する検索キーkm’を持つ情報[km’],[vm’]を検索する請求項1または2記載のセキュア検索システムであって、[a]は検索区間の下限、[b]は検索区間の上限、[ea]は下限に等号を含むかを示すビット、[eb]は上限に等号を含むかを示すビットとし、前記ランダムスライド手段は、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させる手段であり、前記要素探索手段は、m≧M-rまたはt-k1’modq>km’-k1’modqが真ならば値[t]が小さいとし、m<M-rかつt=km’が真ならば等しい、偽ならば値[t]が大きいとする第1大小比較手段と、m<M-rまたはt-k1’modq>km’-k1’modqが真ならば値[t]が大きいとし、m≧M-rかつt=km’が真ならば等しい、偽ならば値[t]が小さいとする第2大小比較手段と、を有し、前記検索手段は、下限に該当する情報[km’],[vm’]の順番mminを求める場合には、下限[a]を前記要素探索手段が取得する値[t]とし、ビット[ea]が等号を含むことを示すときは前記第2大小比較手段を用いた結果に従い、ビット[ea]が等号を含まないことを示すときは前記第1大小比較手段を用いた結果に従って下限に該当する情報[km’],[vm’]の順番mminを求め、上限に該当する情報[km’],[vm’]の順番mmaxを求める場合には、上限[b]を前記要素探索手段が取得する値[t]とし、ビット[eb]が等号を含むことを示すときは前記第1大小比較手段を用いた結果に従い、ビット[eb]が等号を含まないことを示すときは前記第2大小比較手段を用いた結果に従って上限に該当する情報[km’],[vm’]の順番mmaxを求め、mmin<mmaxならば、mmin番目からmmax番目までの情報[km’],[vm’]を出力し、mmin>mmaxならば、mmax番目からM番目までの情報[km’],[vm’]と1番目からmmax番目までの情報[km’],[vm’]を出力することを特徴とするセキュア検索システム。検索キーkmと属性値vmを含むM個の情報k1,v1,...,kM,vMが秘密分散された情報[k1],[v1],...,[kM],[vM]から、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km],[vm]を検索するN個の秘密検索装置で構成されるセキュア検索システムの中の秘密検索装置であって、Mは2以上の整数、Nは3以上の整数、mは1以上M以下の整数、[]はカッコ内の情報が要素ごとに秘密分散された情報を示す記号、tは検索キーkmがとり得る値、qは検索キーkmが取り得る最大値よりも大きい整数、情報[k1],[v1],...,[kM],[vM]は検索キーkmに基づいてソートされた情報とし、秘密分散された乱数[r]を生成し、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目もしくはmrmodM番目に移動させ、移動後の情報を情報[k1’],[v1’],...,[kM’],[vM’]とするためのランダムスライド部と、取得した値[t]と検索キー[km’]との大小比較を、t-k1’modqとkm’-k1’modqの大小比較によって行うための要素探索部と、前記要素探索部の大小比較の結果に基づいて、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km’],[vm’]を検索する検索部と、を備える秘密検索装置。N個の秘密検索装置R1,...,RNを用いて、検索キーkmと属性値vmを含むM個の情報k1,v1,...,kM,vMが秘密分散された情報[k1],[v1],...,[kM],[vM]から、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km],[vm]を検索するセキュア検索方法であって、Mは2以上の整数、Nは3以上の整数、mは1以上M以下の整数、[]はカッコ内の情報が要素ごとに秘密分散された情報を示す記号、tは検索キーkmがとり得る値、qは検索キーkmが取り得る最大値よりも大きい整数、情報[k1],[v1],...,[kM],[vM]は検索キーkmに基づいてソートされた情報とし、秘密分散された乱数[r]を生成し、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目もしくはmrmodM番目に移動させ、移動後の情報を情報[k1’],[v1’],...,[kM’],[vM’]とするランダムスライドステップと、取得した値[t]と検索キー[km’]との大小比較を、t-k1’modqとkm’-k1’modqの大小比較によって行う要素探索ステップと、前記要素探索ステップの大小比較の結果に基づいて、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km’],[vm’]を検索する検索ステップと、を有するセキュア検索方法。請求項6記載のセキュア検索方法であって、N=3であり、前記ランダムスライドステップは、検索キー[km]にインデックス[m]を付加し、検索キー[km],[m]を生成するインデックス付加サブステップと、情報[km],[vm]を、秘密検索装置R1と秘密検索装置R2が乱数r12を生成して秘密計算によって乱数r12分スライドさせ、移動後の情報をさらに秘密検索装置R2と秘密検索装置R3が乱数r23を生成して秘密計算によって乱数r23分スライドさせ、移動後の情報をさらに秘密検索装置R3と秘密検索装置R1が乱数r31を生成して秘密計算によって乱数r31分スライドさせることで、r12r23r31を前記のrとしてm番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させる処理を行うスライド実行サブステップと、値[M-r]を秘密計算で求める比較用計算サブステップと、を有することを特徴とするセキュア検索方法。前記の値tを検索値として、検索キーk1’,...,kM’の中に検索値tと一致する検索キーがある場合には少なくとも1つの秘密分散された情報[km’],[vm’]を出力する請求項6または7記載のセキュア検索方法であって、前記ランダムスライドステップは、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させるステップであり、前記要素探索ステップは、t=km’かを秘密計算で確認し、真ならば等しいとし、偽ならばkm’=k1’かを秘密計算で確認し、真ならばm≧M-rのときは検索値[t]が小さい、m<M-rのときは検索値[t]が大きいとし、偽ならばt-k1’modq>km’-k1’modqのときは検索値[t]が小さい、t-k1’modq<km’-k1’modqのときは検索値[t]が大きい、t-k1’modq=km’-k1’modqのときは等しいとすることを特徴とするセキュア検索方法。秘密分散された検索区間に該当する検索キーkm’を持つ情報[km’],[vm’]を検索する請求項6または7記載のセキュア検索方法であって、[a]は検索区間の下限、[b]は検索区間の上限、[ea]は下限に等号を含むかを示すビット、[eb]は上限に等号を含むかを示すビットとし、前記ランダムスライドステップは、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させるステップであり、前記要素探索ステップは、m≧M-rまたはt-k1’modq>km’-k1’modqが真ならば値[t]が小さいとし、m<M-rかつt=km’が真ならば等しい、偽ならば値[t]が大きいとする第1大小比較サブステップと、m<M-rまたはt-k1’modq>km’-k1’modqが真ならば値[t]が大きいとし、m≧M-rかつt=km’が真ならば等しい、偽ならば値[t]が小さいとする第2大小比較サブステップと、を有し、前記検索ステップは、下限に該当する情報[km’],[vm’]の順番mminを求める場合には、下限[a]を前記要素探索ステップが取得する値[t]とし、ビット[ea]が等号を含むことを示すときは前記第2大小比較サブステップを用いた結果に従い、ビット[ea]が等号を含まないことを示すときは前記第1大小比較サブステップを用いた結果に従って下限に該当する情報[km’],[vm’]の順番mminを求め、上限に該当する情報[km’],[vm’]の順番mmaxを求める場合には、上限[b]を前記要素探索ステップが取得する値[t]とし、ビット[eb]が等号を含むことを示すときは前記第1大小比較サブステップを用いた結果に従い、ビット[eb]が等号を含まないことを示すときは前記第2大小比較サブステップを用いた結果に従って上限に該当する情報[km’],[vm’]の順番mmaxを求め、mmin<mmaxならば、mmin番目からmmax番目までの情報[km’],[vm’]を出力し、mmin>mmaxならば、mmax番目からM番目までの情報[km’],[vm’]と1番目からmmax番目までの情報[km’],[vm’]を出力することを特徴とするセキュア検索方法。請求項1から4のいずれかに記載のセキュア検索システムの各秘密検索装置としてコンピュータを機能させるためのセキュア検索プログラム。従来技術では、1秘密計算で検索キー検索対象の情報を全てスキャンして検索結果を求める方法、2検索キーの大小比較を秘密計算で行うが大小比較結果は開示し二分探索を行う方法、の2つがある。しかしながら、1の方法は秘匿なしの通常の検索の計算量が対数時間であるのに対し、圧倒的に大きな線形時間を要することが問題である。2の方法は対数時間で検索を行うことができるが、大小比較結果を開示してしまうため検索キーの大小関係の情報が秘密計算の計算者に知られてしまうというセキュリティ上の欠点がある。また、他の従来技術として検索可能暗号を用いる方法もあるが、検索以外のデータ処理と組み合わせることができないという欠点がある。本発明は、検索キーの大小関係の情報を漏らすことなく、対数時間での検索を行う技術を提供することを目的とする。本発明のセキュア検索システムは、N個の秘密検索装置R1,...,RNで構成され、検索キーkmと属性値vmを含むM個の情報k1,v1,...,kM,vMがそれぞれ秘密分散された情報[k1],[v1],...,[kM],[vM]から、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km],[vm]を検索する。なお、情報[k1],[v1],...,[kM],[vM]は検索キーkmに基づいてソートされた情報である。ここで、Mは2以上の整数、Nは3以上の整数、mは1以上M以下の整数、[]はカッコ内の情報が要素ごとに秘密分散された情報を示す記号、tは検索キーkmがとり得る値、qは検索キーkmが取り得る最大値よりも大きい整数とする。例えば、pを検索キーkmが取り得る最大値よりも大きい素数とすると、qはp以上の整数とすればよい。セキュア検索システムは、ランダムスライド手段、要素探索手段、検索手段を備える。ランダムスライド手段は、秘密分散された乱数[r]を生成し、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目もしくはmrmodM番目に移動させ、移動後の情報を情報[k1’],[v1’],...,[kM’],[vM’]とする。例えば、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させ、移動後の情報[kr1],[vr1],...,[kM],[vM],[k1],[v1],...,[kr],[vr]を情報[k1’],[v1’],...,[kM’],[vM’]とすればよい。要素探索手段は、取得した値[t]と検索キー[km’]との大小比較を、t-k1’modqとkm’-k1’modqの大小比較によって行う。検索手段は、要素探索手段の大小比較の結果に基づいて、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkm’を持つ情報[km’],[vm’]を検索する。本発明のセキュア検索システムによれば、ソート済の検索キーを計算者の知らないランダム数分秘密にスライドさせることで、検索によりスライド後の状態でのどの検索キーがヒットしたかが計算者に分かっても、スライド前の検索キーとの対応はつかない。つまり、計算者は元のどの検索キーが検索にヒットしたのかが分からなくなるので、1回の検索では検索キーの大小関係に関する情報が漏れない。また、検索を複数回行った場合もランダムスライドなしの場合より漏れる情報は常に小さくなる。また検索機能の計算量は対数時間である。以下、本発明の実施の形態について、詳細に説明する。なお、同じ機能を有する構成部には同じ番号を付し、重複説明を省略する。図1に実施例1のセキュア検索システムの構成例を示す。図2に実施例1のセキュア検索システムの処理フローを示す。実施例1のセキュア検索システムは、N個の秘密検索装置101,...,10Nで構成され、検索キーkmと属性値vmを含むM個の情報k1,v1,...,kM,vMがそれぞれ秘密分散された情報[k1],[v1],...,[kM],[vM]から、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkmを持つ情報[km],[vm]を検索する。なお、情報[k1],[v1],...,[kM],[vM]は検索キーkmに基づいてソートされた情報である。ここで、Mは2以上の整数、Nは3以上の整数、mは1以上M以下の整数、[]はカッコ内の情報が要素ごとに秘密分散された情報を示す記号、tは検索キーkmがとり得る値、qは検索キーkmが取り得る最大値よりも大きい整数とする。例えば、pを検索キーkmが取り得る最大値よりも大きい素数とすると、qはp以上の整数とすればよい。秘密検索装置10nは、検索制御部300n、秘密分散装置100n、記録部190nを備える。秘密分散装置100nは、検索制御部300nの指示にしたがって実施例1の処理に必要な個々の秘密計算を行う。本発明の処理に必要な個々の秘密計算としては、秘密分散、復号、ランダム置換などがある。ただし、本発明は、これらの秘密計算を利用して効率よくソートを行うものであり、秘密計算自体に特徴がある発明ではない。そこで、秘密計算については、例を後述することとし、本発明のポイントを理解しやすくするためにここでの説明は省略する。なお、後述する秘密計算の方法は、1つの例であり、実施例1が利用できる秘密計算を限定するものではない。記録部190nは、秘密検索装置10nの処理に必要な情報を記録する構成部である。図1に示した選択手段105は後述する秘密計算では利用するが、利用する秘密計算によっては備えなくてもよい。なお、秘密計算での様々な処理は、後述の秘密計算の四則演算や秘密計算の論理演算を組み合わせればよい。例えば、x=yかを秘密計算で確認する場合には、従来技術として蓄積された論理回路の技術を用いれば、実現できる。例えば、xとyを2ビット展開した各ビットの排他的論理和の論理和の否定によって次のように確認してもよい。C=1-{xB[∨]yB∨∨x1[∨]y1}1ただし、[∨]は排他的論理和XORを示す記号、∨は論理和ORを示す記号、xbは2ビット展開したときのxの下からbビット目の値、ybは2ビット展開したときのyの下からbビット目の値、Bは2ビット展開したときのxとyの桁数とする。式1では、C=1ならばx=y真、C=0ならばx≠y偽である。また、式1の個々の演算は後述の秘密計算の例に示されているので、式1の演算は秘密計算で実行でき、秘密分散された[C]が求められる。したがって、確認後の分岐も秘密にするのであれば、[C]を用いた秘密計算をさらに組合せればよい。なお、後述する秘密計算は、数値の秘密分散、秘密分散された断片の復号、秘密分散された数値の四則計算、秘密分散されたビットごとの論理演算の基本的な計算方法を網羅して示している。したがって、従来技術として蓄積された論理回路の技術を用いれば、上述の等しいことを確認する方法のように、所望の演算を後述する秘密計算の方法の組合せで実行できる。複雑な論理回路になるので説明は省略するが、例えば大小比較などの論理回路も従来から知られている組合せ基本的には上位のビットからビットごとに比較していく構成の中からいずれかを選択すれば構成可能である。各秘密検索装置10nの検索制御部300nは、ランダムスライド部310n、要素探索部320n、検索部330nを備える。そして、セキュア検索システムのランダムスライド手段310図示していないはランダムスライド部3101,...,310Nで構成され、要素探索手段320図示していないは要素探索部3201,...,320Nで構成され、検索手段330図示していないは検索部3301,...,330Nで構成される。ランダムスライド手段310は、秘密分散された乱数[r]を生成し、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目もしくはmrmodM番目に移動させ、移動後の情報を情報[k1’],[v1’],...,[kM’],[vM’]とするS310。より具体的には、ランダムスライド部3101,...,310Nランダムスライド手段310は、秘密分散装置1001,...,100Nに乱数[r]を生成させ、m番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させ、移動後の情報[kr1],[vr1],...,[kM],[vM],[k1],[v1],...,[kr],[vr]を情報[k1’],[v1’],...,[kM’],[vM’]とすればよい。要素探索手段320は、取得した値[t]と検索キー[km’]との大小比較を、t-k1’modqとkm’-k1’modqの大小比較によって行うS320。より具体的には、要素探索部3201,...,320N要素探索手段320は、取得した値[t]と検索キー[km’]との大小比較を、秘密分散装置1001,...,100Nにt-k1’modqとkm’-k1’modqとを秘密計算で大小比較させる。検索手段330は、要素探索手段320の大小比較の結果に基づいて、秘密分散された検索値もしくは秘密分散された検索区間に該当する検索キーkm’を持つ情報[km’],[vm’]を検索するS330。なお、情報[km’],[vm’]は入力された情報[k1],[v1],...,[kM],[vM]を乱数rだけスライドしただけであり、検索キーkmと属性値vmの値は変更していない。したがって、検索値や検索区間に該当する検索キーkm’を持つ情報[km’],[vm’]を検索することは、検索値や検索区間に該当する検索キーkmを持つ情報[km],[vm]を検索することと等価である。実施例1のセキュア検索システムによれば、ソート済の検索キーを計算者の知らないランダム数分秘密にスライドさせることで、検索によりスライド後の状態でのどの検索キーがヒットしたかが計算者に分かっても、スライド前の検索キーとの対応はつかない。つまり、計算者は元のどの検索キーが検索にヒットしたのかが分からなくなるので、1回の検索では検索キーの大小関係に関する情報が漏れない。また、検索を複数回行った場合もランダムスライドなしの場合より漏れる情報は常に小さくなる。また検索機能の計算量は対数時間である。[変形例1]変形例1では、ランダムスライド手段310のより具体的な例について説明する。変形例1ではネットワーク1000に接続された3台N=3の秘密検索装置101,102,103で構成されたセキュア検索システムとする。セキュア検索システムの構成例は図1、処理フローは図2である。変形例1のセキュア検索システムの秘密検索装置10nの秘密分散装置100nと記録部190nは実施例1と同じであり、検索制御部300nについてもより具体的なだけである。したがって、実施例1との重複説明を避けるために説明は省略するが、実施例1と同様に要素探索手段320、検索手段330を備えている。変形例1のランダムスライド部310nは、インデックス付加部311n、スライド実行部312n、比較用計算部315nを有する。インデックス付加手段311図示していないはインデックス付加部3111,3112,3113で構成され、スライド実行手段312図示していないはスライド実行部3121,3122,3123で構成され、比較用計算手段315図示していないは比較用計算部3151,3152,3153で構成される。つまり、ランダムスライド手段310は、インデックス付加手段311、スライド実行手段312、比較用計算手段315を有する。インデックス付加手段311は、検索キー[km]にインデックス[m]を付加し、検索キー[km],[m]を生成するS311。インデックス[m]は後の処理では大小比較の対象となる。大小比較では、2ビット展開した状態の方が計算量を少なくできるので、2ビット展開して秘密分散しておけばよい。このように2ビット展開して秘密分散したことを明示する記号を[]bとすると、インデックス[m]bを付加すればよい。なお、後述の説明の中で特に2ビット展開であることを明示していない場合でも、2ビット展開としてもかまわない。スライド実行手段312は、乱数r12,r23,r31を生成する。そして、情報[km],[vm]を、秘密検索装置101と秘密検索装置102が秘密計算によって乱数r12分スライドさせ、移動後の情報をさらに秘密検索装置102と秘密検索装置103が秘密計算によって乱数r23分スライドさせ、移動後の情報をさらに秘密検索装置103と秘密検索装置101が秘密計算によって乱数r31分スライドさせるS312。このように処理することで、r12r23r31を乱数r=r12r23r31としてm番目の情報[km],[vm]を秘密計算によってm-rmodM番目に移動させることができる。より具体的には、スライド実行部3121,3122,3123スライド実行手段312は、秘密分散装置1001,1002に乱数r12を生成させ、秘密分散装置1002,1003に乱数r23を生成させ、秘密分散装置1003,1001に乱数r31を生成させる。ただし、乱数r12,r23,r31は0以上M-1以下の整数である。そして、スライド実行部3121,3122,3123スライド実行手段312は、情報[km],[vm]を、秘密分散装置1001と秘密分散装置1002に秘密計算によって乱数r12分スライドさせ、移動後の情報をさらに秘密分散装置1002と秘密分散装置1003に秘密計算によって乱数r23分スライドさせ、移動後の情報をさらに秘密分散装置1003と秘密分散装置1001に秘密計算によって乱数r31分スライドさせる。例えば、乱数rの断片をr12,r31,r12,r23,r31,r12として、記録部1901,1902,1903に分散して記録すれば、容易に乱数rを秘密分散できる。そして、2ビット展開して秘密分散した乱数[rmodM]bも求めておけば、後の大小比較に便利である。なお、乱数r12,r23,r31のそれぞれが0以上M-1以下の整数なので、[rmodM]bは、[r]とMとの大小比較と減算とを2回行う処理で求めることができる。比較用計算手段315は、値[M-r]を秘密計算で求めるS315。つまり、比較用計算部3151,3152,3153比較用計算手段315は、秘密分散装置1001,1002,1003に値[M-r]を秘密計算で求めさせる。なお、値[M-r]は後で大小比較に用いるので、2ビット展開した[M-r]bを求めておけばよい。[変形例2]変形例2では、要素探索手段320と検索手段330のより具体的な例について説明する。セキュア検索システムの構成例は図1、処理フローは図2である。変形例2のセキュア検索システムの秘密検索装置10nの秘密分散装置100nと記録部190nは実施例1と同じであり、検索制御部300nについてもより具体的なだけである。したがって、実施例1との重複説明を避けるために説明は省略するが、実施例1と同様にランダムスライド手段310を備えている。変形例2のセキュア検索システムは、値tを検索値として、検索キーk1’,...,kM’の中に検索値tと一致する検索キーがある場合には少なくとも1つの秘密分散された情報[km’],[vm’]を出力する。ステップS310が終了すると、検索手段330は、何番目の情報[km’],[vm’]と検索値[t]とを比較するのかを選択するS331。つまり、mの値を選択する。要素探索手段320は、t=km’かを秘密計算で確認する。そして、真t=km’ならば等しいとし、偽t≠km’ならばkm’=k1’かを秘密計算で確認する。そして、真km’=k1’ならばm≧M-rのときは検索値[t]が小さい、m<M-rのときは検索値[t]が大きいとし、偽km’≠k1’ならばt-k1’modq>km’-k1’modqのときは検索値[t]が小さい、t-k1’modq<km’-k1’modqのときは検索値[t]が大きい、t-k1’modq=km’-k1’modqのときは等しいとするS320。なお、mとM-rの大小関係の比較は、インデックス[m]と値[M-r]が2ビット展開されたインデックス[m]bと値[M-r]bであれば、容易に秘密計算で比較できる。検索手段330は、繰返し条件を満たすまで、ステップS331とS320を繰り返すS332。なお、繰返し条件は、検索に求められる条件から適宜決めればよい。例えば、検索値[t]と等しい検索キー[km’]を持つ情報[km’],[vm’]のいずれか1つを出力するのであれば、要素探索手段320が等しいと判断する検索キー[km’]が1つ見つかるまで繰り返せばよい。また、検索値[t]と等しい検索キー[km’]を持つ情報[km’],[vm’]すべてを出力するのであれば、すべての情報[km’],[vm’]について検索キー[km’]が検索値[t]と等しいかを確認できるまで繰り返す。なお、情報[km’],[vm’]はソートされた情報をスライドしたものなので、すべての検索キー[km’]と検索値[t]との比較が終了しない状態でも、比較していない情報[km’],[vm’]の中に検索値[t]と等しいものは残っていないことが分かる場合があることに注意されたい。ステップS332がYesの場合には、情報[km’],[vm’]を出力するS333。このように、実施例1で説明したステップS330は、例えば本変形例で説明したステップS331,S332,S333で構成すればよい。なお、変形例2のセキュア検索システムは、実施例1と組み合わせるだけでなく、変形例1と組み合わせてもよい。[変形例3]変形例3では、要素探索手段320と検索手段330の別のより具体的な例について説明する。セキュア検索システムの構成例は図1、処理フローは図3である。変形例3のセキュア検索システムの秘密検索装置10nの秘密分散装置100nと記録部190nは実施例1と同じであり、検索制御部300nについてもより具体的なだけである。したがって、実施例1との重複説明を避けるために説明は省略するが、実施例1と同様にランダムスライド手段310を備えている。変形例3のセキュア検索システムは、秘密分散された検索区間に該当する検索キーkm’を持つ情報[km’],[vm’]を検索する。ここで、[a]は検索区間の下限、[b]は検索区間の上限、[ea]は下限に等号を含むかを示すビット、[eb]は上限に等号を含むかを示すビットとする。変形例3では、要素探索部320nは、第1大小比較部321nと第2大小比較部322nを有する。第1大小比較手段321図示していないは第1大小比較部3211,...,321Nで構成され、第2大小比較手段322図示していないは第2大小比較部3221,...,322Nで構成される。つまり、要素探索手段320は、第1大小比較手段321と第2大小比較手段322を有する。ステップS310が終了すると、検索手段330は、検索値[t]として、上限[a]または下限[b]を設定するS335。次に、検索手段330は、何番目の情報[km’],[vm’]を比較するのかを選択するS331。つまり、mの値を選択する。そして、検索手段330は、下限に該当する情報[km’],[vm’]の順番mminを求める場合ステップS335で下限[a]が検索値[t]に設定された場合には、ビット[ea]が等号を含むことを示すときは第2大小比較手段322を選択し、ビット[ea]が等号を含まないことを示すときは第1大小比較手段321を選択する。また、上限に該当する情報[km’],[vm’]の順番mmaxを求める場合ステップS335で上限[b]が検索値[t]に設定された場合には、ビット[eb]が等号を含むことを示すときは第1大小比較手段321を選択し、ビット[eb]が等号を含まないことを示すときは第2大小比較手段322を選択するS336。ステップS336で第1大小比較手段321が選択された場合は、第1大小比較手段321は、秘密計算で次の処理を行う。m≧M-rまたはt-k1’modq>km’-k1’modqが真ならば値[t]が小さいとし、m<M-rかつt=km’が真ならば等しい、偽ならば値[t]が大きいとするS321。また、ステップS336で第2大小比較手段322が選択された場合は、第2大小比較手段322は、秘密計算で次の処理を行う。m<M-rまたはt-k1’modq>km’-k1’modqが真ならば値[t]が大きいとし、m≧M-rかつt=km’が真ならば等しい、偽ならば値[t]が小さいとするS322。なお、mとM-rの大小関係の比較は、インデックス[m]と値[M-r]が2ビット展開されたインデックス[m]bと値[M-r]bであれば、容易に秘密計算で比較できる。変形例3の場合、実施例1で説明したステップS320は、ステップS321とS322のいずれかによって実行される。検索手段330は、繰返し条件を満たすまでステップS331,S336,S320を繰返すS337。繰返し条件は、下限または上限に該当する情報[km’],[vm’]の順番が判別できるまでである。また、検索手段330は、上限と下限の両方を求めたかを確認し、Noの場合にはステップS335に戻り、Yesの場合にはステップS339に進むS338。検索手段330は、下限に該当する情報[km’],[vm’]の順番mminを求める場合ステップS335で下限[a]が検索値[t]に設定された場合には、ステップS321またはS322の結果を用いて下限に該当する情報[km’],[vm’]の順番mminを求める。また、上限に該当する情報[km’],[vm’]の順番mmaxを求める場合ステップS335で上限[b]が検索値[t]に設定された場合には、ステップS321またはS322の結果を用いて上限に該当する情報[km’],[vm’]の順番mmaxを求める。そして、検索手段330は、mmin<mmaxならば、mmin番目からmmax番目までの情報[km’],[vm’]を出力し、mmin>mmaxならば、mmax番目からM番目までの情報[km’],[vm’]と1番目からmmax番目までの情報[km’],[vm’]を出力するS339。なお、変形例3のセキュア検索システムは、実施例1と組み合わせるだけでなく、変形例1と組み合わせてもよい。また、検索値と同じ検索キーを持つ情報[km’],[vm’]を探すときは変形例2のセキュア検索システムとして動作し、検索区間に該当する情報[km’],[vm’]を探すときは変形例3のセキュア検索システムとして動作してもよい。変形例1から3のセキュア検索システムも、ソート済の検索キーを計算者の知らないランダム数分秘密にスライドさせることで、検索によりスライド後の状態でのどの検索キーがヒットしたかが計算者に分かっても、スライド前の検索キーとの対応はつかない。つまり、計算者は元のどの検索キーが検索にヒットしたのかが分からなくなるので、1回の検索では検索キーの大小関係に関する情報が漏れない。また、検索を複数回行った場合もランダムスライドなしの場合より漏れる情報は常に小さくなる。また検索機能の計算量は対数時間である。[秘密計算]上述の説明では、秘密計算については1つの方法に限定しないことを前提としており、具体例は示さなかった。以下の説明では、秘密検索装置101,...,10Nが実行するランダム置換とその他の秘密計算について説明する。なお、以下の秘密計算に関する説明は、1つの例でありこれに限定されるものではない。本発明のセキュア検索システムでは他の秘密計算を用いてもよい。ランダム置換1図4に本発明に利用できる秘密分散装置100nの機能構成例を詳しく示したセキュア検索システムを示す。図5にランダム置換の1つ目の処理フロー例を示す。この例では、セキュア検索システムは選択手段105も備える。ここで、A1,...,AKを各秘密検索装置10nが断片を分散して記録するK個の数値Kは2以上の整数、数値Akをk番目の数値kは1以上K以下の整数、aknを秘密検索装置10nが記録するk番目の断片とする。なお、数値A1,...,AKが、秘匿化したい数値群であって、例えば、ソートの対象となる数値群である。ソートの対象となる数値群としては、例えば、数値Akが各々の人の年収を示すような数値群が考えられる。選択手段105は、いずれかの秘密検索装置の内部に配置されてもよいし、単独の装置であってもよい。セキュア検索システムは、選択手段と断片置換手段と再分散手段を備える。また、秘密分散装置100nは、少なくとも断片置換部110nと再分散部120nと記録部190nを備える。記録部190nは断片a1n,...,aKnなどを記録する。また、記録部190nは、自身が記録している断片aknが数値Akの何番目の断片なのかに関する情報も記録する。選択手段105は、N未満の数の秘密検索装置10nを選択するS105。例えば、N個の断片のうちN’個を集めれば数値を復元できる秘密分散であれば、断片置換手段がN’個以上N未満の秘密検索装置を選べばよい。断片置換手段は、少なくとも断片置換部1101,...,110Nを含んで構成される。そして、選択手段105に選択された秘密検索装置10iただし、iは選択された秘密検索装置を示す番号の断片置換部110i間で{1,...,K}→{1,...,K}の全単射πを作成し、選択された秘密検索装置10iの記録部190iが記録する断片aπkiをk番目の断片にするS110。上記の全単射πは、1~Kを単にランダムに並べ替えることを前提としているが、本発明の場合は、m番目の情報[km],[vm]をm-rmodM番目またはmrmodM番目に移動させるような全単射πとすればよい。また、全単射πは選択された秘密検索装置10i間で生成してもよいし、選択された秘密検索装置10iのうちの1つの秘密検索装置が生成して、選択された秘密検索装置10i間で共有してもよい。再分散手段は、少なくとも再分散部1201,...,120Nを含んで構成される。再分散手段は、断片置換手段によって置換された数値Aπkに対応する断片aπkik番目に置換されているを用いて再分散化して新しい断片bk1,...,bkNを求め、数値Bkの断片とするS120。つまり、Aπk=Bkの関係が成り立つが、選ばれなかった秘密検索装置は全単射πを知らないので、Aπk=Bkであることを知らない。なお、各秘密検索装置10nの記録部190nは、断片bknを記録するだけでなく、自身が記録しているk番目の断片である断片bknが数値Bkの断片であるという情報も記録する。また、数値B1,...,BKを新しい数値A1,...,AKとし、選択手段で選択する秘密検索装置の組み合わせを変更すれば、この処理を繰り返すことができるS111,S112。本発明のセキュア検索システムによれば、限定された秘密検索装置間で断片をシャッフルする。したがって、選ばれなかった秘密検索装置は、全単射πを知らないので、数値A1,...,AKと数値B1,...,BKとの対応が分からない。つまり、特定の秘密検索装置からは数値A1,...,AKと数値B1,...,BKとの対応が分からない状態にしたいのであれば、その秘密検索装置を選択手段105で選ばないように、選択する秘密検索装置をあらかじめ定めればよい。また、選択手段105が選ぶ秘密検索装置を変更しながらこの処理を繰り返し、全ての秘密検索装置が選ばれなかったことがある状態にすれば、全ての秘密検索装置が数値A1,...,AKと対応つけることができない数値B1,...,BKを得ることができる。ランダム置換2次のランダム置換のためのセキュア検索システムの秘密分散装置100nを詳細に示した機能構成例も図4に示す。図6にランダム置換の2つ目の処理フロー例を示す。この例でも、セキュア検索システムは選択手段105も備える。ここで、A1,...,AKを各秘密検索装置10nが断片を分散して記録するK個の数値Kは2以上の整数、数値Akをk番目の数値kは1以上K以下の整数、aknを秘密検索装置10nが記録する数値Akの断片とする。本発明のセキュア検索システムは、選択手段105、初期情報分散手段、初期乗算手段、断片置換手段、再分散手段、確認分散手段、確認乗算手段、改ざん検出手段を備える。また、秘密分散装置100nは、初期情報分散部130n、初期乗算部140n、断片置換部110n、再分散部120n、確認分散部150n、確認乗算部160n、改ざん検出部170nを備える。記録部190nは断片a1n,...,aKnなどを記録する。また、記録部190nは、自身が記録している断片aknが数値Akの何番目の断片なのかに関する情報も記録する。選択手段105はランダム置換1と同じである。初期情報分散手段は、初期情報分散部1301,...,130Nで構成される。そして、選択手段105に選択された秘密検索装置10iの初期情報分散部130iは、秘密検索装置101,...,10Nのどれも知らないK個の数値P1,...,PKそれぞれの断片p1n,...,pKnを秘密計算によって求め、記録部190nに記録するS130。具体的には、選択手段105に選択された秘密検索装置から、2つ以上の秘密検索装置を選定する。そして、選定された秘密検索装置が作った値に基づいて、どの装置も知らない値の断片を作ればよい。例えば、2つの秘密検索装置10i,10jを選定しただし、i≠j、秘密検索装置10iが生成した数値の断片と、秘密検索装置10jが生成した数値の断片を分散して記録する。そして、その2つの数値の和を秘密計算によって求め、結果が分からないように断片を分散して記録すれば、全ての秘密検索装置が知らない数値の断片を分散して記録できる。この例では、選定した秘密検索装置を2つとしたが、2つ以上でもかまわない。初期乗算手段は、初期乗算部1401,...,140Nで構成される。初期乗算部1401,...,140Nは、Sk=Pk×Akである数値Skの断片sk1,...,skNを秘密計算によって求め、記録部1901,...,190Nに分散して記録するS140。断片置換手段と再分散手段は、ランダム置換1と同じである。確認分散手段は、確認分散部1501,...,150Nで構成される。確認分散部1501,...,150Nは、k=1~Kについて、Qk=Pπkである数値Qkの断片qk1,...,qkNを秘密計算によって生成し、記録部1901,...,190Nに分散して記録するS150。具体的には、ステップS130で選定された秘密検索装置が作った値に基づいて、どの装置も知らない値の別の断片を作ればよい。例えば、ステップS130で選定された秘密検索装置10iが数値Pπk用に生成した数値の別の断片新しい断片と、ステップS130で選定された秘密検索装置10jが数値Pπk用に生成した数値の別の断片新しい断片を分散して記録する。そして、その2つの数値の和を秘密計算によって求め、結果が分からないように断片を分散して記録すれば、Qk=Pπkであり、かつ、全ての秘密検索装置が知らない数値の断片を分散して記録できる。この例では、選定した秘密検索装置を2つとしたが、ステップS130と同じように2つ以上でもかまわない。確認乗算手段は、確認乗算部1601,...,160Nで構成される。確認乗算部1601,...,160Nは、Tk=Qk×Bkである数値Tkの断片tk1,...,tkNを秘密計算によって求め、記録部1901,...,190Nに分散して記録するS160。改ざん検出手段は、改ざん検出部1701,...,170Nで構成される。改ざん検出部1701,...,170Nは、k=1~Kについて、Tk=Sπkであることを確認するS170。tkn≠sπknの場合には、改ざんがあったとして異常終了する。また、数値B1,...,BKを新しい数値A1,...,AKとし、選択手段で選択する秘密検索装置の組み合わせを変更すれば、この処理を繰り返すことができるS111,S112。[その他の秘密計算]ここでは、セキュア検索システムが3個の秘密検索装置で構成された場合の秘密計算の例を示す。また、秘密検索装置101,102,103の番号を固定する必要はないので、秘密検索装置10α,10β,10γと表現することにする。つまり、α,β,γは、1,2,3、2,3,1、3,1,2のいずれかである。以下の秘密計算では、秘密検索装置10α,10β,10γが分散して記録する数値Aの断片をaγα,aαβ、aαβ,aβγ、aβγ,aγα、数値Bの断片をbγα,bαβ、bαβ,bβγ、bβγ,bγα、数値Cの断片をcγα,cαβ、cαβ,cβγ、cβγ,cγαとする。なお、以下の説明では、Wを2以上のあらかじめ定めた整数とし、計算結果はWで除した余りである。言い換えると、以下の説明の計算式ではmodWを省略している。数値Aの秘密分散1乱数aαβ,aβγを生成する。2aγα=A-aαβ-aβγを計算し、断片をaγα,aαβ、aαβ,aβγ、aβγ,aγαとし、秘密検索装置10α,10β,10γに分散して記録する。数値Aの復元1秘密検索装置10αは秘密検索装置10βにaγαを送信し、秘密検索装置10γにaαβを送信する。秘密検索装置10βは秘密検索装置10γにaαβを送信し、秘密検索装置10αにaβγを送信する。秘密検索装置10γは秘密検索装置10αにaβγを送信し、秘密検索装置10βにaγαを送信する。2秘密検索装置10αは秘密検索装置10βから受信したaβγと秘密検索装置10γから受信したaβγとが一致していれば、aαβaβγaγαを計算して数値Aを復元する。秘密検索装置10βは秘密検索装置10γから受信したaγαと秘密検索装置10αから受信したaγαとが一致していれば、aαβaβγaγαを計算して数値Aを復元する。秘密検索装置10γは秘密検索装置10αから受信したaαβと秘密検索装置10βから受信したaαβとが一致していれば、aαβaβγaγαを計算して数値Aを復元する。C=ABの秘密計算1秘密検索装置10αはcγα,cαβ=aγαbγα,aαβbαβを計算して記録し、秘密検索装置10βはcαβ,cβγ=aαβbαβ,aβγbβγを計算して記録し、秘密検索装置10γはcβγ,cγα=aβγbβγ,aγαbγαを計算して記録する。C=A-Bの秘密計算1秘密検索装置10αはcγα,cαβ=aγα-bγα,aαβ-bαβを計算して記録し、秘密検索装置10βはcαβ,cβγ=aαβ-bαβ,aβγ-bβγを計算して記録し、秘密検索装置10γはcβγ,cγα=aβγ-bβγ,aγα-bγαを計算して記録する。C=ASの秘密計算ただし、Sは既知の定数1秘密検索装置10αはcγα,cαβ=aγαS,aαβを計算して記録し、秘密検索装置10γはcβγ,cγα=aβγ,aγαSを計算して記録する。秘密検索装置10βの処理はない。C=ASの秘密計算ただし、Sは既知の定数1秘密検索装置10αはcγα,cαβ=aγαS,aαβSを計算して記録し、秘密検索装置10βはcαβ,cβγ=aαβS,aβγSを計算して記録し、秘密検索装置10γはcβγ,cγα=aβγS,aγαSを計算して記録する。C=ABの秘密計算1秘密検索装置10αは、乱数r1,r2,cγαを生成し、cαβ=aγαaαβbγαbαβ-r1-r2-cγαを計算する。そして、秘密検索装置10αは、秘密検索装置10βにr1,cαβを、秘密検索装置10γにr2,cγαを送信する。2秘密検索装置10βは、y=aαβbβγaβγbαβr1を計算し、秘密検索装置10γに送信する。3秘密検索装置10γは、z=aβγbγαaγαbβγr2を計算し、秘密検索装置10αに送信する。4秘密検索装置10βと秘密検索装置10γは、それぞれcβγ=yzaβγbβγを計算する。5秘密検索装置10αはcγα,cαβを記録し、秘密検索装置10βはcαβ,cβγを記録し、秘密検索装置10γはcβγ,cγαを記録する。ビットAの否定C=1-Aの秘密計算秘密検索装置10αはcγα,cαβ=1-aγα,-aαβmodWを計算して記録し、秘密検索装置10βはcαβ,cβγ=-aαβmodM,-aβγmodWを計算して記録し、秘密検索装置10γはcβγ,cγα=-aβγmodW,1-aγαを計算して記録する。ビットの論理積C=A∧B=ABの秘密計算秘密検索装置10α,10β,10γは、整数の乗算C=ABmodWの秘密計算と同じ処理を行う。ビットの論理和C=A∨B=AB-ABの秘密計算1秘密検索装置10α,10β,10γは、整数の加算C=ABmodWの秘密計算と同じ処理を行い、C’=ABの結果として、秘密検索装置10αが断片cγα’,cαβ’を、秘密検索装置10βが断片cαβ’,cβγ’を、秘密検索装置10γが断片cβγ’,cγα’を記録する。また、秘密検索装置10α,10β,10γは、整数の乗算C=ABmodWの秘密計算と同じ処理を行い、C=ABの結果として、秘密検索装置10αが断片cγα,cαβを、秘密検索装置10βが断片cαβ,cβγを、秘密検索装置10γが断片cβγ,cγαを記録する。2秘密検索装置10α,10β,10γは、S=-1として整数の乗算C=ASmodWの秘密計算ただし、Sは既知の定数と同じ処理を行い、C’’’=-Cの結果として、秘密検索装置10αが断片cγα’’’,cαβ’’’を、秘密検索装置10βが断片cαβ’’’,cβγ’’’を、秘密検索装置10γが断片cβγ’’’,cγα’’’を記録する。3秘密検索装置10α,10β,10γは、整数の加算C=ABmodWの秘密計算と同じ処理を行い、C=C’C’’’の結果として、秘密検索装置10αが断片cγα,cαβを、秘密検索装置10βが断片cαβ,cβγを、秘密検索装置10γが断片cβγ,cγαを記録する。ビットの排他的論理和C=A∨B=AB-2ABの秘密計算1秘密検索装置10α,10β,10γは、整数の加算C=ABmodWの秘密計算と同じ処理を行い、C’=ABの結果として、秘密検索装置10αが断片cγα’,cαβ’を、秘密検索装置10βが断片cαβ’,cβγ’を、秘密検索装置10γが断片cβγ’,cγα’を記録する。また、秘密検索装置10α,10β,10γは、整数の乗算C=ABmodWの秘密計算と同じ処理を行い、C=ABの結果として、秘密検索装置10αが断片cγα,cαβを、秘密検索装置10βが断片cαβ,cβγを、秘密検索装置10γが断片cβγ,cγαを記録する。2秘密検索装置10α,10β,10γは、S=-2として整数の乗算C=ASmodWの秘密計算ただし、Sは既知の定数の秘密計算と同じ処理を行い、C’’’=-2Cの結果として、秘密検索装置10αが断片cγα’’’,cαβ’’’を、秘密検索装置10βが断片cαβ’’’,cβγ’’’を、秘密検索装置10γが断片cβγ’’’,cγα’’’を記録する。3秘密検索装置10α,10β,10γは、整数の加算C=ABmodWの秘密計算と同じ処理を行い、C=C’C’’’の結果として、秘密検索装置10αが断片cγα,cαβを、秘密検索装置10βが断片cαβ,cβγを、秘密検索装置10γが断片cβγ,cγαを記録する。ビットAn,n=0,...,N-1の整数変換の秘密計算ビットAnの整数変換とは、を求めることである。また、秘密検索装置10α,10β,10γが分散して記録するビットAnの断片をanγα,anαβ、anαβ,anβγ、anβγ,anγαとする。秘密検索装置10αは、を計算して記録し、秘密検索装置10βはを計算して記録し、秘密検索装置10γはを計算して記録する。Nビットの整数Aの二進数変換の秘密計算xnは、xの下位n1番目のビットを示すものとする。1n=0からN-1について、秘密検索装置10βがaαβaβγmodWnを秘密分散し、秘密検索装置10α,10β,10γがaαβaβγmodWnの断片bnγα,bnαβ、bnαβ,bnβγ、bnβγ,bnγαを分散して記録する。n=0からN-1について、秘密検索装置10γがaγαnを秘密分散し、秘密検索装置10α,10β,10γがaγαnの断片aγαnγα,aγαnαβ、aγαnαβ,aγαnβγ、aγαnβγ,aγαnγαを分散して記録する。2cγα=0とし、n=0からN-1について2-1から2-3の処理を繰返し実行する。2-1dn=bnaγαn-2bnaγαnの秘密計算を実行し、dnの断片を分散して記録する。2-2an=dncn-2dncnの秘密計算を実行し、anの断片を分散して記録する。2-3n<N-1であれば、cn1=bnaγαndncn-bnaγαndncnの秘密計算を実行し、cn1の断片を分散して記録する。[プログラム、記録媒体]上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASPApplicationServiceProvider型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるものコンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等を含むものとする。また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。"