"復号装置と復号能力提供装置と復号制御装置とを有し、G,Hが巡回群、fxが群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X1,X2が群Gに値を持つ確率変数、x1が確率変数X1の実現値、x2が確率変数X2の実現値、a,bが互いに素である自然数であり、前記復号装置が、前記暗号文xに対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を出力する入力情報提供部を含み、前記復号能力提供装置が、前記第一入力情報τ1を用い、或る確率より大きな確率でfτ1を正しく計算し、得られた演算結果を第一出力情報z1として出力可能な第一出力情報生成部と、前記第二入力情報τ2を用い、或る確率より大きな確率でfτ2を正しく計算し、得られた演算結果を第二出力情報z2として出力可能な第二出力情報生成部と、を含み、前記復号装置が、さらに前記第一出力情報z1から演算結果u=fxbx1を生成する第一計算部と、前記第二出力情報z2から演算結果v=fxax2を生成する第二計算部と、前記演算結果u及びvがua=vbを満たす場合に、a’ab’b=1を満たす整数a’,b’についてのub’va’を出力する最終出力部と、を含み、前記復号制御装置が、前記復号装置の復号処理を制御する復号制御命令を前記復号能力提供装置に出力する出力部を含み、前記復号能力提供装置が、さらに、前記復号制御命令に従って、前記第一出力情報z1及び前記第二出力情報z2の両方の出力の有無を制御する制御部を含む、復号制御システム。請求項1の復号制御システムにおいて、前記復号装置が、前記自然数a,bの少なくとも一方を選択する自然数選択部を含み、前記第一入力情報τ1が前記自然数bにさらに対応し、前記第二入力情報τ2が前記自然数aにさらに対応する、復号制御システム。請求項1又は2の復号制御システムにおいて、前記入力情報提供部が、前記暗号文xとの関係をかく乱させた情報を前記第一入力情報τ1及び前記第二入力情報τ2とする、復号制御システム。請求項1から3の何れかの復号制御システムにおいて、前記復号関数fxが準同型関数、群Hの生成元がμh、群Hの位数がKH、ν=fμhであり、前記入力情報提供部が、0以上の自然数の乱数r1を生成する第一乱数生成部と、前記第一入力情報τ1としてμhr1xbを計算する第一入力情報計算部と、0以上の自然数の乱数r2を生成する第二乱数生成部と、前記第二入力情報τ2としてμhr2xaを計算する第二入力情報計算部と、を含み、前記第一出力情報計算部は、前記第一入力情報μhr1xbを用い、或る確率より大きな確率でfμhr1xbを正しく計算し、得られた計算結果を前記第一出力情報z1とし、前記第二出力情報計算部は、前記第二入力情報μhr2xaを用い、或る確率より大きな確率でfμhr2xaを正しく計算し、得られた計算結果を第二出力情報z2とし、前記第一計算部は、z1ν-r1を計算してその計算結果を前記uとし、前記第二計算部は、z2ν-r2を計算してその計算結果を前記vとする、復号制御システム。請求項4の復号制御システムにおいて、前記第一乱数生成部が、b≠1のときに前記乱数r1を生成し、前記第一入力情報計算部が、b≠1のときに前記第一入力情報τ1として前記μhr1xbを計算し、前記第一出力情報計算部が、b≠1のときに前記第一入力情報μhr1xbを用いて得られた前記計算結果を前記第一出力情報z1とし、前記第一計算部が、b≠1のときにz1ν-r1を計算してその計算結果を前記uとし、前記第二乱数生成部が、a≠1のときに前記乱数r2を生成し、前記第二入力情報計算部が、a≠1のときに前記第二入力情報τ2としてμhr2xaを計算し、前記第二出力情報計算部が、a≠1のときに前記第二入力情報μhr2xaを用いて得られた前記計算結果を第二出力情報z2とし、前記第二計算部が、a≠1のときにz2ν-r2を計算してその計算結果を前記vとし、前記入力情報提供部が、0以上の自然数の乱数r3を生成する第三乱数生成部と、b=1のときにxr3を前記第一入力情報τ1とし、a=1のときにxr3を前記第二入力情報τ2とする第三入力情報計算部と、を含み、前記復号能力提供装置が、前記xr3を用い、或る確率より大きな確率でfxr3を正しく計算し、得られた計算結果を第三出力情報z3とする第三出力情報計算部を含み、前記復号装置が、b=1のときにz31/r3を前記uとし、a=1のときにz31/r3を前記vとする第三計算部を含む、復号制御システム。請求項1から3の何れかの復号制御システムにおいて、群H=G×G、前記復号関数fxが準同型関数、群Gの生成元がμg、群Gの位数がKG、x=c1,c2,V,Wが群Hの元、fV,W=Yであり、前記入力情報提供部が、0以上の自然数の乱数r4を生成する第四乱数生成部と、0以上の自然数の乱数r5を生成する第五乱数生成部と、前記第一入力情報τ1としてc2bWr4及びc1bVr4μgr5を計算する第一入力情報計算部と、0以上の自然数の乱数r6を生成する第六乱数生成部と、0以上の自然数の乱数r7を生成する第七乱数生成部と、前記第二入力情報τ2としてc2aWr6及びc1aVr6μgr7を計算する第二入力情報計算部と、を含み、前記第一出力情報計算部が、前記第一入力情報c1bVr4μgr5及びc2bWr4を用い、或る確率より大きな確率でfc1bVr4μgr5,c2bWr4を正しく計算し、得られた計算結果を前記第一出力情報z1とし、前記第二出力情報計算部が、前記第二入力情報c1aVr6μgr7及びc2aWr6を用い、或る確率より大きな確率でfc1aVr6μgr7,c2aWr6を正しく計算し、得られた計算結果を前記第二出力情報z2とし、前記第一計算部が、z1Y-r4μg-r5を計算してその計算結果を前記uとし、前記第二計算部が、z2Y-r6μg-r7を計算してその計算結果を前記vとする、復号制御システム。請求項1から6の何れかの復号制御システムにおいて、前記演算結果uのfxbに対する誤差の確率分布が前記自然数bに依存しない、並びに/若しくは、前記演算結果vのfxaに対する誤差の確率分布が前記自然数aに依存しない、又は、前記演算結果uのfxbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、並びに/若しくは、前記演算結果vのfxaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、復号制御システム。請求項1から7の何れかの復号制御システムにおいて、前記自然数a又は前記自然数bが定数である、復号制御システム。G,Hが巡回群、fxが群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X1,X2が群Gに値を持つ確率変数、x1が確率変数X1の実現値、x2が確率変数X2の実現値、a,bが互いに素である自然数であり、前記暗号文xに対応する群Hの元である第一入力情報τ1を用い、或る確率より大きな確率でfτ1を正しく計算し、得られた演算結果を第一出力情報z1として出力可能な第一出力情報生成部と、前記暗号文xに対応する群Hの元である第二入力情報τ2を用い、或る確率より大きな確率でfτ2を正しく計算し、得られた演算結果を第二出力情報z2として出力可能な第二出力情報生成部と、入力された復号制御命令に従って、前記第一出力情報z1及び前記第二出力情報z2の両方の出力の有無を制御する制御部と、を有する復号能力提供装置。復号装置と復号能力提供装置と復号制御装置とが実行する復号制御方法であって、G,Hが巡回群、fxが群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X1,X2が群Gに値を持つ確率変数、x1が確率変数X1の実現値、x2が確率変数X2の実現値、a,bが互いに素である自然数であり、A前記復号装置で、前記暗号文xに対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を出力するステップと、B前記復号能力提供装置で、前記第一入力情報τ1を用い、或る確率より大きな確率でfτ1を正しく計算し、得られた演算結果を第一出力情報z1として出力可能なステップと、C前記復号能力提供装置で、前記第二入力情報τ2を用い、或る確率より大きな確率でfτ2を正しく計算し、得られた演算結果を第二出力情報z2として出力可能なステップと、D前記復号装置で、前記第一出力情報z1から演算結果u=fxbx1を生成するステップと、E前記復号装置で、前記第二出力情報z2から演算結果v=fxax2を生成するステップと、F前記復号装置で、前記演算結果u及びvがua=vbを満たす場合に、a’ab’b=1を満たす整数a’,b’についてのub’va’を出力するステップと、を有し、前記ステップB及び前記ステップCの少なくとも一方は、前記復号制御装置から出力された前記復号装置の復号処理を制御する復号制御命令に従って、前記第一出力情報z1及び前記第二出力情報z2の両方の出力の有無を制御するステップを含む、復号制御方法。復号能力提供装置の復号能力提供方法であって、G,Hが巡回群、fxが群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X1,X2が群Gに値を持つ確率変数、x1が確率変数X1の実現値、x2が確率変数X2の実現値、a,bが互いに素である自然数であり、A第一出力情報生成部で、前記暗号文xに対応する群Hの元である第一入力情報τ1を用い、或る確率より大きな確率でfτ1を正しく計算し、得られた演算結果を第一出力情報z1とするステップと、B第二出力情報生成部で、前記暗号文xに対応する群Hの元である第二入力情報τ2を用い、或る確率より大きな確率でfτ2を正しく計算し、得られた演算結果を第二出力情報z2とするステップと、を有し、前記ステップA及び前記ステップBの少なくとも一方は、前記復号能力提供装置に入力された復号制御命令に従って、前記第一出力情報z1及び前記第二出力情報z2の両方の出力の有無を制御するステップを含む、復号能力提供方法。請求項9の復号能力提供装置としてコンピュータを機能させるためのプログラム。しかしながら、復号装置に復号鍵を与えるか否かによって復号装置による暗号文の復号能力を制御する方法では、復号装置に復号鍵を与えることに起因する問題点がある。例えば、この方法では復号装置に復号鍵を与えた後は復号装置の復号能力を再び制限することができず、さらに、復号装置がどのような復号鍵に対応する暗号文を復号しようとしているのかについての情報が復号鍵を提供する側に知られてしまう。本発明はこのような点に鑑みてなされたものであり、復号装置に復号鍵を与えることなく、復号装置による暗号文の復号能力を制御する技術を提供することを目的とする。本発明では、G,Hを巡回群、fxを群Hの元である暗号文xを特定の復号鍵で復号して群Gの元を得るための復号関数、X1,X2を群Gに値を持つ確率変数、x1を確率変数X1の実現値、x2を確率変数X2の実現値、a,bを互いに素である自然数として、復号装置が、暗号文xに対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を出力し、復号能力提供装置が、第一入力情報τ1を用い、或る確率より大きな確率でfτ1を正しく計算し、演算結果を第一出力情報z1として出力可能であり、第二入力情報τ2を用い、或る確率より大きな確率でfτ2を正しく計算し、演算結果を第二出力情報z2として出力可能であり、復号装置が、第一出力情報z1から演算結果u=fxbx1を生成し、第二出力情報z2から演算結果v=fxax2を生成し、演算結果u及びvがua=vbを満たす場合に、a’ab’b=1を満たす整数a’,b’についてのub’va’を出力する。復号制御装置は、復号装置の復号処理を制御する復号制御命令を復号能力提供装置に出力し、復号能力提供装置は、復号制御命令に従って第一出力情報z1及び第二出力情報z2の両方の出力の有無を制御する。第一出力情報z1及び第二出力情報z2が復号装置に与えられた場合、復号装置はある確率でub’va’を出力できる。ub’va’は高い確率で暗号文xの復号値となる。一方、第一出力情報z1及び第二出力情報z2の両方が復号装置に与えられなかった場合、復号装置は暗号文xの復号値を得ることができない。本発明では、復号能力提供装置による第一出力情報z1及び第二出力情報z2の両方の出力の有無を制御することで、復号装置に復号鍵を与えることなく、復号装置による暗号文の復号能力を制御できる。以下、図面を参照して本発明の実施形態を説明する。[第一実施形態]まず、本発明の第一実施形態を説明する。<構成>図1に例示するように、第一実施形態の復号制御システム1は、例えば、復号鍵を保持していない復号装置11と復号鍵を保持する復号能力提供装置12と復号装置11の復号能力を制御する復号制御装置13とを有する。復号制御装置13は復号能力提供装置12から復号装置11へ提供される復号能力を制御し、復号装置11は復号能力提供装置12から提供された復号能力を用いて暗号文を復号する。復号装置11と復号能力提供装置12と復号制御装置13とは情報のやり取りが可能なように構成される。例えば、復号装置11と復号能力提供装置12と復号制御装置13とは、伝送線やネットワークや可搬型記録媒体などを経由した情報のやり取りが可能とされている。図2に例示するように、第一実施形態の復号装置11は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部1104と第一計算部1105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部1108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。復号装置11の例は、カードリーダライタ装置や携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUcentralprocessingunitやRAMrandom-accessmemoryを備えた公知又は専用のコンピュータなどである。図3に例示するように、第一実施形態の復号能力提供装置12は、例えば、第一出力情報計算部1201と第二出力情報計算部1202と鍵記憶部1204と制御部1205とを有する。復号能力提供装置12の例は、ICカードやICチップなどの耐タンパ性モジュールや、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。図4に例示するように、第一実施形態の復号制御装置13は、例えば、暗号文記憶部1301と制御命令部1302と出力部1303と制御部1304とを有する。復号制御装置13の例は、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。<復号処理>次に本形態の復号処理を説明する。復号処理の前提として、G,Hを巡回群、fxを群Hの元である暗号文xを特定の復号鍵sで復号して群Gの元を得るための復号関数、群G,Hの生成元をそれぞれμg,μh、X1,X2を群Gに値を持つ確率変数、確率変数X1の実現値をx1、確率変数X2の実現値をx2とする。また、復号装置11の自然数記憶部1101には、互いに素である2つの自然数a,bの組a,bが複数種類記憶されているものとする。自然数とは0以上の整数を意味する。Iを群Gの位数未満の2つの自然数の組で互いに素なものの集合とすると、自然数記憶部1101にはIの部分集合Sに対応する自然数a,bの組a,bが記憶されていると考えることができる。また、復号能力提供装置12の鍵記憶部2104には、特定の復号鍵sが安全に格納されているものとする。また、復号制御装置13の暗号文記憶部1301には暗号文xが格納されているものとする。なお、復号装置11の各処理は制御部1113の制御のもとで実行され、復号能力提供装置12の各処理は制御部1205の制御のもとで実行され、復号制御装置13の各処理は制御部1304の制御のもとで実行される。図7に例示するように、まず、復号装置11図2の自然数選択部1102が、自然数記憶部1101に記憶された複数の自然数の組a,bから1つの自然数の組a,bをランダムに読み込む。読み込まれた自然数の組a,bの少なくとも一部の情報は、整数計算部1103、入力情報提供部1104、第一べき乗計算部1106及び第二べき乗計算部1109に送られるステップS1100。整数計算部1103は、送られた自然数の組a,bを用いて、a’ab’b=1の関係を満たす整数a’,b’を計算する。自然数a,bは互いに素であるため、a’ab’b=1の関係を満たす整数a’,b’は必ず存在して、その計算方法もよく知られている。たとえば拡張互除法などのよく知られたアルゴリズムによって整数a’,b’が計算され、自然数の組a’,b’の情報は、最終出力部1112に送られるステップS1101。制御部1113は、t=1とするステップS1102。復号制御装置13図4の暗号文記憶部1301に格納されている暗号文xが出力部1303から出力され、復号装置11図2に入力される。復号装置11の入力情報提供部1104は、入力された暗号文xにそれぞれ対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を生成して出力する。好ましくは、第一入力情報τ1及び第二入力情報τ2はそれぞれ暗号文xとの関係をかく乱させた情報である。これにより、復号装置11は、暗号文xを復号能力提供装置12に対して隠蔽できる。また、好ましくは、本形態の第一入力情報τ1は自然数選択部1102で選択された自然数bにさらに対応し、第二入力情報τ2は自然数選択部1102で選択された自然数aにさらに対応する。これにより、復号能力提供装置12から提供された復号能力を復号装置11が高い精度で評価できるステップS1103。図8に例示するように、第一入力情報τ1は復号能力提供装置12図3の第一出力情報計算部1201に入力され、第二入力情報τ2は第二出力情報計算部1202に入力されるステップS1200。第一出力情報計算部1201は、第一入力情報τ1と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfτ1を正しく計算し、得られた計算結果を第一出力情報z1とするステップS1201。第二出力情報計算部1202は、第二入力情報τ2と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfτ2を正しく計算し、得られた演算結果を第二出力情報z2とするステップS1202。なお、或る確率は100未満の確率である。或る確率の例は無視することができない確率であり、無視することができない確率の例は、セキュリティパラメータkについての広義単調増加関数である多項式を多項式ψkとした場合の1/ψk以上の確率である。すなわち、第一出力情報計算部1201や第二出力情報計算部1202は、意図的又は意図的ではない誤差を含んだ計算結果を出力し得る。言い換えると、第一出力情報計算部1201での計算結果がfτ1の場合もあればfτ1でない場合もあり、第二出力情報計算部1202での計算結果がfτ2の場合もあればfτ2でない場合もある。第一出力情報計算部1201は第一出力情報z1を出力し、第二出力情報計算部1202は第二出力情報z2を出力するステップS1203。図7に戻り、第一出力情報z1は復号装置11図2の第一計算部1105に入力され、第二出力情報z2は第二計算部1108に入力される。これらの第一出力情報z1及び第二出力情報z2が、復号能力提供装置12から復号装置11に与えられた復号能力に相当するステップS1104。第一計算部1105は、第一出力情報z1から演算結果u=fxbx1を生成する。ここで、fxbx1を生成計算するとは、fxbx1と定義される式の値を計算することである。式fxbx1の値を最終的に計算することができれば、途中の計算方法は問わない。これは、この出願で登場する他の式の計算についても同様である。演算結果uは第一べき乗計算部1106に送られるステップS1105。第一べき乗計算部1106はu’=uaを計算する。計算結果uとその計算結果に基づいて計算されたu’との組u,u’は、第一リスト記憶部1107に記憶されるステップS1106。判定部1111は、第一リスト記憶部1107に記憶された組u,u’及び第二リスト記憶部1110に記憶された組v,v’の中で、u’=v’となるものがあるか判定するステップS1107。もし、第二リスト記憶部1110に組v,v’が記憶されていない場合には、このステップS1107の処理を行わずに、次のステップS1108の処理を行う。u’=v’となるものがあった場合には、ステップS1114に進む。u’=v’となるものがなかった場合には、ステップS1108に進む。ステップS1108では、第二計算部1108が、第二出力情報z2から演算結果v=fxax2を生成する。演算結果vは第二べき乗計算部1109に送られるステップS1108。第二べき乗計算部1109はv’=vbを計算する。計算結果vとその計算結果に基づいて計算されたv’との組v,v’は、第二リスト記憶部1110に記憶されるステップS1109。判定部1111は、第一リスト記憶部1107に記憶された組u,u’及び第二リスト記憶部1110に記憶された組v,v’の中で、u’=v’となるものがあるか判定するステップS1110。u’=v’となるものがあった場合には、ステップS1114に進む。u’=v’となるものがなかった場合には、ステップS1111に進む。ステップS1111では、制御部1113がt=Tであるか判定するステップS1111。Tは予め定められた1以上の自然数である。t=Tであれば、最終出力部1112が、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS1113、処理を終える。t=Tでない場合には、制御部1113は、tを1だけインクリメント、すなわちt=t1t1を新たなtとしてステップS1112、ステップS1103に戻る。計算をすることができなかった旨の情報この例では記号⊥は、復号能力提供装置12が正しく計算を行う信頼性がTで定められる基準を下回るということを意味する。言い換えれば、T回の繰り返しで正しい演算を行うことができなかったということを意味する。ステップS1114では、最終出力部1112が、u’=v’であると判定されたu’及びv’に対応するu及びvを用いてub’va’を計算して、出力するステップS1114。このように計算されたub’va’は高い確率で暗号文xを特定の復号鍵sで復号した復号結果fxとなる高い確率でub’va’=fxとなる理由については後述する。よって、上述した処理を複数回繰り返し、ステップS1114で得られた値のうち最も頻度の高い値を復号結果とすればよい。また、後述するように、設定によっては圧倒的な確率でub’va’=fxとなる。その場合にはステップS1114で得られた値をそのまま復号結果としてよい。≪高い確率でub’va’=fxとなる理由について≫Xを群Gに値を持つ確率変数とする。w∈Gについて、要求を受けるたびに確率変数Xに従った標本x’に対応するwx’を返すものを、wについて誤差Xを持つ標本器samplerと呼ぶ。w∈Gについて、自然数aが与えられるたびに確率変数Xに従った標本x’に対応するwax’を返すものを、wについて誤差Xを持つ乱数化可能標本器randomizablesamplerと呼ぶ。乱数化可能標本器はa=1として用いられれば標本器として機能する。本実施形態の入力情報提供部1104と第一出力情報計算部1201と第一計算部1105との組み合わせが、fxについて誤差X1を持つ乱数化可能標本器第一乱数化可能標本器と呼ぶであり、入力情報提供部1104と第二出力情報計算部1202と第二計算部1108との組み合わせが、fxについて誤差X2を持つ乱数化可能標本器第二乱数化可能標本器と呼ぶである。u’=v’が成立するのは、すなわちua=vbが成立するのは、第一乱数化可能標本器がu=fxbを正しく計算しており、第二乱数化可能標本器がv=fxaを正しく計算しているx1及びx2が群Gの単位元egである可能性が高いことを発明者は見出した。説明の簡略化の観点から、この証明は第五実施形態で行う。第一乱数化可能標本器がu=fxbを正しく計算しており、第二乱数化可能標本器がv=fxaを正しく計算しているときx1及びx2が群Gの単位元egであるとき、ub’va’=fxbx1b’fxax2a’=fxbegb’fxaega’=fxbb’egb’fxaa’ega’=fxbb’aa’=fxとなる。また、q1,q2∈Iについて、i=1,2の各々について関数πiをπiq1,q2=qiで定義する。さらに、L=min♯π1S,♯π2Sとする。♯は、集合の位数である。群Gが巡回群や位数の計算が困難な群であるときには、復号装置11が⊥以外を出力するときの出力がfxではない確率は、無視できる程度の誤差の範囲で高々T2L/♯S程度と期待することができる。もしL/♯Sが無視できる量でTが多項式オーダー程度の量であれば、復号装置11は圧倒的な確率で正しいfxを出力する。L/♯Sが無視できる量になるようなSの例には、例えばS={1,d|d∈[2,|G|-1]}がある。<復号制御処理>次に、本形態の復号制御処理を説明する。復号制御装置13が復号装置11の復号処理を制御する場合、復号制御装置13は、復号装置11の復号処理を制御する復号制御命令を復号能力提供装置12に出力する。復号能力提供装置12は、入力された復号制御命令に従って、第一出力情報z1及び第二出力情報z2の両方の出力の有無を制御する。復号装置11は、第一出力情報z1及び第二出力情報z2が与えられなければ暗号文xを復号することができない。そのため、第一出力情報z1及び第二出力情報z2の両方の出力の有無を制御することで、復号装置11の復号能力を制御できる。以下に復号処理の制御方法を例示する。≪復号処理の制御方法の例1≫復号処理の制御方法の例1では、復号制御命令が復号装置11の復号能力を制限するための復号制限命令com-1を含み、復号制限命令com-1が復号能力提供装置12の制御部1205に入力された場合に制御部1205が第一出力情報z1及び第二出力情報z2の両方の出力を禁止する。復号装置11の復号能力を制限する場合、復号制御装置13図4の制御命令部1302が復号制限命令com-1を出力する。復号制限命令com-1は出力部1303から復号能力提供装置12に出力される。復号能力提供装置12図3の制御部1205は、復号制限命令com-1が入力されたか否かを判断し、復号制限命令com-1が制御部1205に入力されない場合には復号制御処理を行わない。一方、復号制限命令com-1が制御部1205に入力された場合には、制御部1205は第一出力情報z1及び第二出力情報z2の両方の出力を禁止する制御を行う復号制限モード。復号制限モードでは、制御部1205が第一出力情報計算部1201による第一出力情報z1の出力及び第二出力情報計算部1201による第二出力情報z2の出力の両方を禁止する。第一出力情報z1及び/又は第二出力情報z2の出力を禁止する制御の一例は、第一出力情報z1及び/又は第二出力情報z2の生成は禁止しないがこれらの出力を禁止する制御である。第一出力情報z1及び/又は第二出力情報z2の出力を禁止する制御の他の例は、第一出力情報z1及び/又は第二出力情報z2の代わりにダミー情報を出力させる制御である。なお、ダミー情報の例は、乱数その他の暗号文xに依存しない情報である。第一出力情報z1及び/又は第二出力情報z2の出力を禁止する制御の別の例は、第一出力情報z1及び/又は第二出力情報z2の生成自体を禁止する制御である。第一出力情報z1及び/又は第二出力情報z2の生成自体を禁止する制御を行う場合には、第一出力情報z1及び/又は第二出力情報z2の生成を行うために必要な情報を無効又は削除してもよいし、しなくてもよい。例えば、鍵記憶部1204に格納された復号鍵sを無効又は削除してもよいし、しなくてもよい。第一出力情報z1及び第二出力情報z2の両方の出力が禁止された場合、復号能力提供装置12はステップS1203で第一出力情報z1及び第二出力情報z2の両方を出力しない。そのため、復号装置11はステップS1104で第一出力情報z1及び第二出力情報z2の両方を取得できず、演算結果u及びvを計算できないため、正しい復号結果を得ることができない。これにより、復号装置11の復号能力を制限できる。≪復号処理の制御方法の例2≫復号処理の制御方法の例2では、復号制御命令が復号装置11の復号能力の制限を開放するための復号開放命令com-2を含み、復号開放命令com-2が復号能力提供装置12の制御部1205に入力された場合、制御部1205は第一出力情報z1及び第二出力情報z2の少なくとも一方の出力を許可する。復号処理の制御方法の例2は、例えば、復号処理の制御方法の例1によって第一出力情報z1及び第二出力情報z2の両方の出力が禁止された後、再び、第一出力情報z1及び第二出力情報z2の出力を許可する場合に行われる。この際、第一出力情報z1及び/又は第二出力情報z2の生成を行うために必要な情報が無効又は削除されていた場合には、復号開放命令com-2が当該情報を含み、当該情報を復号能力提供装置12に再設定することにしてもよい。その他、復号処理の制御方法の例2は、例えば、初期状態において第一出力情報z1及び第二出力情報z2の両方の出力が禁止されている場合に、第一出力情報z1及び第二出力情報z2の出力を許可する場合に行われてもよい。復号装置11の復号能力の制限を開放する場合、復号制御装置13図4の制御命令部1302が復号開放命令com-2を出力する。復号制限命令com-2は出力部1303から復号能力提供装置12に出力される。復号能力提供装置12図3の制御部1205は、復号開放命令com-2が入力されたか否かを判断し、復号開放命令com-2が制御部1205に入力されていない場合には復号制御処理を行わない。一方、復号開放命令com-2が制御部1205に入力された場合には、制御部1205は第一出力情報z1及び第二出力情報z2の両方の出力を許可する制御を行う復号許可モード。第一出力情報z1及び第二出力情報z2の両方の出力が許可された場合、復号能力提供装置12はステップS1203で第一出力情報z1又は第二出力情報z2の両方を出力する。そのため、復号装置11はステップS1104で第一出力情報z1又は第二出力情報z2の両方を取得でき、演算結果u又はvを計算できるため、高い確率で復号結果を得ることができる。これにより、復号装置11の復号能力の制限を開放することができる。[第二実施形態]第二実施形態の復号制御システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した例である。以下、第一実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。以下の説明において、同一の参照番号が付された部分は同一の機能を持つものとし、同一の参照番号が付されたステップは同一の処理を表すものとする。<構成>図1に例示するように、第二実施形態の復号制御システム2は、復号装置11が復号装置21に置換され、復号能力提供装置12が復号能力提供装置22に置換されたものである。図2に例示するように、第二実施形態の復号装置21は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部2104と第一計算部2105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部2108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。図5に例示するように、本形態の入力情報提供部2104は、例えば、第一乱数生成部2104aと第一入力情報計算部2104bと第二乱数生成部2104cと第二入力情報計算部2104dとを有する。図3に例示するように、第二実施形態の復号能力提供装置22は、例えば、第一出力情報計算部2201と第二出力情報計算部2202と鍵記憶部1204と制御部1205とを有する。<復号処理>次に本形態の復号処理を説明する。第二実施形態では、復号関数fxを準同型関数とし、群Hの生成元をμh、群Hの位数をKH、ν=fμhとする。復号関数fxが準同型関数である例はRSA暗号などである。その他の前提は、復号装置11が復号装置21に置換され、復号能力提供装置12が復号能力提供装置22に置換されている以外、第一実施形態と同一である。図7及び図8に例示するように、第二実施形態の処理は第一実施形態のステップS1103~S1105,S1108,S1200~S1203が、それぞれ、ステップS2103~S2105,S2108,S2200~S2203に置換されたものである。以下ではステップS2103~S2105,S2108,S2200~S2203の処理のみを説明する。《ステップS2103の処理》復号装置21図2の入力情報提供部2104は、入力された暗号文xにそれぞれ対応する第一入力情報τ1及び第二入力情報τ2を生成して出力する図7/ステップS2103。以下、図9を用いて本形態のステップS2103の処理を説明する。第一乱数生成部2104a図5は、0以上KH未満の自然数の一様乱数r1を生成する。生成された乱数r1は、第一入力情報計算部2104b及び第一計算部2105に送られるステップS2103a。第一入力情報計算部2104bは、入力された乱数r1と暗号文xと自然数bとを用いて第一入力情報τ1=μhr1xbを計算するステップS2103b。ここで、μhの右肩のr1は、r1のことである。このように、この出願において、αを第一の文字、βを第二の文字、γを数字として、αβγと表記した場合には、そのβγはβγ、すなわちβの下付きγを意味する。第二乱数生成部2104cは、0以上KH未満の自然数の一様乱数r2を生成する。生成された乱数r2は、第二入力情報計算部2104d及び第二計算部2108に送られるステップS2103c。第二入力情報計算部2104dは、入力された乱数r2と暗号文xと自然数aとを用いて第二入力情報τ2=μhr2xaを計算するステップS2103d。第一入力情報計算部2104b及び第二入力情報計算部2104dは、以上のように生成した第一入力情報τ1及び第二入力情報τ2を出力するステップS2103e。なお、本形態の第一入力情報τ1及び第二入力情報τ2は、それぞれ、乱数r1,r2によって暗号文xとの関係をかく乱させた情報である。これにより、復号装置22は、暗号文xを復号能力提供装置22に対して隠蔽できる。また、本形態の第一入力情報τ1は自然数選択部1102で選択された自然数bにさらに対応し、第二入力情報τ2は自然数選択部1102で選択された自然数aにさらに対応する。これにより、復号能力提供装置22から提供された復号能力を復号装置21が高い精度で評価できる。《ステップS2200~S2203の処理》図8に例示するように、まず、第一入力情報τ1=μhr1xbが復号能力提供装置22図3の第一出力情報計算部2201に入力され、第二入力情報τ2=μhr2xaが第二出力情報計算部2202に入力されるステップS2200。第一出力情報計算部2201は、第一入力情報τ1=μhr1xbと鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfμhr1xbを正しく計算し、得られた計算結果を第一出力情報z1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部2201での計算結果がfμhr1xbとなる場合もあれば、fμhr1xbとならない場合もあるステップS2201。第二出力情報計算部2202は、第二入力情報τ2=μhr2xaと鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfμhr2xaを正しく計算し、得られた計算結果を第二出力情報z2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部2202での計算結果がfμhr2xaとなる場合もあれば、fμhr2xaとならない場合もあるステップS2202。第一出力情報計算部2201は第一出力情報z1を出力し、第二出力情報計算部2202は第二出力情報z2を出力するステップS2203。《ステップS2104及びS2105の処理》図7に戻り、第一出力情報z1は復号装置21図2の第一計算部2105に入力され、第二出力情報z2は第二計算部2108に入力される。これらの第一出力情報z1及び第二出力情報z2が、復号能力提供装置22から復号装置21に与えられた復号能力に相当するステップS2104。第一計算部2105は、入力された乱数r1及び第一出力情報z1を用いてz1ν-r1を計算してその計算結果をuとする。計算結果uは、第一べき乗計算部1106に送られる。ここで、u=z1ν-r1=fxbx1となる。すなわち、z1ν-r1は、fxについて誤差X1を持つ乱数化可能標本器の出力となる。その理由については後述するステップS2105。《ステップS2108の処理》第二計算部2108は、入力された乱数r2及び第二出力情報z2を用いてz2ν-r2を計算してその計算結果をvとする。計算結果vは、第二べき乗計算部1109に送られる。ここで、v=z2ν-r2=fxax2となる。すなわち、z2ν-r2は、fxについて誤差X2を持つ乱数化可能標本器の出力となる。その理由については後述するステップS2108。≪z1ν-r1,z2ν-r2がfxについてそれぞれ誤差X1,X2を持つ乱数化可能標本器の出力となる理由について≫cを自然数、R及びR’を乱数として、復号能力提供装置22がμhRxcを用いて行う計算の計算結果をBμhRxcとする。すなわち、第一出力情報計算部2201や第二出力情報計算部2202が復号装置21に返す計算結果をz=BμhRxcとする。さらに、群Gに値を持つ確率変数XをX=BμhR’fμhR’-1と定義する。このとき、zν-R=BμhRxcfμh-R=XfμhRxcfμh-R=XfμhRfxcfμh-R=fxcXとなる。すなわち、zν-Rは、fxについて誤差Xを持つ乱数化可能標本器の出力となる。上記式展開において、X=BμhR’fμhR’-1=BμhRxcfμhRxc-1であり、BμhRxc=XfμhRxcであるという性質を用いている。この性質は、関数fxが準同型関数であり、R及びR’が乱数であることに基づく。したがって、a,bが自然数、r1,r2が乱数であることを考慮すると、同様に、z1ν-r1,z2ν-r2がfxについてそれぞれ誤差X1,X2を持つ乱数化可能標本器の出力となるのである。[第三実施形態]第三実施形態は第二実施形態の変形例であり、a=1やb=1のときに前述した標本器によってu又はvの値を計算する。一般に乱数化可能標本器よりも標本器の計算量は小さい。a=1やb=1のときに乱数化可能標本器に代わり、標本器が計算を行うことで、復号制御システムの計算量を小さくすることができる。以下、第一実施形態及び第二実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。<構成>図1に例示するように、第三実施形態の復号制御システム3は、復号装置21が復号装置31に置換され、復号能力提供装置22が復号能力提供装置32に置換されたものである。図2に例示するように、第三実施形態の復号装置31は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部2104と第一計算部2105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部2108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113と第三計算部3109とを有する。図3に例示するように、第三実施形態の復号能力提供装置32は、例えば、第一出力情報計算部2201と第二出力情報計算部2202と鍵記憶部1204と制御部1205と第三出力情報計算部3203とを有する。<復号処理>次に本形態の復号処理を説明する。第二実施形態との相違点を説明する。図7及び図8に例示するように、第三実施形態の処理は第二実施形態のステップS2103~S2105,S2108,S2200~S2203が、それぞれ、ステップS3103~S3105,S3108,S2200~S2203及びS3205~S3209に置換されたものである。以下ではステップS3103~S3105,S3108,S2200~S2203及びS3205~S3209の処理を中心に説明する。《ステップS3103の処理》復号装置31図2の入力情報提供部3104は、入力された暗号文xにそれぞれ対応する第一入力情報τ1及び第二入力情報τ2を生成して出力する図7/ステップS3103。以下、図9を用いて本形態のステップS3103の処理を説明する。制御部1113図2は、自然数選択部1102で選択された自然数a,bに応じて入力情報提供部3104を制御する。制御部1113でbが1であるかが判定されステップS3103a、b≠1であると判定された場合、前述のステップS2103a及びS2103bの処理が実行され、ステップS3103gに進む。一方、ステップS3103aでb=1であると判定された場合、第三乱数生成部3104eが、0以上KH未満の自然数の乱数r3を生成する。生成された乱数r3は第三入力情報計算部3104f及び第三計算部3109に送られるステップS3103b。第三入力情報計算部3104fは、入力された乱数r3と暗号文xとを用いてxr3を計算し、これを第一入力情報τ1とするステップS3103c。その後、ステップS3103gに進む。ステップS3103gでは、制御部1113でaが1であるかが判定されステップS3103g、a≠1であると判定された場合、前述のステップS2103c及びステップS2103dの処理が実行される。一方、ステップS3103gでa=1であると判定された場合、第三乱数生成部3104eが、0以上KH未満の自然数の乱数r3を生成する。生成された乱数r3は第三入力情報計算部3104fに送られるステップS3103h。第三入力情報計算部3104fは、入力された乱数r3と暗号文xとを用いてxr3を計算し、これを第二入力情報τ2とするステップS3103i。第一入力情報計算部2104b、第二入力情報計算部2104d、第三入力情報計算部3104fは、以上のように生成した第一入力情報τ1及び第二入力情報τ2を対応する自然数a,bの情報とともに出力するステップS3103e。なお、本形態の第一入力情報τ1及び第二入力情報τ2は、それぞれ、乱数r1,r2,r3によって暗号文xとの関係をかく乱させた情報である。これにより、復号装置31は、暗号文xを復号能力提供装置32に対して隠蔽できる。《S2200~S2203及びS3205~S3209の処理》以下、図8を用いて本形態のS2200~S2203及びS3205~S3209の処理を説明する。制御部1205図3は、入力された自然数a,bに応じ、第一出力情報計算部2201、第二出力情報計算部2202、及び第三出力情報計算部3203を制御する。制御部1205の制御に基づき、b≠1の場合の第一入力情報τ1=μhr1xbは復号能力提供装置32図3の第一出力情報計算部2201に入力され、a≠1の場合の第二入力情報τ2=μhr2xaは第二出力情報計算部2202に入力される。また、b=1の場合の第一入力情報τ1=xr3やa=1の場合の第二入力情報τ2=xr3は第三出力情報計算部3203に入力されるステップS3200。制御部1113でbが1であるかが判定されステップS3205、b≠1であると判定された場合、前述のステップS2201の処理が実行される。その後、制御部1113でaが1であるかが判定されステップS3208、a≠1であると判定された場合、前述したステップS2202の処理が実行されてステップS3203に進む。一方、ステップS3208でa=1であると判定された場合、第三出力情報計算部3203は、第二入力情報τ2=xr3を用い、或る確率より大きな確率でfxr3を正しく計算し、得られた計算結果を第三出力情報z3とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部3203での計算結果がfxr3となる場合もあれば、fxr3とならない場合もあるステップS3209。その後、ステップS3203に進む。また、ステップS3205でb=1であると判定された場合、第三出力情報計算部3203は、第二入力情報τ1=xr3を用い、或る確率より大きな確率でfxr3を正しく計算し、得られた計算結果を第三出力情報z3とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部3203での計算結果がfxr3となる場合もあれば、fxr3とならない場合もあるステップS3206。その後、制御部1113でaが1であるかが判定されステップS3207、a=1であると判定された場合にはステップS3203に進み、a≠1であると判定された場合にはステップS2202に進む。ステップS3203では、第一出力情報z1を生成した第一出力情報計算部2201は第一出力情報z1を出力し、第二出力情報z2を生成した第二出力情報計算部2202は第二出力情報z2を出力し、第三出力情報z3を生成した第三出力情報計算部2202は第三出力情報z3を出力するステップS3203。《ステップS3104及びS3105の処理》図7に戻り、制御部1113の制御のもと、第一出力情報z1は復号装置31図2の第一計算部2105に入力され、第二出力情報z2は第二計算部2108に入力され、第三出力情報z3は第三計算部3109に入力されるステップS3104。b≠1であれば、第一計算部2105が、前述のステップS2105の処理によってuを生成し、b=1であれば、第三計算部3109が、z31/r3を計算してその計算結果をuとする。計算結果uは第一べき乗計算部1106に送られる。ここで、b=1の場合、u=z31/r3=fxx3となる。すなわち、z31/r3は、fxについて誤差X3を持つ標本器となる。その理由については後述するステップS3105。《ステップS3108の処理》a≠1であれば、第二計算部2108が、前述のステップS2108の処理によってvを生成し、a=1であれば、第三計算部3109が、z31/r3を計算してその計算結果をvとする。計算結果vは第二べき乗計算部1109に送られる。ここで、a=1の場合、v=z31/r3=fxx3となる。すなわち、z31/r3は、fxについて誤差X3を持つ標本器となる。その理由については後述するステップS3108。なお、z31/r3の計算、すなわちz3のべき乗根の計算が困難な場合には、次のようにしてu及び/又はvを計算してもよい。第三計算部3109は、乱数r3とその乱数r3に基づいて計算されたz3の組を順次α1,β1,α2,β2,...,αm,βm,...として図示していない記憶部に記憶する。mは1以上の自然数である。第三計算部3109は、α1,α2,...,αmの最小公倍数が1になれば、γ1,γ2,...,γmを整数としてγ1α1γ2α2...γmαm=1となるγ1,γ2,...,γmを計算して、そのγ,γ2,...,γmを用いてΠi=1mβiγi=β1γ1β2γ2...βmγmを計算して、その計算結果をu及び/又はvとしてもよい。≪z31/r3がfxについて誤差X3を持つ標本器となる理由について≫Rを乱数として、復号能力提供装置32がxRを用いて行う計算の計算結果をBxRとする。すなわち、第一出力情報計算部2201や第二出力情報計算部2202や第三出力情報計算部3203が復号装置31に返す計算結果をz=BxRとする。さらに、群Gに値を持つ確率変数XをX=BxR1/Rfx-1と定義する。このとき、z1/R=BxR1/R=Xfx=fxXとなる。すなわち、z1/Rは、fxについて誤差Xを持つ標本器となる。上記式展開において、X=BxR1/RfxR-1であり、BxR1/R=XfxRであるという性質を用いている。この性質は、Rが乱数であることに基づく。したがって、r3が乱数であることを考慮すると、同様に、z31/r3がfxについて誤差X3を持つ標本器となるのである。[第四実施形態]第四実施形態の復号制御システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、H=G×G、復号関数fxがElGamal暗号の復号関数、すなわち復号鍵s及び暗号文x=c1,c2に対してfc1,c2=c1c2-sである場合の第一乱数化可能標本器及び第二乱数化可能標本器の例を具体化したものである。以下、第一実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。図1に例示するように、第四実施形態の復号制御システム4は、復号装置11が復号装置41に置換され、復号能力提供装置12が復号能力提供装置42に置換されたものである。図2に例示するように、第四実施形態の復号装置41は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部4104と第一計算部4105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部4108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。図6に例示するように、本形態の入力情報提供部4104は、例えば、第四乱数生成部4104aと第五乱数生成部4104bと第一入力情報計算部4104cと第六乱数生成部4104dと第七乱数生成部4104eと第二入力情報計算部4104fとを有する。第一入力情報計算部4104cは、例えば、第四入力情報計算部4104caと第五入力情報計算部4104cbとを有し、第二入力情報計算部4104fは、第六入力情報計算部4104faと第七入力情報計算部4104fbとを有する。図3に例示するように、第四実施形態の復号能力提供装置42は、例えば、第一出力情報計算部4201と第二出力情報計算部4202と鍵記憶部1204と制御部1205とを有する。<復号処理>次に本形態の復号処理を説明する。第四実施形態では、群H=G×G、暗号文x=c1,c2∈Hであり、fc1,c2が準同型関数であり、群Gの生成元をμgとし、群Gの位数をKGとし、同じ復号鍵sに対する暗号文V,W∈Hとその暗号文を復号した復号文fV,W=Y∈Gとの組が復号装置41及び復号能力提供装置42に事前設定され、復号装置41及び復号能力提供装置42がこの組を利用可能とされているものとする。図7及び図8に例示するように、第四実施形態の処理は第一実施形態のステップS1103~S1105,S1108,S1200~S1203が、それぞれ、ステップS4103~S4105,S4108,S4200~S4203に置換されたものである。以下ではステップS4103~S4105,S4108,S4200~S4203の処理のみを説明する。《ステップS4103の処理》復号装置41図2の入力情報提供部4104は、入力された暗号文x=c1,c2に対応する第一入力情報τ1及び暗号文x=c1,c2に対応する第二入力情報τ2を生成して出力する図7/ステップS4103。以下、図10を用いて本形態のステップS4103の処理を説明する。第四乱数生成部4104a図6は、0以上KG未満の自然数の一様乱数r4を生成する。生成された乱数r4は、第四入力情報計算部4104ca、第五入力情報計算部4104cb、及び第一計算部4105に送られるステップS4103a。第五乱数生成部4104bは、0以上KG未満の自然数の一様乱数r5を生成する。生成された乱数r5は、第五入力情報計算部4104cb、及び第一計算部4105に送られるステップS4103b。第四入力情報計算部4104caは、自然数選択部1102で選択された自然数b、暗号文xが含むc2、及び乱数r4を用い、第四入力情報c2bWr4を計算するステップS4103c。第五入力情報計算部4104cbは、自然数選択部1102で選択された自然数b、暗号文xが含むc1、及び乱数r4,r5を用い、第五入力情報c1bVr4μgr5を計算するステップS4103d。第六乱数生成部4104dは、0以上KG未満の自然数の一様乱数r6を生成する。生成された乱数r6は、第六入力情報計算部4104fa、第七入力情報計算部4104fb、及び第二計算部4108に送られるステップS4103e。第七乱数生成部4104eは、0以上KG未満の自然数の一様乱数r7を生成する。生成された乱数r7は、第七入力情報計算部4104fb、及び第二計算部4108に送られるステップS4103f。第六入力情報計算部4104faは、自然数選択部1102で選択された自然数a、暗号文xが含むc2、及び乱数r6を用い、第六入力情報c2aWr6を計算するステップS4103g。第七入力情報計算部4104fbは、自然数選択部1102で選択された自然数a、暗号文xが含むc1、及び乱数r6,r7を用い、第七入力情報c1aVr6μgr7を計算するステップS4103h。第一入力情報計算部4104cは、以上のように生成した第四入力情報c2bWr4及び第五入力情報c1bVr4μgr5を第一入力情報τ1=c2bWr4,c1bVr4μgr5として出力する。第二入力情報計算部4104fは、以上のように生成した第六入力情報c2aWr6及び第七入力情報c1aVr6μgr7を第二入力情報τ2=c2aWr6,c1aVr6μgr7として出力するステップS4103i。《ステップS4200~S4203の処理》図8に例示するように、まず、第一入力情報τ1=c2bWr4,c1bVr4μgr5が復号能力提供装置42図3の第一出力情報計算部4201に入力され、第二入力情報τ2=c2aWr6,c1aVr6μgr7が第二出力情報計算部4202に入力されるステップS4200。第一出力情報計算部4201は、第一入力情報τ1=c2bWr4,c1bVr4μgr5と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfc1bVr4μgr5,c2bWr4を正しく計算し、計算結果を第一出力情報z1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部4201での計算結果がfc1bVr4μgr5,c2bWr4となる場合もあれば、fc1bVr4μgr5,c2bWr4とならない場合もあるステップS4201。第二出力情報計算部4202は、第二入力情報τ2=c2aWr6,c1aVr6μgr7と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfc1aVr6μgr7,c2aWr6を正しく計算可能であり、得られた計算結果を第二出力情報z2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部4202での計算結果がfc1aVr6μgr7,c2aWr6となる場合もあれば、fc1aVr6μgr7,c2aWr6とならない場合もあるステップS4202。第一出力情報計算部4201は第一出力情報z1を出力し、第二出力情報計算部4202は第二出力情報z2を出力するステップS4203。《ステップS4104及びS4105の処理》図7に戻り、第一出力情報z1は復号装置41図2の第一計算部4105に入力され、第二出力情報z2は第二計算部4108に入力されるステップS4104。第一計算部4105は、入力された第一出力情報z1及び乱数r4,r5を用い、z1Y-r4μg-r5を計算してその計算結果をuとするステップS4105。計算結果uは、第一べき乗計算部1106に送られる。ここで、u=z1Y-r4μg-r5=fc1,c2bx1となる。すなわち、z1Y-r4μg-r5は、fc1,c2について誤差X1を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS4108の処理》第二計算部4108は、入力された第二出力情報z2及び乱数r6,r7を用い、z2Y-r6μg-r7を計算してその計算結果をvとする。計算結果vは、第二べき乗計算部1109に送られる。ここで、v=z2Y-r6μg-r7=fc1,c2ax2となる。すなわち、z2Y-r6μg-r7は、fc1,c2について誤差X2を持つ乱数化可能標本器の出力となる。その理由については後述する。≪z1Y-r4μg-r5,z2Y-r6μg-r7がfc1,c2についてそれぞれ誤差X1,X2を持つ乱数化可能標本器の出力となる理由について≫cを自然数、R1、R2、R1’及びR2’を乱数として、復号能力提供装置42がc1cVR1μgR2及びc2cWR1を用いて行う計算の計算結果をBc1cVR1μgR2,c2cWR1とする。すなわち、第一出力情報計算部4201や第二出力情報計算部4202が復号装置41に返す計算結果をz=Bc1cVR1μgR2,c2cWR1とする。さらに、群Gに値を持つ確率変数XをX=BVR1’μgR2’,WR1’fVR1’μgR2’,WR1’-1と定義する。このとき、zY-R1μg-R2=Bc1cVR1μgR2,c2cWR1Y-R1μg-R2=Xfc1cVR1μgR2,c2cWR1Y-R1μg-R2=Xfc1,c2cfV,WR1fμg,egR2Y-R1μg-R2=Xfc1,c2cYR1μgR2Y-R1μg-R2=fc1,c2cXとなる。すなわち、zY-R1μg-R2は、fxについて誤差Xを持つ乱数化可能標本器の出力となる。なお、egは、群Gの単位元である。上記式展開において、X=BVR1’μgR2’,WR1’fVR1’μgR2’,WR1’-1=Bc1cVR1μgR2,c2cWR1fc1cVR1μgR2,c2cWR1であり、Bc1cVR1μgR2,c2cWR1=Xfc1cVR1μgR2,c2cWR1であるという性質を用いている。この性質は、R1、R2、R1’及びR2’が乱数であることに基づく。したがって、a,bが自然数、r4,r5,r6及びr7が乱数であることを考慮すると、同様に、z1Y-r4μg-r5,z2Y-r6μg-r7がfc1,c2についてそれぞれ誤差X1,X2を持つ乱数化可能標本器の出力となるのである。[第五実施形態]上述の各実施形態では、復号装置の自然数記憶部1101に、互いに素である2つの自然数a,bの組a,bが複数種類記憶され、これらの組a,bを用いて各処理が実行されることとした。しかしながら、a,bの一方が定数であってもよい。例えば、aが1に固定されていてもよいし、bが1に固定されていてもよい。言い換えると、第一乱数化可能標本器又は第二乱数化可能標本器の一方が標本器に置換されていてもよい。a,bの一方が定数である場合、定数とされたa又はbを選択する処理が不要となり、各処理部は定数とされたa又はbが入力されることなく、それを定数として扱って計算を行うことができる。また、定数とされたa又はbが1である場合には、a’やb’を用いることなく、fx=ub’va’をfx=v又はfx=uとして得ることができる。第五実施形態は、そのような変形の一例であり、bが1に固定され、第二乱数化可能標本器が標本器に置換された形態である。以下では、第一実施形態との相違点を中心に説明し、復号制御処理などの第一実施形態と共通する事項については説明を省略する。また、第一乱数化可能標本器や標本器の具体例も、第二実施形態から第四実施形態で説明したのと同様であるため、説明を省略する。<構成>図1に例示するように、第五実施形態の復号制御システム5は、第一実施形態の復号装置11が復号装置51に置換され、復号能力提供装置12が復号能力提供装置52に置換されたものである。図11に例示するように、第五実施形態の復号装置51は、例えば、自然数記憶部5101と自然数選択部5102と入力情報提供部5104と第一計算部5105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部5108と第二リスト記憶部5110と判定部5111と最終出力部1112と制御部1113とを有する。図3に例示するように、第五実施形態の復号能力提供装置52は、例えば、第一出力情報計算部5201と第二出力情報計算部5202と鍵記憶部1204と制御部1205とを有する。<復号処理>次に本形態の復号処理を説明する。復号処理の前提として、G,Hを巡回群、fxを群Hの元である暗号文xを特定の復号鍵sで復号して群Gの元を得るための復号関数、群G,Hの生成元をそれぞれμg,μh、X1,X2を群Gに値を持つ確率変数、確率変数X1の実現値をx1、確率変数X2の実現値をx2とする。また、復号装置51の自然数記憶部5101には、自然数aが複数種類記憶されているものとする。図12に例示するように、まず、復号装置51図11の自然数選択部5102が、自然数記憶部5101に記憶された複数の自然数aから1つの自然数aをランダムに読み込む。読み込まれた自然数aの情報は、入力情報提供部5104及び第一べき乗計算部1106に送られるステップS5100。制御部1113は、t=1とするステップS1102。入力情報提供部5104は、入力された暗号文xにそれぞれ対応する第一入力情報τ1及び第二入力情報τ2を生成して出力する。好ましくは、第一入力情報τ1及び第二入力情報τ2はそれぞれ暗号文xとの関係をかく乱させた情報である。これにより、復号装置51は、暗号文xを復号能力提供装置52に対して隠蔽できる。また、好ましくは、本形態の第二入力情報τ2は自然数選択部5102で選択された自然数aにさらに対応する。これにより、復号能力提供装置52から提供された復号能力を復号装置51が高い精度で評価できるステップS5103。第一入力情報τ1及び第二入力情報τ2の組みの具体例は、第二実施形態から第四実施形態の何れかのb=1とした第一入力情報τ1及び第二入力情報τ2の組みである。図8に例示するように、第一入力情報τ1は復号能力提供装置52図3の第一出力情報計算部5201に入力され、第二入力情報τ2は第二出力情報計算部5202に入力されるステップS5200。第一出力情報計算部5201は、第一入力情報τ1と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfτ1を正しく計算し、得られた計算結果を第一出力情報z1とするステップS5201。第二出力情報計算部5202は、第二入力情報τ2と鍵記憶部1204に格納された復号鍵sとを用い、或る確率より大きな確率でfτ2を正しく計算し、得られた演算結果を第二出力情報z2とするステップS5202。すなわち、第一出力情報計算部5201や第二出力情報計算部5202は、意図的又は意図的ではない誤差を含んだ計算結果を出力する。言い換えると、第一出力情報計算部5201での計算結果がfτ1の場合もあればfτ1でない場合もあり、第二出力情報計算部5202での計算結果がfτ2の場合もあればfτ2でない場合もある。第一出力情報z1及び第二出力情報z2の組の具体例は、第二実施形態から第四実施形態の何れかのb=1とした第一出力情報z1及び第二出力情報z2の組である。第一出力情報計算部5201は第一出力情報z1を出力し、第二出力情報計算部5202は第二出力情報z2を出力するステップS5203。図12に戻り、第一出力情報z1は復号装置51図11の第一計算部5105に入力され、第二出力情報z2は第二計算部5108に入力される。これらの第一出力情報z1及び第二出力情報z2が、復号能力提供装置52から復号装置51に与えられた復号能力に相当するステップS5104。第一計算部5105は、第一出力情報z1から演算結果u=fxx1を生成する。演算結果uの具体例は、第二実施形態から第四実施形態の何れかのb=1とした演算結果uである。演算結果uは第一べき乗計算部1106に送られるステップS5105。第一べき乗計算部1106はu’=uaを計算する。計算結果uとその計算結果に基づいて計算されたu’との組u,u’は、第一リスト記憶部1107に記憶されるステップS1106。第二計算部5108は、第二出力情報z2から演算結果v=fxax2を生成する。演算結果vの具体例は、第二実施形態から第四実施形態の何れかの演算結果vである。演算結果vは第二リスト記憶部5110に記憶されるステップS5108。判定部5111は、第一リスト記憶部1107に記憶された組u,u’及び第二リスト記憶部5110に記憶されたvの中で、u’=vとなるものがあるか判定するステップS5110。u’=vとなるものがあった場合には、ステップS5114に進む。u’=vとなるものがなかった場合には、ステップS1111に進む。ステップS1111では、制御部1113がt=Tであるか判定するステップS1111。Tは予め定められた1以上の自然数である。t=Tであれば、最終出力部1112が、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS1113、処理を終える。t=Tでない場合には、制御部1113は、tを1だけインクリメント、すなわちt=t1としてステップS1112、ステップS5103に戻る。ステップS5114では、最終出力部1112が、u’=vであると判定されたu’に対応するuを出力するステップS5114。このように得られたuは、第一実施形態から第四実施形態でb=1とした場合のub’va’に相当する。すなわち、このように得られたuは高い確率で暗号文xを特定の復号鍵sで復号した復号結果fxとなる。よって、上述した処理を複数回繰り返し、ステップS5114で得られた値のうち最も頻度の高い値を復号結果とすればよい。また、後述するように、設定によっては圧倒的な確率でu=fxとなる。その場合にはステップS5114で得られた値をそのまま復号結果としてよい。≪復号結果fxが得られる理由について≫次に、本形態の復号装置51で復号結果fxが得られる理由を説明する。まず、説明に必要な事項を定義する。ブラックボックスblack-box:fτのブラックボックスFτとは、τ∈Hを入力としてz∈Gを出力する処理部を意味する。本形態では、第一出力情報計算部5201及び第二出力情報計算部5202が、それぞれ復号関数fτのブラックボックスFτに相当する。群Hから任意に選択された元τ∈UH及びz=Fτに対してz=fτを満たす確率がδ0<δ≦1よりも大きい場合、すなわち、Pr[z=fτ|τ∈UH,z=Fτ]>δ...1を満たすfτのブラックボックスFτのことを、信頼性δδ-reliableのfτのブラックボックスFτという。なお、δは正の値であり、前述した或る確率に相当する。自己訂正器self-corrector:自己訂正器CFxとは、x∈Hを入力とし、fτのブラックボックスFτを用いて計算を行い、j∈G∪⊥を出力する処理部を意味する。本形態では、復号装置51が自己訂正器CFxに相当する。オールモスト自己訂正器almostself-corrector:自己訂正器CFxが、x∈Hを入力とし、δ-reliableのfτのブラックボックスFτを用い、正しい値j=fxを出力する確率が、誤った値j≠fxを出力する確率よりも十分大きい場合を想定する。すなわち、Pr[j=fx|j=CFx,j≠⊥]>Pr[j≠fx|j=CFx,j≠⊥]Δ...2を満たす場合を想定する。なお、Δは或る正の値0<Δ<1である。このような場合、自己訂正器CFxはオールモスト自己訂正器であるという。例えば、或る正の値Δ’0<Δ’<1に対してPr[j=fx|j=CFx]>1/3Δ’Pr[j=⊥|j=CFx]<1/3Pr[j≠fxかつj≠⊥|j=CFx]<1/3を満たす場合、自己訂正器CFxはオールモスト自己訂正器である。Δ’の例はΔ’=1/12や1/3である。ローバスト自己訂正器robustself-corrector:自己訂正器CFxが、x∈Hを入力とし、δ-reliableのfτのブラックボックスFτを用い、正しい値j=fx又はj=⊥を出力する確率が圧倒的である場合を想定する。すなわち、無視することができる誤差ξ0≦ξ<1に対してPr[j=fxまたはj=⊥|j=CFx]>1-ξ...3を満たす場合を想定する。このような場合、自己訂正器CFxはローバスト自己訂正器であるという。なお、無視することができる誤差ξの例は、セキュリティパラメータkの関数値ξkである。関数値ξkの例は、任意の多項式pkについて、十分大きいkに対して{ξkpk}が0に収束するものである。関数値ξkの具体例は、ξk=2-kやξk=2-√kなどである。また、オールモスト自己訂正器からローバスト自己訂正器を構成することができる。すなわち、同一のxに対してオールモスト自己訂正器を複数回実行させ、⊥を除いて最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。例えば、同一のxに対してオールモスト自己訂正器をOlog1/ξ回実行させ、最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。なお、Oはオー記法を表す。擬似自由pseudo-freeな作用:群G、自然数の集合Ω={0,...,M}Mは1以上の自然数、群Gに値を持つ確率変数X1,X2の各実現値α∈X1α≠eg,β∈X2、及びa∈Ωについて、αa=βとなる確率Pr[αa=βかつα≠eg|a∈UΩ,α∈X1,β∈X2]...4について、あらゆる可能なX1,X2に関する上限値を、組G,Ωの疑似自由指標とよび、これをPG,Ωと表すことにする。ある無視することができる関数ζkが存在して、PG,Ω<ζk...5である場合、組G,Ωによって定義される演算は擬似自由な作用であるという。なお、αaは、群Gで定義された演算をαに対してa回作用させることを意味する。また、無視することができる関数ζkの例は、任意の多項式pkについて、十分大きいkに対して{ζkpk}が0に収束するものである。関数ζkの具体例は、ζk=2-kやζk=2-√kなどである。例えば、セキュリティパラメータkとに対し、式4の確率がO2-k未満である場合、組G,Ωによって定義される演算は擬似自由な作用である。また、例えば、任意の∀α∈Gでα≠egであるものについて、集合Ωα={aα|a∈Ω}の要素数|Ωα|が2kを超える場合、組G,Ωによって定義される演算は擬似自由な作用といえる。なお、aαは、aとαに所定の演算を作用させた結果を表す。このような具体例は数多く存在する。例えば、群Gが素数pを法とする剰余群Z/pZであり、素数pが2kのオーダーであり、集合Ω={0,...,p-2}であり、aαがαa∈Z/pZであり、α≠egである場合、Ωα={αa|a=0,...,p-2}={eg,α1,...,αp-2}となり、|Ωα|=p-1である。素数pが2kのオーダーであるため、ある定数Cが存在して、kが十分大きければ|Ωα|>C2kを満たす。ここで式4の確率はC-12-k未満であり、このような組G,Ωによって定義される演算は擬似自由な作用である。信頼性δγδγ-reliableの乱数化可能標本器:自然数aが与えられるたびに、δ-reliableのfτのブラックボックスFτを用い、w∈Gについて、確率変数Xに従った標本x’に対応するwax’を返す乱数化可能標本器であって、wax’=waである確率がδγよりも大きいγは正定数、すなわち、Pr[wax’=wa]>δγ...6を満たすものを、信頼性δγな乱数化可能標本器という。本形態の入力情報提供部5104と第二出力情報計算部5202と第二計算部5108との組は、w=fxについて、信頼性δγな乱数化可能標本器である。次に、これらの定義を用い、本形態の復号装置51で復号結果fxが得られる理由を説明する。本形態のステップS5110ではu’=vであるか、すなわち、ua=vであるかを判定している。本形態の入力情報提供部5104と第二出力情報計算部5202と第二計算部5108との組は信頼性δγな乱数化可能標本器であるため式6、Tをk,δ,γから定まる一定値よりも大きい値とすれば、漸近的に大きい確率でua=vが成立するステップS5110でyesとなる場合が生じる。たとえば、T≧4/δγとすれば、ua=vが成立するステップS5110でyesとなる確率は1/2よりも大きいことがMarkovの不等式によってわかる。また、本形態ではu=fxx1及びv=fxax2なのであるから、ua=vが成立する場合にはx1a=x2が成立する。x1a=x2が成立する場合には、x1=x2=egである場合とx1≠egである場合とがある。x1=x2=egである場合には、u=fxとなるのであるから、ステップS5114で出力されるuは正しい復号結果fxとなる。一方、x1≠egである場合には、u≠fxとなるのであるから、ステップS5114で出力されるuは正しい復号結果fxではない。群Gと自然数aが属する集合Ωとの組G,Ωによって定義される演算が擬似自由な作用であるか、疑似自由指標PG,ΩについてT2PG,Ωが漸近的に小さい場合、ua=vの場合にx1≠egである確率式4は漸近的に小さい。したがって、ua=vの場合にx1=egである確率は漸近的に大きい。よって、組G,Ωによって定義される演算が擬似自由な作用であるか、T2PG,Ωが漸近的に小さい場合、ua=vの場合に誤った復号結果fxが出力される確率は、ua=vの場合に正しい復号結果fxが出力される確率よりも十分小さい。この場合の復号装置51はオールモスト自己訂正器であるといえる式2参照。そのため、前述のように、復号装置51からローバスト自己訂正器を構成することが可能であり、圧倒的な確率で正しい復号結果fxを得ることができる。G,Ωで定義される演算が疑似自由な作用である場合には、ua=vの場合に誤った復号結果fxが出力される確率も無視できる。この場合の復号装置51は、圧倒的な確率で正しい復号結果fxまたは⊥を出力する。なお、任意の定数ρに対してk0が定まり、このk0に対してk0<k’を満たす任意のk’に対する関数値ηk’がρ未満となる場合ηk’が漸近的に小さいという。k’の例はセキュリティパラメータkである。また、任意の定数ρに対してk0が定まり、このk0に対してk0<k’を満たす任意のk’に対する関数値1-ηk’がρ未満となる場合ηk’が漸近的に大きいという。なお、aをa/bに置換すれば分かるように、上述の証明は第一実施形態で述べたu’=v’が成立するのは、第一乱数化可能標本器がu=fφbを正しく計算しており、第二乱数化可能標本器がv=fφaを正しく計算しているx1及びx2が群Gの単位元egである可能性が高いことの証明ともなる。《信頼性δγな乱数化可能標本器と安全性について》以下のような攻撃を想定する。ブラックボックスFτ又はその部分が意図的に不正なzを出力する、又は、ブラックボックスFτから出力された値が不正なzに改ざんされる。不正なzに対応するwax’が乱数化可能標本器から出力される。不正なzに対応するwax’は、自己訂正器CFxでua=vが成立するステップS5110でyesなるにもかかわらず、自己訂正器CFxが誤った値を出力する確率を増加させる。このような攻撃は、与えられた自然数aに対して乱数化可能標本器から出力されたwax’の誤差の確率分布Da=wax’w-aが自然数aに依存する場合に可能となる。例えば、第二計算部5108から出力されるvがfxax1aとなるような不正が行われた場合、x1の値にかかわらず、必ずua=vが成立することになる。よって、与えられた自然数aに対して乱数化可能標本器から出力されたwax’の誤差の確率分布Da=wax’w-aが当該自然数aに依存しないことが望ましい。あるいは、、集合Ωのいかなる元a∈∀Ωについても、wax’の誤差の確率分布Da=wax’w-aと区別することができない群Gに値を持つ確率分布Dが存在する確率分布Daと確率分布Dとが統計的に近似するstatistically-close乱数化可能標本器であることが望ましい。なお、確率分布Dは自然数aに依存しない。また、確率分布Daと確率分布Dとを区別することができないとは、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができないことを意味し、例えば、無視することができるζ0≦ζ<1に対してΣg∈G|Pr[g∈D]-Pr[g∈Da]|<ζ...7を満たすならば、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができない。無視することができるζの例は、セキュリティパラメータkの関数値ζkである。関数値ζkの例は、任意の多項式pkについて、十分大きいkに対して{ζkpk}が0に収束するものである。関数値ζkの具体例は、ζk=2-kやζk=2-√kなどである。また、これらの点は自然数a及びbを使用する第一実施形態から第四実施形態についても同様である。[変形例等]確率変数X1、X2及びX3は、同じでも異なっていてもよい。第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部のそれぞれが一様乱数を生成することにより、復号制御システムの安全性を高くできる。しかし、求める安全性のレベルがそれほど高くない場合には、第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部の少なくとも一部が、一様乱数ではない乱数を生成してもよい。また、演算効率上からは、上述の各実施形態のように0以上KH未満の自然数である乱数や0以上KG未満の自然数である乱数が選択されることが望ましいが、それらの代わりにKH以上やKG以上の自然数の乱数が選択されてもよい。復号装置が同一のa,bに対応する第一入力情報τ1及び第二入力情報τ2を復号能力提供装置に提供するたびに、復号能力提供装置の処理が複数回実行させてもよい。これにより、復号装置が第一入力情報τ1及び第二入力情報τ2を復号能力提供装置に一回提供するたびに、復号装置は第一出力情報z1や第二出力情報z2や第三出力情報z3を複数個得ることができる。これにより、復号装置と復号能力提供装置との間のやり取り回数や通信量を減らすことができる。また、復号装置が複数種類の第一入力情報τ1及び第二入力情報τ2を復号能力提供装置にまとめて提供し、対応する第一出力情報z1や第二出力情報z2や第三出力情報z3を複数個まとめて取得してもよい。これにより、復号装置と復号能力提供装置との間のやり取り回数を減らすことができる。復号装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。同様に、復号能力提供装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。また、各実施形態の第一計算部や第二計算部において得られたuやvが群Gの元であるかを確認し、群Gの元であった場合には上述した処理を続行し、u又はvが群Gの元でなかった場合には、計算をすることができなかった旨の情報、例えば記号⊥が出力されてもよい。その他、本発明は上述の実施形態に限定されるものではない。例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。また、上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。また、このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASPApplicationServiceProvider型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるものコンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等を含むものとする。"