ベータ分布シミュレート部と、暗号化処理制御部とを備え、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置であって、前記暗号化処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記ベータ分布シミュレート部を動作させて、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置。ベータ分布シミュレート部と、復号処理制御部とを備え、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置であって、前記復号処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記ベータ分布シミュレート部を動作させて、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置。一様分布シミュレート部と、暗号化処理制御部とを備え、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置であって、前記暗号化処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記一様分布シミュレート部を動作させて、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置。一様分布シミュレート部と、復号処理制御部とを備え、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置であって、前記復号処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記一様分布シミュレート部を動作させて、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合に、ddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置。入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置の暗号化方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置の暗号化方法。入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置の復号方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置の復号方法。入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置の暗号化方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置の暗号化方法。入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置の復号方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合に、ddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置の復号方法。従来の方式は、順序保存型関数から一様ランダムに選択する方法のみを示している。また、超幾何分布や負の超幾何分布に従う試行のシミュレーション方法として効率的であるといわれている方法は複雑である。さらに、超幾何分布のシミュレーション方法として効率的であるとされている方法は浮動小数点数の計算が無制限に精確であるという前提のもとでしか完全に超幾何分布に従う試行シミュレートができない。加えて、負の超幾何分布に従う試行を効率的に実行する方法は近似されたアルゴリズムしか知られていない。つまり、実際にはすべての順序保存型関数から一様ランダムに選択できず、ある程度の誤差を伴う。実際には誤差を許容するならば、よりシンプルな方法を用いて効率的に順序保存型暗号を選択する方法でもよい。本発明の目的は、従来の方法に比べて、単純な分布に従う試行のシミュレート方法を用い、効率的に処理を実行する暗号化装置、復号装置、暗号化方法、及び復号方法を提供することにある。本発明に係わる暗号化装置は、ベータ分布シミュレート部と、暗号化処理制御部とを備え、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置であって、前記暗号化処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記ベータ分布シュミレート部を動作させて、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置である。本発明に係わる復号装置は、ベータ分布シミュレート部と、復号処理制御部とを備え、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置であって、前記復号処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記ベータ分布シミュレート部を動作させて、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置である。また本発明に係わる暗号化装置は、一様分布シミュレート部と、暗号化処理制御部とを備え、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置であって、前記暗号化処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記一様分布シミュレート部を動作させて、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置である。また本発明に係わる復号装置は、一様分布シミュレート部と、復号処理制御部とを備え、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置であって、前記復号処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記一様分布シミュレート部を動作させて、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合に、ddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置である。また本発明は、暗号化装置の暗号化方法及び復号装置の復号方法に関する。本発明によれば、平文の順序が保存される暗号を用いて、データベースに登録されている暗号文に対し、範囲検索を行うことができる。また、本発明をデータベースの暗号化方法として用いれば、暗号化されるデータのデータ長が長い場合であっても効率的な暗号化処理が実行できるため、暗号化されたデータベースの範囲検索を効率的に実行することが可能となる。以下、本発明に係わる典型的な実施形態について図面を用いて詳細に説明する。本発明に係わる第1の実施形態の暗号化装置及び復号装置は、ベータ分布に従う試行のシミュレーション方法を用いた暗号化装置及び復号装置である。ベータ分布とは、0≦y≦1を確率変数とする確率分布であって、ベータ分布に従う試行の確率密度関数は、以下の式によって表される。Prya1b1B0≦a≦10≦b≦1Bはベータ関数この分布は、0と1間の値の一様分布に従う独立なab1個の確率変数を大きさの順に並べ替えたときの小さいほうからa番目で大きいほうからb番目の値の確率変数である。abである場合ならば、ceil2番目の値を表す確率変数となる。定義域が1Mであり、値域が1Nであるような順序保存関数を一様にランダムに選ぶ場合、同じ要素が選ばれない限り、1からNの中から一様ランダムにM個の値を選び、これを小さいほうから並べた集合に定義域内の小さな値から対応させることで選択できる。つまり、abであるベータ分布に従う試行をシミュレートした結果であるyに対し、ceilは順序保存関数からランダムに関数が選ばれる場合、定義域中の中間の値が、値域のどの値に対応しているかを表すことになる。つまり、負の超幾何分布に従う試行のシミュレートをベータ分布に従う試行のシミュレーションで代替できることを表している。ベータ分布に従う試行は、負の超幾何分布に従う試行に比べて、効率的にシミュレートする方法がよく知られており非特許文献5など、さらに、abである場合に特に効率的に動作するアルゴリズムが知られている。以上のような方法で、第2の方法における暗号化処理、復号処理において実行される。負の超幾何分布に従う試行のシミュレーションを効率的な方法によって代替することで、定義域、値域に対する順序保存関数の中からほぼ一様ランダムに関数を効率的に指定することができる第2の解決法は、reを選択する処理を一様分布に従う試行を用いて行う方法である。すなわち、本発明に係わる第2の実施形態の暗号化装置及び復号装置は、一様分布に従う試行のシミュレーション方法を用いた暗号化装置及び復号装置である。一様分布とは、a≦y≦bを確率変数とする確率分布であって、その確率密度関数は以下の式によって表される。Pr1Pr0この方法は、aとb間の値の一様分布に従う試行によってyを選択し、ceilをreとする方法である。一様分布は、様々な分布をシミュレートするためにベースの分布として利用されている。この分布に従う試行は非常に簡単にシミュレート可能な値とされているため、順序保存関数に関する演算を効率的に実行することができる。まず、ベータ分布に従う試行のシミュレーション方法を用いた場合の第1の実施形態について説明する。図5は本発明の第1実施形態に係わる暗号化装置のブロック図である。暗号化装置の構成について、図5を用いて説明を行う。図5を参照すると、暗号化装置300は、暗号化処理制御部301と、ベータ分布シミュレート部303を備え、平文、シード、平文空間、暗号文空間を入力として、暗号文を出力する。図10は、本実施形態の暗号化装置300の動作を示すフローチャートである。これを用いて、暗号化装置300の実施の形態の動作について説明する。まず、平文dとシードSと平文空間Dd1dmと暗号文空間Rr1rnが入力されるステップC1。暗号化処理制御部301は、平文空間の要素を数字的大小で並べた時の中間の値dcを求め記憶する。。暗号化処理制御部301は、Sをシードとしてベータ分布シミュレート部303を動作させ、abであるベータ分布に従った試行をシミュレートした結果であるyを生成し、rceilをdcに対する暗号文とするステップC3。暗号化処理制御部301は、ddcが成立しているかを調べる。ステップC4が成立している場合、暗号化処理制御部301は、rceilをdの暗号文として出力する。ステップC4が成立していない場合、暗号化処理制御部301は、ddcが成立しているかを調べる。ステップC6が成立している場合、暗号化処理制御部301は、Dd1...dc1とし、Rr1rceil1とし、ステップC2に戻る。ステップC6が成立していない場合、暗号化処理制御部301は、Dd{c1...dmとし、Rrceil1rnとし、ステップC2に戻る。図6は本発明の第1実施形態に係わる復号装置のブロック図である。復号装置400の構成について、図6を用いて説明を行う。図6を参照すると、復号装置400は、復号処理制御部401と、ベータ分布シミュレート部303を備え、暗号文、シード、平文空間、暗号文空間を入力として、平文を出力する。図11は復号装置400の動作を示すフローチャートである。これを用いて復号装置400の実施の形態の動作について説明する。まず、暗号文rとシードSと平文空間Dd1dmと暗号文空間Rr1rnが入力されるステップD1。復号処理制御部401は、平文空間の要素を数字的大小で並べた時の中間の値dcを求め記憶する。復号処理制御部401は、Sをシードとしてベータ分布シミュレート部303を動作させ、abであるベータ分布に従った試行をシミュレートした結果であるyを生成し、receilをdcに対する暗号文とするステップD3。復号処理制御部401は、rerが成立しているかを調べる。ステップD4が成立している場合、復号処理制御部401は、dcをrの平文として出力する。ステップD4が成立していない場合、復号処理制御部401は、rerが成立しているかを調べる。ステップD6が成立している場合、復号処理制御部401は、Dd1...dc1とし、Rr1re1とし、ステップD2に戻る。ステップD6が成立していない場合、復号処理制御部401は、Dd{c1...dmとし、Rre1rnとし、ステップD2に戻る。次に、一様分布に従う試行のシミュレーション方法を用いた場合の第2の実施形態について説明する。図7は本発明の第2の実施形態に係わる暗号化装置のブロック図である。暗号化装置の構成について、図7を用いて説明を行う。図7を参照すると、暗号化装置310は、暗号化処理制御部301と、一様分布シミュレート部304を備え、平文、シード、平文空間、暗号文空間を入力として、暗号文を出力する。図12は、本実施形態の暗号化装置310の実施の形態の動作を示すフローチャートである。これを用いて、暗号化装置310の実施の形態の動作について説明する。まず、平文dとシードSと平文空間Dd1dmと暗号文空間Rr1rnが入力されるステップE1。暗号化処理制御部301は、平文空間の要素を数字的大小で並べた時の中間の値dcを求め記憶する。。暗号化処理制御部301は、Sをシードとして一様分布シミュレート部304を動作させ、0と1の間の値の一様分布に従った試行をシミュレートした結果であるyを生成し、rceilをdcに対する暗号文とするステップE3。暗号化処理制御部301は、ddcが成立しているかを調べる。ステップE4が成立している場合、暗号化処理制御部301は、rceilをdの暗号文として出力する。ステップE4が成立していない場合、暗号化処理制御部301は、ddcが成立しているかを調べる。ステップE6が成立している場合、暗号化処理制御部301は、Dd{c1...dmとし、Rrceil1rnとし、ステップE2に戻る。ステップE6が成立していない場合、暗号化処理制御部301は、Dd1...dc1とし、Rr1rceil1とし、ステップE2に戻る。図8は本発明の第2の実施形態に係わる復号装置のブロック図である。復号装置410の構成について、図8を用いて説明を行う。図8を参照すると、復号装置410は、復号処理制御部401と、一様分布シミュレート部304を備え、暗号文、シード、平文空間、暗号文空間を入力として、平文を出力する。図13は復号装置410の動作を示すフローチャートである。これを用いて復号装置410の実施の形態の動作について説明する。まず、暗号文rとシードSと平文空間Dd1dmと暗号文空間Rr1rnが入力されるステップF1。復号処理制御部401は、平文空間の要素を数字的大小で並べた時の中間の値dcを求め記憶する。復号処理制御部401は、Sをシードとして一様分布シミュレート部304を動作させ、0と1の間の一様分布に従った試行をシミュレートした結果であるyを生成し、rceilをdcに対する暗号文とするステップF3。復号処理制御部401は、rceilrが成立しているかを調べる。ステップF4が成立している場合、復号処理制御部401は、dcをrの平文として出力する。ステップF4が成立していない場合、復号処理制御部401は、rceilrが成立しているかを調べる。ステップF6が成立している場合、復号処理制御部401は、Dd{c1...dmとし、Rrceil1rnとし、ステップF2に戻る。ステップF6が成立していない場合、復号処理制御部401は、Dd1...dc1とし、Rr1rceil1とし、ステップF2に戻る。上記実施形態の一様分布において、0付近、もしくは1付近が生成されると、各暗号文間の広さが小さくなる可能性がある。暗号文間の広さが小さいと、それらの平文間の差も小さいことが解析できてしまう。これは、abが0から1ではなく、0ab1であるような区間abの一様分布を用いることで防ぐことができる。以上説明した、第1及び第2の実施形態の暗号化装置及び復号装置は、ハードウェアで構成することができる。しかし、当該かかる暗号化装置及び復号装置の機能をソフトウェアで実現することができる。図9は、暗号化装置又は復号装置として機能するコンピュータの一構成例を示すブロック図である。図9に示す処理装置10は、CPU11と、CPU11の処理に必要な情報を一時的に記憶する主記憶装置12と、CPU11に暗号化装置300又は310、復号装置400又は410、としての処理を実行させるためのプログラムが記録された記録媒体13と、平文や、暗号文、鍵情報などが格納されるデータ蓄積装置14と、主記憶装置12、記録媒体13及びデータ蓄積装置14とのデータ転送を制御するメモリ制御インターフェース部15と、入力装置20及び出力装置30とのインターフェース装置であるIOインターフェース部16とを有し、それらはバス17を介して接続された構成である。なお、データ蓄積装置14は、処理装置10内にある必要はなく、処理装置10から独立して備えていてもよい。処理装置10は、暗号化装置300又は310、復号装置400又は410、の機能を実現する。記録媒体13は、磁気ディスク装置、半導体メモリ、光ディスク装置あるいはその他の記録媒体であってもよい。上記の実施形態の一部又は全部は、以下の付記のようにも記載されうるが、以下の構成には限られない。付記1ベータ分布シミュレート部と、暗号化処理制御部とを備え、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置であって、前記暗号化処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記ベータ分布シミュレート部を動作させて、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置。付記2ベータ分布シミュレート部と、復号処理制御部とを備え、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置であって、前記復号処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記ベータ分布シミュレート部を動作させて、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置。付記3一様分布シミュレート部と、暗号化処理制御部とを備え、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置であって、前記暗号化処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記一様分布シミュレート部を動作させて、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置。付記4一様分布シミュレート部と、復号処理制御部とを備え、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置であって、前記復号処理制御部は、前記平文空間の中間の値dcを決定し、前記シードSを用いて前記一様分布シミュレート部を動作させて、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合に、ddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置。付記5入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置の暗号化方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置の暗号化方法。付記6入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置の復号方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置の復号方法。付記7入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する暗号化装置の暗号化方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る暗号化装置の暗号化方法。付記8入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する復号装置の復号方法であって、前記平文空間の中間の値dcを決定し、前記シードSを用い、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成し、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合に、ddcが成立しているかを判定し、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻り、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る復号装置の復号方法。付記9コンピュータに、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する手順を実行させるためのプログラムであって、前記平文空間の中間の値dcを決定し、前記シードSを用い、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成する手順と、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定する手順と、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻る手順と、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る手順とを実行させるためのプログラム。付記10コンピュータに、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する手順を実行させるためのプログラムであって、前記平文空間の中間の値dcを決定し、前記シードSを用い、ベータ分布に従う試行の確率密度関数を、以下の式で表したときに、Prya1b1B0≦a≦10≦b≦1Bはベータ関数abであるベータ分布に従う試行をシミュレートした結果であるyを生成する手順と、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合にddcが成立しているかを判定する手順と、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻る手順と、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る手順とを実行させるためのプログラム。付記11コンピュータに、入力された、平文d、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、暗号文を出力する手順を実行させるためのプログラムであって、前記平文空間の中間の値dcを決定し、前記シードSを用い、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成する手順と、ddcが成立しているかを判定し、成立している場合、rceilをdcに対する暗号文として出力し、成立していない場合にddcが成立しているかを判定する手順と、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻る手順と、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る手順とを実行させるためのプログラム。付記12コンピュータに、入力された、暗号文r、シードS、平文空間Dd1dm、及び暗号文空間Rr1rnに基づいて、平文を出力する手順を実行させるためのプログラムであって、前記平文空間の中間の値dcを決定し、前記シードSを用い、一様分布に従う試行の確率密度関数を、以下の式で表したときに、Pr1Pr0abが0と1の間の値である一様分布又は0ab1を満たすaとbの間の値である一様分布に従う試行をシミュレートした結果であるyを生成する手順と、rrceilが成立しているかを判定し、成立している場合、dcを平文として出力し、成立していない場合に、ddcが成立しているかを判定する手順と、ddcが成立している場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{1...dc1、暗号文空間Rr1rceil1rnとして、平文空間の中間の値を決定する処理に戻る手順と、ddcが成立していない場合、前記平文空間Dd1dm、及び前記暗号文空間Rr1rnをそれぞれ平文空間Dd{c1...dm、暗号文空間Rrceil1rnとして、平文空間の中間の値を決定する処理に戻る手順とを実行させるためのプログラム。