"計算装置と能力提供装置とを有し、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’を出力する最終出力部と、を含む、代理計算システム。請求項1の代理計算システムにおいて、前記計算装置が、前記自然数a,bの少なくとも一方を選択する自然数選択部を含み、前記第一入力情報τ1が、前記自然数bにさらに対応し、前記第二入力情報τ2が、前記自然数aにさらに対応する、代理計算システム。請求項2の代理計算システムにおいて、前記入力情報提供部は、前記暗号文xとの関係をかく乱させた情報を前記第一入力情報τ1及び前記第二入力情報τ2とする、代理計算システム。請求項1の代理計算システムにおいて、前記入力情報提供部は、前記暗号文xとの関係をかく乱させた情報を前記第一入力情報τ1及び前記第二入力情報τ2とする、代理計算システム。請求項1から4の何れかの代理計算システムにおいて、前記復号関数fxが準同型関数、前記群Hが巡回群で、前記巡回群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を得る、代理計算システム。請求項5の代理計算システムにおいて、前記第一乱数生成部が、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のときにz31r3を前記計算結果uとし、a=1のときにz31r3を前記計算結果vとする第3計算部を含む、代理計算システム。請求項1から4の何れかの代理計算システムにおいて、前記群Hが前記群Gの直積群G×Gであり、前記復号関数fxが準同型関数、前記群Gが巡回群で前記巡回群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とし、前記第一計算部が、z1Yr4μgr5を計算して前記計算結果uを得、前記第二計算部が、z2Yr6μgr7を計算して前記計算結果vを得る、代理計算システム。請求項1から4の何れかの代理計算システムにおいて、前記計算結果uのfxbに対する誤差の確率分布が前記自然数bに依存しない、及び/若しくは、前記計算結果vのfxaに対する誤差の確率分布が前記自然数aに依存しない、又は、前記計算結果uのfxbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記計算結果vのfxaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項5の代理計算システムにおいて、前記計算結果uのfxbに対する誤差の確率分布が前記自然数bに依存しない、及び/若しくは、前記計算結果vのfxaに対する誤差の確率分布が前記自然数aに依存しない、又は、前記計算結果uのfxbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記計算結果vのfxaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項7の代理計算システムにおいて、前記計算結果uのfxbに対する誤差の確率分布が前記自然数bに依存しない、及び/若しくは、前記計算結果vのfxaに対する誤差の確率分布が前記自然数aに依存しない、又は、前記計算結果uのfxbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記計算結果vのfxaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項1から4の何れかの代理計算システムにおいて、前記自然数a又は前記自然数bが定数である、代理計算システム。請求項5の代理計算システムにおいて、前記自然数a又は前記自然数bが定数である、代理計算システム。請求項7の代理計算システムにおいて、前記自然数a又は前記自然数bが定数である、代理計算システム。請求項1から4の何れかの代理計算システムにおいて、復号制御装置をさらに有し、前記復号制御装置は、前記計算装置の復号処理を制御する復号制御命令を前記能力提供装置に出力する出力部を含み、前記能力提供装置は、前記復号制御命令に従って、前記第一出力情報計算部及び前記第二出力情報計算部から、前記第一出力情報z1及び前記第二出力情報z2の両方が出力されるか否かを制御する制御部を含む、代理計算システム。請求項5の代理計算システムにおいて、復号制御装置をさらに有し、前記復号制御装置は、前記計算装置の復号処理を制御する復号制御命令を前記能力提供装置に出力する出力部を含み、前記能力提供装置は、前記復号制御命令に従って、前記第一出力情報計算部及び前記第二出力情報計算部から、前記第一出力情報z1及び前記第二出力情報z2の両方が出力されるか否かを制御する制御部を含む、代理計算システム。請求項7の代理計算システムにおいて、復号制御装置をさらに有し、前記復号制御装置は、前記計算装置の復号処理を制御する復号制御命令を前記能力提供装置に出力する出力部を含み、前記能力提供装置は、前記復号制御命令に従って、前記第一出力情報計算部及び前記第二出力情報計算部から、前記第一出力情報z1及び前記第二出力情報z2の両方が出力されるか否かを制御する制御部を含む、代理計算システム。請求項1の代理計算システムにおいて、復号制御装置をさらに有し、Gι,Hιが群、ωが2以上の整数、ι=1,,ω、fιλιが前記群Hιの元である暗号文λιを特定の復号鍵sιで復号して前記群Gιの元を得るための復号関数、Xι1,Xι2が前記群Gιに値を持つ確率変数、xι1が確率変数Xι1の実現値、xι2が確率変数Xι2の実現値、aι,bιが互いに素である自然数であり、前記群Gが群G1、前記群Hが群H1、前記暗号文xが暗号文λ1、前記復号関数fxが復号関数f1λ1、前記確率変数X1が確率変数X11、前記確率変数X2が確率変数X12、前記実現値x1が実現値x11、前記実現値x2が実現値x12、前記自然数aが自然数a1、前記自然数bが自然数b1であり、前記計算装置が、前記暗号文λιに対応する、前記群Hιの元である第一入力情報τι1及び第二入力情報τι2を出力する入力情報提供部を含み、前記能力提供装置が、前記第一入力情報τι1を用い、或る確率より大きな確率でfιτι1を正しく計算し、得られた演算結果を第一出力情報zι1として出力する第一出力情報計算部と、前記第二入力情報τι2を用い、或る確率より大きな確率でfιτι2を正しく計算し、得られた演算結果を第二出力情報zι2として出力する第二出力情報計算部と、を含み、前記第一計算部が、前記第一出力情報zι1から演算結果uι=fιλιbxι1を生成し、前記第二計算部が、前記第二出力情報zι2から演算結果vι=fιλιaxι2を生成し、前記最終出力部が、前記演算結果uι及びvιがuιa=vιbを満たす場合に、a’ιaιb’ιbι=1を満たす整数a’ι,b’ιについてのuιb’vιa’を出力し、前記復号制御装置が、前記計算装置の復号処理を制御する復号制御命令を前記能力提供装置に出力する出力部を含み、前記能力提供装置が、さらに、前記復号制御命令に従って、前記第一出力情報計算部及び前記第二出力情報計算部から、前記第一出力情報zι1及び前記第二出力情報zι2の両方が出力されるか否かを制御する制御部を含む、代理計算システム。請求項17の代理計算システムにおいて、前記復号制御命令は、何れかの前記復号関数fιに対応し、前記制御部は、前記復号制御命令に対応する前記復号関数fι、に対応する前記第一出力情報zι1及び前記第二出力情報zι2の両方の出力の有無を制御する、代理計算システム。請求項17の代理計算システムにおいて、前記計算装置が、さらに前記最終出力部から出力された各ι=1,,ωについてのuιb’vιa’を用い、各ι=1,,ωについての前記暗号文λιを前記復号鍵sιで復号して得られる復号値がすべて得られた場合にのみ復元可能な復元値を生成する復元処理を行う復元部を含む、代理計算システム。請求項18の代理計算システムにおいて、前記計算装置が、さらに前記最終出力部から出力された各ι=1,,ωについてのuιb’vιa’を用い、各ι=1,,ωについての前記暗号文λιを前記復号鍵sιで復号して得られる復号値がすべて得られた場合にのみ復元可能な復元値を生成する復元処理を行う復元部を含む、代理計算システム。請求項17から20の何れかの代理計算システムにおいて、前記計算装置が、前記自然数aι,bιの少なくとも一部を選択する自然数選択部を含み、前記第一入力情報τι1が前記自然数bιにさらに対応し、前記第二入力情報τι2が前記自然数aιにさらに対応する、代理計算システム。請求項21の代理計算システムにおいて、前記入力情報提供部は、前記暗号文λιとの関係をかく乱させた情報を前記第一入力情報τι1及び前記第二入力情報τι2とする、代理計算システム。請求項17から20の何れかの代理計算システムにおいて、前記入力情報提供部は、前記暗号文λιとの関係をかく乱させた情報を前記第一入力情報τι1及び前記第二入力情報τι2とする、代理計算システム。請求項17から20の何れかの代理計算システムにおいて、前記復号関数fιが準同型関数、前記群Hιが巡回群で、前記巡回群Hιの生成元がμιh、前記巡回群Hιの位数がKιH、νι=fιμιhであり、前記入力情報提供部が、0以上の自然数の乱数rι,1を生成する第一乱数生成部と、前記第一入力情報τι1としてμιhrλιbを計算する第一入力情報計算部と、0以上の自然数の乱数rι,2を生成する第二乱数生成部と、前記第二入力情報τι2としてμιhrλιaを計算する第二入力情報計算部と、を含み、前記第一出力情報計算部は、前記第一入力情報μιhrλιbを用い、或る確率より大きな確率でfιμιhλιbを正しく計算し、得られた計算結果を前記第一出力情報zι1とし、前記第二出力情報計算部は、前記第二入力情報μιhrλιaを用い、或る確率より大きな確率でfιμιhrλιaを正しく計算し、得られた計算結果を第二出力情報zι2とし、前記第一計算部は、zι1νιrを計算して前記計算結果uιを得、前記第二計算部は、zι2νιrを計算して前記計算結果vιを得る、代理計算システム。請求項24の代理計算システムにおいて、前記第一乱数生成部が、bι≠1のときに前記乱数rι,1を生成し、前記第一入力情報計算部が、bι≠1のときに前記第一入力情報τι1として前記μιhrλιbを計算し、前記第一出力情報計算部が、bι≠1のときに前記第一入力情報μιhrλιbを用いて得られた前記計算結果を前記第一出力情報zι1とし、前記第一計算部が、bι≠1のときにzι1νιrを計算して前記計算結果uιを得、前記第二乱数生成部が、aι≠1のときに前記乱数rι,2を生成し、前記第二入力情報計算部が、aι≠1のときに前記第二入力情報τι2としてμιhrλιaを計算し、前記第二出力情報計算部が、aι≠1のときに前記第二入力情報μιhrλιaを用いて得られた前記計算結果を第二出力情報zι2とし、前記第二計算部が、aι≠1のときにzι2νιrを計算して前記計算結果vιを得、前記入力情報提供部が、0以上の自然数の乱数rι,3を生成する第三乱数生成部と、bι=1のときにλιrを前記第一入力情報τι1とし、aι=1のときにλιrを前記第二入力情報τι2とする第三入力情報計算部と、を含み、前記能力提供装置が、前記xrを用い、或る確率より大きな確率でfιλιrを正しく計算し、得られた計算結果を第三出力情報zι3とする第三出力情報計算部を含み、前記計算装置が、bι=1のときにzι31rを前記計算結果uιとし、aι=1のときにzι31rを前記計算結果vιとする第三計算部を含む、代理計算システム。請求項21の代理計算システムにおいて、前記復号関数fιが準同型関数、前記群Hιが巡回群で、前記巡回群Hιの生成元がμιh、前記巡回群Hιの位数がKιH、νι=fιμιhであり、前記入力情報提供部が、0以上の自然数の乱数rι,1を生成する第一乱数生成部と、前記第一入力情報τι1としてμιhrλιbを計算する第一入力情報計算部と、0以上の自然数の乱数rι,2を生成する第二乱数生成部と、前記第二入力情報τι2としてμιhrλιaを計算する第二入力情報計算部と、を含み、前記第一出力情報計算部は、前記第一入力情報μιhrλιbを用い、或る確率より大きな確率でfιμιhλιbを正しく計算し、得られた計算結果を前記第一出力情報zι1とし、前記第二出力情報計算部は、前記第二入力情報μιhrλιaを用い、或る確率より大きな確率でfιμιhrλιaを正しく計算し、得られた計算結果を第二出力情報zι2とし、前記第一計算部は、zι1νιrを計算して前記計算結果uιを得、前記第二計算部は、zι2νιrを計算して前記計算結果vιを得る、代理計算システム。請求項26の代理計算システムにおいて、前記第一乱数生成部が、bι≠1のときに前記乱数rι,1を生成し、前記第一入力情報計算部が、bι≠1のときに前記第一入力情報τι1として前記μιhrλιbを計算し、前記第一出力情報計算部が、bι≠1のときに前記第一入力情報μιhrλιbを用いて得られた前記計算結果を前記第一出力情報zι1とし、前記第一計算部が、bι≠1のときにzι1νιrを計算して前記計算結果uιを得、前記第二乱数生成部が、aι≠1のときに前記乱数rι,2を生成し、前記第二入力情報計算部が、aι≠1のときに前記第二入力情報τι2としてμιhrλιaを計算し、前記第二出力情報計算部が、aι≠1のときに前記第二入力情報μιhrλιaを用いて得られた前記計算結果を第二出力情報zι2とし、前記第二計算部が、aι≠1のときにzι2νιrを計算して前記計算結果vιを得、前記入力情報提供部が、0以上の自然数の乱数rι,3を生成する第三乱数生成部と、bι=1のときにλιrを前記第一入力情報τι,1とし、aι=1のときにλιrを前記第二入力情報τι2とする第三入力情報計算部と、を含み、前記能力提供装置が、前記xrを用い、或る確率より大きな確率でfιλιrを正しく計算し、得られた計算結果を第三出力情報zι3とする第三出力情報計算部を含み、前記計算装置が、bι=1のときにzι31rを前記計算結果uιとし、aι=1のときにzι31rを前記計算結果vιとする第三計算部を含む、代理計算システム。請求項17から20の何れかの代理計算システムにおいて、前記群Hιが直積群Gι×Gι、前記復号関数fιが準同型関数、前記群Gιが巡回群で、前記巡回群Gιの生成元がμιg、前記巡回群Gιの位数がKιG、λι=cι1,cι2,Vι,Wιが前記群Hιの元、fιVι,Wι=Yιであり、前記入力情報提供部が、0以上の自然数の乱数rι,4を生成する第四乱数生成部と、0以上の自然数の乱数rι,5を生成する第五乱数生成部と、前記第一入力情報τι1としてcι2bWιr及びcι1bVιrμιgrを計算する第一入力情報計算部と、0以上の自然数の乱数rι,6を生成する第六乱数生成部と、0以上の自然数の乱数rι,7を生成する第七乱数生成部と、前記第二入力情報τι2としてcι2aWιr及びcι1aVιrμιgrを計算する第二入力情報計算部と、を含み、前記第一出力情報計算部が、前記第一入力情報cι1bVιrμιgr及びcι2bWιrを用い、或る確率より大きな確率でfιcι1bVιrμιgr,cι2bWιr4を正しく計算し、得られた計算結果を前記第一出力情報zι1とし、前記第二出力情報計算部が、前記第二入力情報cι1aVιrμιgr及びcι2aWιrを用い、或る確率より大きな確率でfιcι1aVιrμιgr,cι2aWιrを正しく計算し、得られた計算結果を前記第二出力情報zι2とし、前記第一計算部が、zι1Yιrμιgrを計算して前記計算結果uιを得、前記第二計算部が、zι2Yιrμιgrを計算して前記計算結果vιを得る、代理計算システム。請求項21の代理計算システムにおいて、前記群Hιが直積群Gι×Gι、前記復号関数fιが準同型関数、前記群Gιが巡回群で、前記巡回群Gιの生成元がμιg、前記巡回群Gιの位数がKιG、λι=cι1,cι2,Vι,Wιが前記群Hιの元、fιVι,Wι=Yιであり、前記入力情報提供部が、0以上の自然数の乱数rι,4を生成する第四乱数生成部と、0以上の自然数の乱数rι,5を生成する第五乱数生成部と、前記第一入力情報τι1としてcι2bWιr及びcι1bVιrμιgrを計算する第一入力情報計算部と、0以上の自然数の乱数rι,6を生成する第六乱数生成部と、0以上の自然数の乱数rι,7を生成する第七乱数生成部と、前記第二入力情報τι2としてcι2aWιr及びcι1aVιrμιgrを計算する第二入力情報計算部と、を含み、前記第一出力情報計算部が、前記第一入力情報cι1bVιrμιgr及びcι2bWιrを用い、或る確率より大きな確率でfιcι1bVιrμιgr,cι2bWιr4を正しく計算し、得られた計算結果を前記第一出力情報zι1とし、前記第二出力情報計算部が、前記第二入力情報cι1aVιrμιgr及びcι2aWιrを用い、或る確率より大きな確率でfιcι1aVιrμιgr,cι2aWιrを正しく計算し、得られた計算結果を前記第二出力情報zι2とし、前記第一計算部が、zι1Yιrμιgrを計算して前記計算結果uιを得、前記第二計算部が、zι2Yιrμιgrを計算して前記計算結果vιを得る、代理計算システム。請求項17から20の何れかの代理計算システムにおいて、前記演算結果uιのfιλιbに対する誤差の確率分布が前記自然数bιに依存しない、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布が前記自然数aιに依存しない、又は、前記演算結果uιのfιλιbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項24の代理計算システムにおいて、前記演算結果uιのfιλιbに対する誤差の確率分布が前記自然数bιに依存しない、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布が前記自然数aιに依存しない、又は、前記演算結果uιのfιλιbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項26の代理計算システムにおいて、前記演算結果uιのfιλιbに対する誤差の確率分布が前記自然数bιに依存しない、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布が前記自然数aιに依存しない、又は、前記演算結果uιのfιλιbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項28の代理計算システムにおいて、前記演算結果uιのfιλιbに対する誤差の確率分布が前記自然数bιに依存しない、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布が前記自然数aιに依存しない、又は、前記演算結果uιのfιλιbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項29の代理計算システムにおいて、前記演算結果uιのfιλιbに対する誤差の確率分布が前記自然数bιに依存しない、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布が前記自然数aιに依存しない、又は、前記演算結果uιのfιλιbに対する誤差の確率分布と区別することができない前記自然数bに依存しない確率分布が存在する、及び/若しくは、前記演算結果vιのfιλιaに対する誤差の確率分布と区別することができない前記自然数aに依存しない確率分布が存在する、代理計算システム。請求項17から20の何れかの代理計算システムにおいて、前記自然数aι又は前記自然数bιが定数である、代理計算システム。請求項24の代理計算システムにおいて、前記自然数aι又は前記自然数bιが定数である、代理計算システム。請求項26の代理計算システムにおいて、前記自然数aι又は前記自然数bιが定数である、代理計算システム。請求項28の代理計算システムにおいて、前記自然数aι又は前記自然数bιが定数である、代理計算システム。請求項29の代理計算システムにおいて、前記自然数aι又は前記自然数bιが定数である、代理計算システム。計算装置と能力提供装置とを有し、GM,HMが行列の集合、fMxMが集合HMの元である暗号文xMを特定の復号鍵で復号して集合GMの元を得るための復号関数、MX1,MX2が集合GMに値を持つ確率変数、Mx1が確率変数MX1の実現値、Mx2が確率変数MX2の実現値、aMが集合HMの元であり、前記計算装置が、前記暗号文xMに対応する、集合HMの元である第一入力情報Mτ1及び第二入力情報Mτ2を出力する入力情報提供部を含み、前記能力提供装置が、前記第一入力情報Mτ1を用い、或る確率より大きな確率でfMMτ1を正しく計算し、得られた計算結果を第一出力情報Mz1とする第一出力情報計算部と、前記第二入力情報Mτ2を用い、或る確率より大きな確率でfMMτ2を正しく計算し、得られた計算結果を第二出力情報Mz2とする第二出力情報計算部と、を含み、前記計算装置が、さらに前記第一出力情報Mz1から計算結果uM=fMxMMx1を生成する第一計算部と、前記第二出力情報Mz2から計算結果vM=fMxMaMMx2を生成する第二計算部と、前記計算結果uM及びvMがuMaM=vMを満たす場合にuMを出力する最終出力部と、を含む、代理計算システム。請求項40の代理計算システムにおいて、前記計算装置が、前記集合HMの元aMを選択する行列選択部を含み、前記第二入力情報Mτ2が、前記元aMにさらに対応する、代理計算システム。請求項41の代理計算システムにおいて、前記入力情報提供部は、前記暗号文xMとの関係をかく乱させた情報を前記第一入力情報Mτ1及び前記第二入力情報Mτ2とする、代理計算システム。請求項40の代理計算システムにおいて、前記入力情報提供部は、前記暗号文xMとの関係をかく乱させた情報を前記第一入力情報Mτ1及び前記第二入力情報Mτ2とする、代理計算システム。請求項40から43の何れかの代理計算システムにおいて、κ,ι,qが正整数、Tがの転置行列、GMがι×ι行列の集合、HMがι×ι行列の集合、PKが暗号化鍵であるι×κ行列、SKがPKSK=0を満たすι×ι行列である前記復号鍵、CMがκ×ι行列、NMがι×ι行列、UMがι×ι単位行列、前記復号関数fMがSK1{SKxMSKTmodq}SKT1mod2であり、前記入力情報提供部が、前記集合GMの元MR1をランダムに選択する第一ランダム行列選択部と、κ×ιのランダムな行列CM11及びCM12を選択する第二ランダム行列選択部と、第一暗号文CR1=PKCM2NMMR1modqを生成する第一暗号化部と、第二暗号文CUM=PKCM2NMUMmodqを生成する第二暗号化部と、前記第一入力情報Mτ1としてxMCUMCR1PKCM112NMCM12TPKTを得る第一入力情報計算部と、前記集合GMの元MR2をランダムに選択する第三ランダム行列選択部と、κ×ιのランダムな行列CM21及びCM22を選択する第四ランダム行列選択部と、第三暗号文CR2=PKCM2NMMR2modqを生成する第三暗号化部と、第四暗号文Ca=PKCM2NMaMmodqを生成する第四暗号化部と、前記第二入力情報Mτ2としてxMCaCR2PKCM212NMCM22TPKTを得る第二入力情報計算部と、を含み、前記第一計算部が前記計算結果uMとしてMz1-MR1を生成し、前記第二計算部が前記計算結果vMとしてMz2-MR2を生成する、代理計算システム。請求項40から43の何れかの代理計算システムにおいて、復号制御装置をさらに有し、前記復号制御装置は、前記計算装置の復号処理を制御する復号制御命令を前記能力提供装置に出力する出力部を含み、前記能力提供装置は、前記復号制御命令に従って、前記第一出力情報計算部及び前記第二出力情報計算部から、前記第一出力情報Mz1及び前記第二出力情報Mz2の両方が出力されるか否かを制御する制御部を含む、代理計算システム。請求項44の代理計算システムにおいて、復号制御装置をさらに有し、前記復号制御装置は、前記計算装置の復号処理を制御する復号制御命令を前記能力提供装置に出力する出力部を含み、前記能力提供装置は、前記復号制御命令に従って、前記第一出力情報計算部及び前記第二出力情報計算部から、前記第一出力情報Mz1及び前記第二出力情報Mz2の両方が出力されるか否かを制御する制御部を含む、代理計算システム。第一計算部と、第二計算部と、最終出力部とを有し、G,Hが群、fxが前記群Hの元である暗号文xを特定の復号鍵で復号して前記群Gの元を得るための復号関数、X1,X2が前記群Gに値を持つ確率変数、x1が確率変数X1の実現値、x2が確率変数X2の実現値、a,bが互いに素である自然数であり、前記第一計算部が、計算結果u=fxbx1を生成し、前記第二計算部が、計算結果v=fxax2を生成し、前記最終出力部が、前記計算結果u及びvがua=vbを満たす場合に、a’ab’b=1を満たす整数a’,b’についてのub’va’を出力する、を有する計算装置。請求項47の計算装置において、前記暗号文xに対応する、前記群Hの元である第一入力情報τ1及び第二入力情報τ2を出力する入力情報提供部をさらに有し、前記第一計算部が、或る確率より大きな確率で正しくfτ1を計算して得られた計算結果である第一出力情報z1から、前記計算結果u=fxbx1を生成し、前記第二計算部が、或る確率より大きな確率で正しくfτ2を正しく計算して得られた計算結果である第二出力情報z2から、前記計算結果v=fxax2を生成する、計算装置。請求項48の計算装置において、前記自然数a,bの少なくとも一方を選択する自然数選択部をさらに有し、前記第一入力情報τ1が、前記自然数bにさらに対応し、前記第二入力情報τ2が、前記自然数aにさらに対応する、計算装置。請求項49の計算装置において、前記入力情報提供部は、前記暗号文xとの関係をかく乱させた情報を前記第一入力情報τ1及び前記第二入力情報τ2とする、計算装置。請求項48の計算装置において、前記入力情報提供部は、前記暗号文xとの関係をかく乱させた情報を前記第一入力情報τ1及び前記第二入力情報τ2とする、計算装置。請求項48から51の何れかの計算装置において、前記復号関数fxが準同型関数、前記群Hが巡回群で、前記巡回群Hの生成元がμh、前記巡回群Hの位数がKH、ν=fμhであり、前記入力情報提供部が、0以上の自然数の乱数r1を生成する第一乱数生成部と、前記第一入力情報τ1としてμhr1xbを計算する第一入力情報計算部と、0以上の自然数の乱数r2を生成する第二乱数生成部と、前記第二入力情報τ2としてμhr2xaを計算する第二入力情報計算部と、を含み、前記第一出力情報z1は、或る確率より大きな確率でfμhr1xbを正しく計算して得られた計算結果であり、前記第二出力情報z2は、或る確率より大きな確率でfμhr2xaを正しく計算して得られた計算結果であり、前記計算結果uは、z1νr1であり、前記計算結果vは、z2νr2である、計算装置。請求項48から51の何れかの計算装置において、前記群Hが直積群G×Gで、前記復号関数fxが準同型関数、前記群Gが巡回群で、前記巡回群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を計算すしかしながら、第二装置が第一装置に復号鍵を提供する方法では、復号鍵を第二装置の外部に取り出さなければならず、安全上の問題がある。一方、第一装置が暗号文を第二装置に提供し、第二装置が暗号文を復号する方法では、第一装置が第二装置の復号処理の正当性を検証することができない。このような課題は復号処理以外に一般化できる。すなわち、第二装置が秘密情報を漏洩することなく計算能力のみを第一装置に提供し、第一装置がその計算能力を用いて正しく計算を行う技術は存在しなかった。本発明では、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’を出力する。本発明では、能力提供装置が秘密情報を漏洩することなく計算能力のみを計算装置に提供し、計算装置がその計算能力を用いて正しく計算を行うことができる。以下、図面を参照して本発明の実施形態を説明する。[第一実施形態]本発明の第一実施形態を説明する。<構成>図1に例示するように、第一実施形態の代理計算システム1は、例えば、復号鍵を保持していない計算装置11と復号鍵を保持する能力提供装置12とを有し、計算装置11が能力提供装置12に暗号文の復号能力の提供を依頼し、能力提供装置12から提供された復号能力を用いて暗号文を復号する。計算装置11と能力提供装置12とは情報のやり取りが可能なように構成される。例えば、計算装置11と能力提供装置12とは、伝送線やネットワークや可搬型記録媒体などを経由した情報のやり取りが可能とされている。図2に例示するように、第一実施形態の計算装置11は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部1104と第一計算部1105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部1108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。計算装置11の例は、カードリーダライタ装置や携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUcentralprocessingunitやRAMrandomaccessmemoryを備えた公知又は専用のコンピュータなどである。図3に例示するように、第一実施形態の能力提供装置12は、例えば、第一出力情報計算部1201と第二出力情報計算部1202と鍵記憶部1204と制御部1205とを有する。能力提供装置12の例は、ICカードやICチップなどの耐タンパ性モジュールや、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれた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が安全に格納されているものとする。計算装置11の各処理は制御部1113の制御のもとで実行され、能力提供装置12の各処理は制御部1205の制御のもとで実行される。図6に例示するように、まず、計算装置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’の情報は、最終出力部1112に送られるステップS1101。制御部1113は、t=1とするステップS1102。入力情報提供部1104は、入力された暗号文xにそれぞれ対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を生成して出力する。好ましくは、第一入力情報τ1及び第二入力情報τ2はそれぞれ暗号文xとの関係をかく乱させた情報である。これにより、計算装置11は、暗号文xを能力提供装置12に対して隠蔽できる。好ましくは、本形態の第一入力情報τ1は自然数選択部1102で選択された自然数bにさらに対応し、第二入力情報τ2は自然数選択部1102で選択された自然数aにさらに対応する。これにより、能力提供装置12から提供された復号能力を計算装置11が高い精度で評価することが可能となるステップS1103。図7に例示するように、第一入力情報τ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。図6に戻り、第一出力情報z1は計算装置11図2の第一計算部1105に入力され、第二出力情報z2は第二計算部1108に入力される。これらの第一出力情報z1及び第二出力情報z2が、能力提供装置12から計算装置11に与えられた復号能力に相当するステップS1104。第一計算部1105は、第一出力情報z1から計算結果u=fxbx1を生成する。ここで、fxbx1を生成計算するとは、fxbx1と定義される式の値を計算することである。式fxbx1の値を最終的に計算することができれば、途中の計算方法は問わない。これは、この出願で登場する他の式の計算についても同様である。第一実施形態では群で定義された演算を乗法的に表現する。すなわちα∈Gに対するαbは、群Gで定義された演算をαに対してb回作用させることを意味し、α1,α2∈Gに対するα1α2は、α1とα2とを被演算子とした群Gで定義された演算を行うことを意味する後述する第二から第五実施形態も同様。計算結果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=Tmaxであるか判定するステップS1111。Tmaxは予め定められた自然数である。t=Tmaxであれば、制御部1113は、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS1113、処理を終える。t=Tmaxでない場合には、制御部1113は、tを1だけインクリメント、すなわちt=t1としてステップS1112、ステップS1103に戻る。計算をすることができなかった旨の情報この例では記号⊥は、能力提供装置12が正しく計算を行う信頼性がTmaxで定められる基準を下回るということを意味する。言い換えれば、Tmax回の繰り返しで正しい演算を行うことができなかったということを意味する。ステップ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’=fx=fxとなる。q1,q2∈Iについて、i=1,2の各々について関数πiをπiq1,q2=qiで定義する。L=min♯π1S,♯π2Sとする。♯は、集合の位数である。群Gが巡回群や位数の計算が困難な群であるときには、計算装置11が⊥以外を出力するときの出力がfxではない確率は、無視できる程度の誤差の範囲で高々Tmax2L/♯S程度と期待することができる。もしL/♯Sが無視できる量でTmaxが多項式オーダー程度の量であれば、計算装置11は圧倒的な確率で正しいfxを出力する。L/♯Sが無視できる量になるようなSの例には、例えばS={1,d|d∈[2,|G|-1]}がある。[第二実施形態]第二実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した例である。以下、第一実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。以下の説明において、同一の参照番号が付された部分は同一の機能を持つものとし、同一の参照番号が付されたステップは同一の処理を表すものとする。<構成>図1に例示するように、第二実施形態の代理計算システム2は、計算装置11が計算装置21に置換され、能力提供装置12が能力提供装置22に置換されたものである。図2に例示するように、第二実施形態の計算装置21は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部2104と第一計算部2105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部2108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。図4に例示するように、本形態の入力情報提供部2104は、例えば、第一乱数生成部2104aと第一入力情報計算部2104bと第二乱数生成部2104cと第二入力情報計算部2104dとを有する。図3に例示するように、第二実施形態の能力提供装置22は、例えば、第一出力情報計算部2201と第二出力情報計算部2202と鍵記憶部1204と制御部1205とを有する。<処理>次に本形態の処理を説明する。第二実施形態では、復号関数fxを準同型関数とし、群Hを巡回群とし、群Hの生成元をμh、群Hの位数をKH、ν=fμhとする。その他の前提は、計算装置11が計算装置21に置換され、能力提供装置12が能力提供装置22に置換されている以外、第一実施形態と同一である。図6及び図7に例示するように、第二実施形態の処理は第一実施形態のステップS1103~S1105,S1108,S1200~S1203が、それぞれ、ステップS2103~S2105,S2108,S2200~S2203に置換されたものである。以下ではステップS2103~S2105,S2108,S2200~S2203の処理のみを説明する。《ステップS2103の処理》計算装置21図2の入力情報提供部2104は、入力された暗号文xにそれぞれ対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を生成して出力する図6/ステップS2103。以下、図8を用いて本形態のステップS2103の処理を説明する。第一乱数生成部2104a図4は、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の処理》図7に例示するように、まず、第一入力情報τ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の処理》図6に戻り、第一出力情報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μhR=XfμhRxcfμhR=XfμhRfxcfμhR=fxcXとなる。すなわち、zνRは、fxについて誤差Xを持つ乱数化可能標本器の出力となる。上記式展開において、X=BμhR’fμhR’1=BμhRxcfμhRxc1であり、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とを有する。<処理>次に本形態の処理を説明する。第二実施形態との相違点を説明する。図6及び図7に例示するように、第三実施形態の処理は第二実施形態のステップS2103~S2105,S2108,S2200~S2203が、それぞれ、ステップS3103~S3105,S3108,S2200~S2203及びS3205~S3209に置換されたものである。以下ではステップS3103~S3105,S3108,S2200~S2203及びS3205~S3209の処理を中心に説明する。《ステップS3103の処理》計算装置31図2の入力情報提供部3104は、入力された暗号文xにそれぞれ対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を生成して出力する図6/ステップS3103。以下、図8を用いて本形態のステップ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の処理》以下、図7を用いて本形態の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を生成した第三出力情報計算部3202は第三出力情報z3を出力するステップS3203。《ステップS3104及びS3105の処理》図6に戻り、制御部1113の制御のもと、第一出力情報z1は計算装置31図2の第一計算部2105に入力され、第二出力情報z2は第二計算部2108に入力され、第三出力情報z3は第三計算部3109に入力されるステップS3104。b≠1であれば、第一計算部2105が、前述のステップS2105の処理によってuを生成し、b=1であれば、第三計算部3109が、z31r3を計算してその計算結果をuとする。計算結果uは第一べき乗計算部1106に送られる。ここで、b=1の場合、u=z31r3=fxx3となる。すなわち、z31r3は、fxについて誤差X3を持つ標本器となる。その理由については後述するステップS3105。《ステップS3108の処理》a≠1であれば、第二計算部2108が、前述のステップS2108の処理によってvを生成し、a=1であれば、第三計算部3109が、z31r3を計算してその計算結果をvとする。計算結果vは第二べき乗計算部1109に送られる。ここで、a=1の場合、v=z31r3=fxx3となる。すなわち、z31r3は、fxについて誤差X3を持つ標本器となる。その理由については後述するステップS3108。なお、z31r3の計算、すなわちz3のべき乗根の計算が困難な場合には、次のようにしてu及び/又はvを計算してもよい。第三計算部3109は、乱数r3とその乱数r3に基づいて計算されたz3の組を順次α1,β1,α2,β2,...,αm,βm,...として図示していない記憶部に記憶する。mは自然数である。第三計算部3109は、α1,α2,...,αmの最小公倍数が1になれば、γ1,γ2,...,γmを整数としてγ1α1γ2α2...γmαm=1となるγ1,γ2,...,γmを計算して、そのγ1,γ2,...,γmを用いてΠi1mβiγi=β1γ1β2γ2...βmγmを計算して、その計算結果をu及び/又はvとしてもよい。≪z31r3がfxについて誤差X3を持つ標本器となる理由について≫Rを乱数として、能力提供装置32がxRを用いて行う計算の計算結果をBxRとする。すなわち、第一出力情報計算部2201や第二出力情報計算部2202や第三出力情報計算部3203が計算装置31に返す計算結果をz=BxRとする。さらに、群Gに値を持つ確率変数XをX=BxR1Rfx1と定義する。このとき、z1R=BxR1R=Xfx=fxXとなる。すなわち、z1Rは、fxについて誤差Xを持つ標本器となる。上記式展開において、X=BxR1RfxR1であり、BxR1R=XfxRであるという性質を用いている。この性質は、Rが乱数であることに基づく。したがって、r3が乱数であることを考慮すると、同様に、z1Rがfxについて誤差X3を持つ標本器となるのである。[第四実施形態]第四実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、H=G×G、復号関数fxがElGamal暗号の復号関数、すなわち復号鍵s及び暗号文x=c1,c2に対してfc1,c2=c1c2sである場合の第一乱数化可能標本器及び第二乱数化可能標本器の例を具体化したものである。以下、第一実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。図1に例示するように、第四実施形態の代理計算システム4は、計算装置11が計算装置41に置換され、能力提供装置12が能力提供装置42に置換されたものである。図2に例示するように、第四実施形態の計算装置41は、例えば、自然数記憶部1101と自然数選択部1102と整数計算部1103と入力情報提供部4104と第一計算部4105と第一べき乗計算部1106と第一リスト記憶部1107と第二計算部4108と第二べき乗計算部1109と第二リスト記憶部1110と判定部1111と最終出力部1112と制御部1113とを有する。図5に例示するように、本形態の入力情報提供部4104は、例えば、第四乱数生成部4104aと第五乱数生成部4104bと第一入力情報計算部4104cと第六乱数生成部4104dと第七乱数生成部4104eと第二入力情報計算部4104fとを有する。第一入力情報計算部4104cは、例えば、第四入力情報計算部4104caと第五入力情報計算部4104cbとを有し、第二入力情報計算部4104fは、第六入力情報計算部4104faと第七入力情報計算部4104fbとを有する。図3に例示するように、第四実施形態の能力提供装置42は、例えば、第一出力情報計算部4201と第二出力情報計算部4202と鍵記憶部1204と制御部1205とを有する。<処理>次に本形態の処理を説明する。第四実施形態では、群Hが群Gの直積群G×G、群Gが巡回群、暗号文x=c1,c2∈Hであり、fc1,c2が準同型関数であり、群Gの生成元をμgとし、群Gの位数をKGとし、同じ復号鍵sに対する暗号文V,W∈Hとその暗号文を復号した復号文fV,W=Y∈Gとの組が計算装置41及び能力提供装置42に事前設定され、計算装置41及び能力提供装置42がこの組を利用可能とされているものとする。図6及び図7に例示するように、第四実施形態の処理は第一実施形態のステップS1103~S1105,S1108,S1200~S1203が、それぞれ、ステップS4103~S4105,S4108,S4200~S4203に置換されたものである。以下ではステップS4103~S4105,S4108,S4200~S4203の処理のみを説明する。《ステップS4103の処理》計算装置41図2の入力情報提供部4104は、入力された暗号文x=c1,c2に対応する、群Hの元である第一入力情報τ1及び暗号文x=c1,c2に対応する群Hの元である第二入力情報τ2を生成して出力する図6/ステップS4103。以下、図9を用いて本形態のステップS4103の処理を説明する。第四乱数生成部4104a図5は、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。第七乱数生成部125は、0以上KG未満の自然数の一様乱数r7を生成する。生成された乱数r7は、第六入力情報計算部4104fa、及び第二計算部4108に送られるステップS4103f。第六入力情報計算部4104faは、自然数選択部1102で選択された自然数a、暗号文xが含むc2、及び乱数r6を用い、第六入力情報c2aWr6を計算するステップS4103g。第七入力情報計算部4104fbは、自然数選択部1102で選択された自然数a、暗号文xが含むc1、及び乱数r7を用い、第七入力情報c1aVr6μgr7を計算するステップS4103h。第一入力情報計算部4104cは、以上のように生成した第四入力情報c2bWr4及び第五入力情報c1bVr4μgr5を第一入力情報τ1=c2bWr4,c1bVr4μgr5として出力する。第二入力情報計算部4104fは、以上のように生成した第六入力情報c2aWr6及び第七入力情報c1aVr6μgr7を第二入力情報τ2=c2aWr6,c1aVr6μgr7として出力するステップS4103i。《ステップS4200~S4203の処理》図7に例示するように、まず、第一入力情報τ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の処理》図6に戻り、第一出力情報z1は計算装置41図2の第一計算部4105に入力され、第二出力情報z2は第二計算部4108に入力されるステップS4104。第一計算部4105は、入力された第一出力情報z1及び乱数r4,r5を用い、z1Yr4μgr5を計算してその計算結果をuとするステップS4105。計算結果uは、第一べき乗計算部1106に送られる。ここで、u=z1Yr4μgr5=fc1,c2bx1となる。すなわち、z1Yr4μgr5は、fc1,c2について誤差X1を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS4108の処理》第二計算部4108は、入力された第二出力情報z2及び乱数r6,r7を用い、z2Yr6μgr7を計算してその計算結果をvとする。計算結果vは、第二べき乗計算部1109に送られる。ここで、v=z2Yr6μgr7=fc1,c2ax2となる。すなわち、z2Yr6μgr7は、fc1,c2について誤差X2を持つ乱数化可能標本器の出力となる。その理由については後述する。≪z1Yr4μgr5,z2Yr6μgr7が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と定義する。このとき、zYR1μgR2=Bc1cVR1μgR2,c2cWR1YR1μgR2=Xfc1cVR1μgR2,c2cWR1YR1μgR2=Xfc1,c2cfV,WR1fμg,egR2YR1μgR2=Xfc1,c2cYR1μgR2YR1μgR2=fc1,c2cXとなる。すなわち、zYR1μgR2は、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が乱数であることを考慮すると、同様に、z1Yr4μgr5,z2Yr6μgr7が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に置換されたものである。図10に例示するように、第五実施形態の計算装置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が複数種類記憶されているものとする。図11に例示するように、まず、計算装置51図10の自然数選択部5102が、自然数記憶部5101に記憶された複数の自然数aから1つの自然数aをランダムに読み込む。読み込まれた自然数aの情報は、入力情報提供部5104及び第一べき乗計算部1106に送られるステップS5100。制御部1113は、t=1とするステップS1102。入力情報提供部5104は、入力された暗号文xにそれぞれ対応する群Hの元である第一入力情報τ1及び第二入力情報τ2を生成して出力する。好ましくは、第一入力情報τ1及び第二入力情報τ2はそれぞれ暗号文xとの関係をかく乱させた情報である。これにより、計算装置51は、暗号文xを能力提供装置52に対して隠蔽できる。好ましくは、本形態の第二入力情報τ2は自然数選択部5102で選択された自然数aにさらに対応する。これにより、能力提供装置52から提供された復号能力を計算装置51が高い精度で評価することが可能となるステップS5103。第一入力情報τ1及び第二入力情報τ2の組みの具体例は、第二実施形態から第四実施形態の何れかのb=1とした第一入力情報τ1及び第二入力情報τ2の組みである。図7に例示するように、第一入力情報τ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。図11に戻り、第一出力情報z1は計算装置51図10の第一計算部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=Tmaxであるか判定するステップS1111。Tmaxは予め定められた自然数である。t=Tmaxであれば、制御部1113は、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS1113、処理を終える。t=Tmaxでない場合には、制御部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が得られる理由を説明する。まず、説明に必要な事項を定義する。ブラックボックスblackbox:fτのブラックボックスFτとは、τ∈Hを入力としてz∈Gを出力する処理部を意味する。本形態では、第一出力情報計算部5201及び第二出力情報計算部5202が、それぞれ復号関数fτのブラックボックスFτに相当する。群Hから任意に選択された元τ∈UH及びz=Fτに対してz=fτを満たす確率がδ0<δ≦1よりも大きい場合、すなわち、Pr[z=fτ|τ∈UH,z=Fτ]>δ...を満たすfτのブラックボックスFτのことを、信頼性δδreliableのfτのブラックボックスFτという。なお、δは正の値であり、前述した或る確率に相当する。自己訂正器selfcorrector:自己訂正器CFxとは、x∈Hを入力とし、fτのブラックボックスFτを用いて計算を行い、j∈G∪⊥を出力する処理部を意味する。本形態では、計算装置51が自己訂正器CFxに相当する。オールモスト自己訂正器almostselfcorrector:自己訂正器CFxが、x∈Hを入力とし、δreliableのfτのブラックボックスFτを用い、正しい値j=fxを出力する確率が、誤った値j≠fxを出力する確率よりも十分大きい場合を想定する。すなわち、Pr[j=fx|j=CFx,j≠⊥]>Pr[j≠fx|j=CFx,j≠⊥]Δ...を満たす場合を想定する。なお、Δは或る正の値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である。ローバスト自己訂正器robustselfcorrector:自己訂正器CFxが、x∈Hを入力とし、δreliableのfτのブラックボックスFτを用い、正しい値j=fx又はj=⊥を出力する確率が圧倒的である場合を想定する。すなわち、無視することができる誤差ξ0≦ξ<1に対してPr[j=fxまたはj=⊥|j=CFx]>1-ξ...を満たす場合を想定する。このような場合、自己訂正器CFxはローバスト自己訂正器であるという。なお、無視することができる誤差ξの例は、セキュリティパラメータkの関数値ξkである。関数値ξkの例は、任意の多項式pkについて、十分大きいkに対して{ξkpk}が0に収束するものである。関数値ξkの具体例は、ξk=2kやξk=2√kなどである。オールモスト自己訂正器からローバスト自己訂正器を構成することができる。すなわち、同一のxに対してオールモスト自己訂正器を複数回実行させ、⊥を除いて最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。例えば、同一のxに対してオールモスト自己訂正器をOlog1/ξ回実行させ、最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。なお、Oはオー記法を表す。擬似自由pseudofreeな作用:群G、自然数の集合Ω={0,...,M}Mは1以上の自然数、群Gに値を持つ確率変数X1,X2の各実現値α∈X1α≠eg,β∈X2、及びa∈Ωについて、αa=βとなる確率Pr[αa=βかつα≠eg|a∈UΩ,α∈X1,β∈X2]...について、あらゆる可能なX1,X2に関する上限値を、組G,Ωの疑似自由指標とよび、これをPG,Ωと表すことにする。ある無視することができる関数ζkが存在して、PG,Ω<ζk...である場合、組G,Ωによって定義される演算は擬似自由な作用であるという。なお、第5実施形態では群で定義された演算を乗法的に表現する。すなわちα∈Gに対するαaは、群Gで定義された演算をαに対してa回作用させることを意味する。無視することができる関数ζkの例は、任意の多項式pkについて、十分大きいkに対して{ζkpk}が0に収束するものである。関数ζkの具体例は、ζk=2kやζk=2√kなどである。例えば、セキュリティパラメータkに対し、式4の確率がO2k未満である場合、組G,Ωによって定義される演算は擬似自由な作用である。例えば、任意のα∈Gでα≠egであるものについて、集合Ωα={aα|a∈Ω}の要素数|Ωα|が2kを超える場合、組G,Ωによって定義される演算は擬似自由な作用といえる。このような具体例は数多く存在する。例えば、群Gが素数pを法とする剰余群Z/pZであり、素数pが2kのオーダーであり、集合Ω={0,...,p-2}であり、aαがαa∈Z/pZであり、α≠egである場合、Ωα={αa|a=0,...,p-2}={eg,α1,...,αp2}となり、|Ωα|=p-1である。素数pが2kのオーダーであるため、ある定数Cが存在して、kが十分大きければ|Ωα|>C2kを満たす。ここで式4の確率はC12k未満であり、このような組G,Ωによって定義される演算は擬似自由な作用である。信頼性δγδγreliableの乱数化可能標本器:自然数aが与えられるたびに、δreliableのfτのブラックボックスFτを用い、w∈Gについて、確率変数Xに従った標本x’に対応するwax’を返す乱数化可能標本器であって、wax’=waである確率がδγよりも大きいγは正定数、すなわち、Pr[wax’=wa]>δγ...を満たすものを、信頼性δγの乱数化可能標本器という。本形態の入力情報提供部5104と第二出力情報計算部5202と第二計算部5108との組は、w=fxについて、信頼性δγの乱数化可能標本器である。次に、これらの定義を用い、本形態の計算装置51で復号結果fxが得られる理由を説明する。本形態のステップS5110ではu’=vであるか、すなわち、ua=vであるかを判定している。本形態の入力情報提供部5104と第二出力情報計算部5202と第二計算部5108との組は信頼性δγの乱数化可能標本器であるため式6、Tmaxをk、δ、γから定まる一定値よりも大きい値とすれば、漸近的に大きい確率でua=vが成立するステップS5110でyesとなる場合が生じる。たとえば、Tmax≧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,ΩについてTmax2PG,Ωが漸近的に小さい場合、ua=vの場合にx1≠egである確率式4は漸近的に小さい。したがって、ua=vの場合にx1=egである確率は漸近的に大きい。よって、組G,Ωによって定義される演算が擬似自由な作用であるか、Tmax2PG,Ωが漸近的に小さい場合、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’が漸近的に大きいという。《信頼性δγの乱数化可能標本器と安全性について》以下のような攻撃を想定する。ブラックボックスFτ又はその部分が意図的に不正なzを出力する、又は、ブラックボックスFτから出力された値が不正なzに改ざんされる。不正なzに対応するwax’が乱数化可能標本器から出力される。不正なzに対応するwax’は、自己訂正器CFxでua=vが成立するステップS5110でyesとなるにもかかわらず、自己訂正器CFxが誤った値を出力する確率を増加させる。このような攻撃は、与えられた自然数aに対して乱数化可能標本器から出力されたwax’の誤差の確率分布Da=wax’waが自然数aに依存する場合に可能となる。例えば、第二計算部5108から出力されるvがfxax1aとなるような不正が行われた場合、x1の値にかかわらず、必ずua=vが成立することになる。よって、乱数化可能標本器は、与えられた自然数aに対して乱数化可能標本器から出力されたwax’の誤差の確率分布Da=wax’waが当該自然数aに依存しないことが望ましい。あるいは、集合Ωのいかなる元a∈∀Ωについても、wax’の誤差の確率分布Da=wax’waと区別することができない群Gに値を持つ確率分布Dが存在する確率分布Daと確率分布Dとが統計的に近似するstatisticallyclose乱数化可能標本器であることが望ましい。なお、確率分布Dは自然数aに依存しない。確率分布Daと確率分布Dとを区別することができないとは、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができないことを意味し、例えば、無視することができるζ0≦ζ<1に対してΣg∈G|Pr[g∈D]-Pr[g∈Da]|<ζ...を満たすならば、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができない。無視することができるζの例は、セキュリティパラメータkの関数値ζkである。関数値ζkの例は、任意の多項式pkについて、十分大きなkに対して{ζkpk}が0に収束するものである。関数値ζkの具体例は、ζk=2kやζk=2√kなどである。これらの点は自然数a及びbを使用する第一実施形態から第四実施形態についても同様である。[第六実施形態]本形態は、格子暗号の一種であるGHV暗号化方式参考文献1CGenrtySHaleviandVVaikuntanathanASimpleBGNTypeCryptosystemfromLWEAdvancesinCryptologyEUROCRYPT2010LNCS6110pp506522SpringerVerlag2010等参照の復号処理に本発明を適用する形態である。以下では上述の各実施形態との相違点を中心に説明を行う。<構成>図1に例示するように、第六実施形態の代理計算システム6は、第一実施形態の計算装置11が計算装置61に置換され、能力提供装置12が能力提供装置62に置換されたものである。図12に例示するように、第六実施形態の計算装置61は、例えば、行列記憶部6101と行列選択部6102と入力情報提供部6104と第一計算部6105と行列積計算部6106と第一リスト記憶部6107と第二計算部6108と第二リスト記憶部6110と判定部6111と最終出力部6112と制御部1113とを有する。図14に例示するように、本形態の入力情報提供部6104は、例えば、第一ランダム行列選択部6104aと第二ランダム行列選択部6104bと第一暗号化部6104cと第二暗号化部6104dと第一入力情報計算部6104eと第三ランダム行列選択部6104fと第四ランダム行列選択部6104gと第三暗号化部6104hと第四暗号化部6104iと第二入力情報計算部6104jとを有する。図13に例示するように、第六実施形態の能力提供装置62は、例えば、第一出力情報計算部6201と第二出力情報計算部6202と鍵記憶部6204と制御部1205とを有する。<処理>次に本形態の処理を説明する。本形態では、GMをι×ι行列の集合、HMをι×ι行列の集合、MX1,MX2を集合GMに値を持つ確率変数、Mx1を確率変数MX1の実現値、Mx2を確率変数MX2の実現値、aMを集合HMの元とする。本形態では、PKを暗号化鍵公開鍵であるι×κ行列、SKをPKSK=0を満たすι×ι行列である復号鍵秘密鍵、CMをκ×ι行列、NMをι×ι行列、UMをι×ι単位行列、PTを集合GMの元である平文PT∈GM、xMを集合HMの元である暗号文xM∈HM、ENCMを集合GMの元である平文PTを暗号化して暗号文xM∈HMを得るための暗号化関数、fMxMを暗号文xM∈HMを特定の復号鍵SKで復号して集合GMの元である平文PTを得るための復号関数とする。復号関数fMxMは準同型関数である。例えば、GMをι×ι行列Z/2Zι×ιの集合、HMをι×ι行列Z/qZι×ιの集合、暗号化鍵PKをι×κ行列Z/qZι×κ、復号鍵SKをι×ι行列Z/qZι×ι、CMをランダムに選択されたκ×ι行列Z/qZκ×ι、NMをガウス分布に従うι×ι行列Z/qZι×ι、UMをι×ι単位行列Z/2Zι×ιとし、暗号化関数ENCMPTをPKCM2NMPTmodqとし、復号関数fMxMをSK1{SKxMSKTmodq}SKT1mod2とする。ただし、κ,ι,qは正整数、κ,ι,qは正整数、Tはの転置行列、Z/qZκ×ιはqを法とする剰余環Z/qZを要素とするκ行ι列行列である。第六実施形態では行列α1,α2間の積をα1α2と表し、和をα1α2と表現する。行列αの各要素を自然数β倍した行列をβαと表す。本形態の処理の前提として、計算装置61図12の行列記憶部6101には、行列aM∈HMが複数種類記憶されているものとする。能力提供装置62図13の鍵記憶部6204には、復号鍵SKが安全に記憶されているものとする。図15に例示するように、まず、計算装置61図12の行列選択部6102が、行列記憶部6101に記憶された複数の行列から一様ランダムに1つの行列aMを選択して読み込む。読み込まれた行列aMの情報は、入力情報提供部6104及び行列積計算部6106に送られるステップS6100。制御部1113は、t=1とするステップS1102。入力情報提供部6104は、入力された暗号文xMにそれぞれ対応する対応する集合HMの元である第一入力情報Mτ1及び第二入力情報Mτ2を生成して出力する。好ましくは、第一入力情報Mτ1及び第二入力情報Mτ2はそれぞれ暗号文xMとの関係をかく乱させた情報である。これにより、計算装置61は暗号文xMを能力提供装置62に対して隠蔽できる。第二入力情報Mτ2は元aMにさらに対応する。これにより、能力提供装置62から提供された復号能力を計算装置61が高い精度で評価することが可能となるステップS6103。以下、図16を用いてステップS6103の具体例を説明する。[ステップS6103の具体例]入力情報提供部6104図14の第一ランダム行列選択部6104aが集合GMの元MR1を一様ランダムに選択するステップS6103a。選択されたMR1は第一暗号化部6104cと第一計算部6105に送られるステップS6103a。第二ランダム行列選択部6104bがκ×ιの一様ランダムな行列CM11及びCM12∈Z/qZκ×ιを選択する。選択されたCM11及びCM12は第一入力情報計算部6104eに送られるステップS6103b。第一暗号化部6104cが公開鍵PKを用い、MR1の暗号文ENCMMR1である第一暗号文CR1=PKCM2NMMR1modqを生成する。第一暗号文CR1は第一入力情報計算部6104eに送られるステップS6103c。第二暗号化部6104dが公開鍵PKを用い、単位行列UMの暗号文ENCMUMである第二暗号文CUM=PKCM2NMUMmodqを生成する。第二暗号文CUMは第一入力情報計算部6104eに送られるステップS6103d。第一入力情報計算部6104eにはさらに暗号文xMが入力される。第一入力情報計算部6104eは、第一入力情報Mτ1としてxMCUMCR1PKCM112NMCM12TPKTを得て出力する。なお、行列の積の順序に特段の必然性はない。すなわち第一入力情報計算部6104eは、CX=xMCUMCR1としたReCX=CXPKCM112NMCM12TPKTを計算して第一入力情報Mτ1を生成してもよいし、CX=CUMxMCR1としたReCXを計算して第一入力情報Mτ1を生成してもよいステップS6103e。第三ランダム行列選択部6104fが集合GMの元MR2を一様ランダムに選択する。選択されたMR2は第三暗号化部6104hと第二計算部6108に送られるステップS6103f。第四ランダム行列選択部6104gが、κ×ιのランダムな行列CM21及びCM22∈Z/qZκ×ιを選択する。選択されたCM21及びCM22は第二入力情報計算部6104jに送られるステップS6103g。第三暗号化部6104hが公開鍵PKを用い、MR2の暗号文ENCMMR2である第三暗号文CR2=PKCM2NMMR2modqを生成する。第三暗号文CR2は第二入力情報計算部6104jに送られるステップS6103h。第四暗号化部6104iに行列aMが入力される。第四暗号化部6104iは公開鍵PKを用い、行列aMの暗号文ENCMaMである第四暗号文Ca=PKCM2NMaMmodqを生成する。第四暗号文Caは第二入力情報計算部6104jに送られるステップS6103i。第二入力情報計算部6104jにはさらに暗号文xMが入力される。第二入力情報計算部6104jは、第二入力情報Mτ2としてxMCaCR2PKCM212NMCM22TPKTを得て出力する。第二入力情報計算部6104jは、CX=xMCaCR2としたReCXを計算して第二入力情報Mτ2を生成してもよいし、CX=xMCaCR2としたReCXを計算して第二入力情報Mτ2を生成してもよいステップS6103j/[ステップS6103の具体例]の説明終わり。図17に例示するように、第一入力情報Mτ1は能力提供装置62図13の第一出力情報計算部6201に入力され、第二入力情報Mτ2は第二出力情報計算部6202に入力されるステップS6200。第一出力情報計算部6201は、第一入力情報Mτ1と鍵記憶部6204に格納された復号鍵SKとを用い、或る確率より大きな確率でfMMτ1=SK1{SKMτ1SKTmodq}SKT1mod2を正しく計算し、得られた計算結果を第一出力情報Mz1とするステップS6201。第二出力情報計算部6202は、第二入力情報Mτ2と鍵記憶部6204に格納された復号鍵SKとを用い、或る確率より大きな確率でfMMτ2=SK1{SKMτ2SKTmodq}SKT1mod2を正しく計算し、得られた計算結果を第二出力情報Mz2とするステップS6202。すなわち、第一出力情報計算部6201や第二出力情報計算部6202は、意図的又は意図的ではない誤差を含んだ計算結果を出力する。言い換えると、第一出力情報計算部6201での計算結果がfMMτ1の場合もあればfMMτ1でない場合もあり、第二出力情報計算部6202での計算結果がfMMτ2の場合もあればfMMτ2でない場合もある。第一出力情報計算部6201は第一出力情報Mz1を出力し、第二出力情報計算部6202は第二出力情報Mz2を出力するステップS6203。図15に戻り、第一出力情報Mz1は計算装置61図12の第一計算部6105に入力され、第二出力情報Mz2は第二計算部6108に入力される。これらの第一出力情報Mz1及び第二出力情報Mz2が、能力提供装置62から計算装置61に与えられた復号能力に相当するステップS6104。第一計算部5105は、第一出力情報Mz1を用いてMz1-MR1を計算してその計算結果をuMとする。計算結果uMは行列積計算部6106に送られる。ここで、uM=Mz1-MR1=fMxMMx1となる。すなわち、uMはfMxMについて誤差MX1を持つ標本器となる。その理由については後述するステップS6105。行列積計算部6106はuM’=uMaMを得る。なお、行列積計算部6106はuMaMの計算によってuM’を得てもよいし、aMuMの計算によってuM’を得てもよい。計算結果uMとその計算結果に基づいて計算されたuM’との組uM,uM’は、第一リスト記憶部6107に記憶されるステップS6106。第二計算部6108は、第二出力情報Mz2を用いてMz2-MR2を計算してその計算結果をvMとする。計算結果vMは第二リスト記憶部6110に記憶される。ここで、vM=Mz2-MR2=fMxMaMMx2となる。すなわち、vMはfMxMについて誤差MX2を持つ乱数化可能標本器の出力となる。その理由については後述するステップS6108。判定部6111は、第一リスト記憶部6107に記憶された組uM,uM’及び第二リスト記憶部6110に記憶されたvMの中で、uM’=vMとなるものがあるか判定するステップS6110。uM’=vMとなるものがあった場合には、ステップS6114に進む。uM’=vMとなるものがなかった場合には、ステップS1111に進む。ステップS1111では、制御部1113がt=Tmaxであるか判定するステップS1111。Tmaxは予め定められた自然数である。t=Tmaxであれば、制御部1113は、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS1113、処理を終える。t=Tmaxでない場合には、制御部1113は、tを1だけインクリメント、すなわちt=t1としてステップS1112、ステップS6103に戻る。ステップS6114では、最終出力部6112が、uM’=vMであると判定されたuM’に対応するuMを出力するステップS6114。このように得られたuMは高い確率で暗号文xMを復号鍵SKで復号した復号結果fMxMとなるその理由は後述する。よって、上述した処理を複数回繰り返し、ステップS6114で得られた値のうち最も頻度の高い値を復号結果とすればよい。設定によっては圧倒的な確率でuM=fMxMとなる。その場合にはステップS6114で得られた値をそのまま復号結果としてよい。≪Mz1-MR1,Mz2-MR2がfMxMについてそれぞれ誤差MX1,MX2を持つ標本器,乱数化可能標本器の出力となる理由について≫fMxMの準同型性より、fMxMCaCR2=fMxMfMCafMCR2=fMxMaMMR2を満たし、fMxMaM=fMxMCaCR2-MR2=fMMτ2-MR2を満たし、MR2=fMMτ2-fMxMaMを満たす。よってMz2=FMMτ2とおくと、Mz2-MR2=FMMτ2-fMMτ2fMxMaM=fMxMaM{FMMτ2-fMMτ2}を満たす。Mτ2に対応するCM21,CM22,MR2の一様ランダム性から、Mz2-MR2はfMxMaMMx2と統計的に近似する。ただし、Mx2は確率変数MX2=FMENCMMU2-MU2MU2はGM上で一様ランダムに分布の実現値である。したがって、Mz2-MR2はfMxMについてそれぞれ誤差MX2を持つ乱数化可能標本器の出力となる。同様にfMxMCUMCR1=fMxMfMCUMfMCR1=fMxMUMMR1を満たし、fMxM=fMxMCUMCR1-MR1=fMMτ1-MR1を満たし、MR1=fMMτ1-fMxMを満たす。よってMz1=FMMτ1とおくと、Mz1-MR1=FMMτ1-fMMτ1fMxM=fMxM{FMMτ1-fMMτ1}を満たす。Mτ1に対応するCM11,CM12,MR1の一様ランダム性から、Mz1-MR1はfMxMMx1と統計的に近似する。ただし、Mx1は確率変数MX1=FMENCMMU1-MU1MU1はGM上で一様ランダムに分布の実現値である。したがって、Mz1-MR1を出力する上記の構成はfMxMについてそれぞれ誤差MX1を持つ標本器となる。≪復号結果fMxMが得られる理由について≫第五実施形態の≪復号結果fxが得られる理由について≫で説明したのと同様な理由により、本形態でも正しい復号結果fMxMが得られる。ただし本形態では行列を扱う関係上、第五実施形態の≪復号結果fxが得られる理由について≫のG,HがGM,HMに、fxがfMxMに、τがMτに、FτがFMMτに、zがMzに、xがxMに、X1,X2がMX1,MX2に、x1,x2がMx1,Mx2に、egがι×ιの単位行列Megに、乗法的表現が加法的表現に例えばαβγがαβγにそれぞれ置き換えられる。さらに本形態では擬似自由pseudofreeな作用の定義が以下のようにされる。擬似自由pseudofreeな作用:GM、行列の集合ΩM={0M,...,MM}、GM上の確率変数MX1,MX2の各実現値αM∈MX1αM≠Meg,βM∈MX2、及びaM∈ΩMについて、αMaM=βMとなる確率Pr[αMaMかつαM≠Meg|aM∈UΩM,αM∈MX1,βM∈MX2]について、あらゆる可能なMX1,MX2に関する上限値を、組GM,ΩMの疑似自由指標とよび、これをPGM,ΩMと表すことにする。ある無視することができる関数ζkが存在して、PGM,ΩM<ζkである場合、組GM,ΩMによって定義される演算は擬似自由な作用であるという。[第一実施形態から第六実施形態の変形例]以上のように、上記の各実施形態では、能力提供装置が復号鍵を提供することなく、第一出力情報z1及び第二出力情報z2を計算装置に提供し、計算装置がub’va’を出力する。ub’va’は高い確率で暗号文xの復号値となる。このように、能力提供装置が復号鍵を提供することなく計算装置に復号能力を提供できる。なお、本発明は上述の実施の形態に限定されるものではない。例えば、確率変数X1、X2及びX3は、同じでも異なっていてもよい。同様に、確率変数MX1及びMX2は、同じでも異なっていてもよい。第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部のそれぞれは、一様乱数を生成することにより、代理計算システムの安全性が最も高くなる。しかし、求める安全性のレベルがそれほど高くない場合には、第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部の少なくとも一部が、一様乱数ではない乱数を生成してもよい。同様に、第六実施形態で行列を一様ランダムに選択する代わりに、一様ではないランダムな行列が選択されてもよい。演算効率上からは、上述の各実施形態のように0以上KH未満の自然数である乱数や0以上KG未満の自然数である乱数が選択されることが望ましいが、それらの代わりにKH以上やKG以上の自然数の乱数が選択されてもよい。計算装置が同一のa,bに対応する、群Hの元である第一入力情報τ1及び第二入力情報τ2を能力提供装置に提供するたびに、能力提供装置の処理が複数回実行させてもよい。これにより、計算装置が第一入力情報τ1及び第二入力情報τ2を能力提供装置に一回提供するたびに、計算装置は第一出力情報z1や第二出力情報z2や第三出力情報z3を複数個得ることができる。これにより、計算装置と能力提供装置との間のやり取り回数や通信量を減らすことができる。第六実施形態の第一入力情報Mτ1及び第二入力情報Mτ2についても同様である。計算装置が複数種類の第一入力情報τ1及び第二入力情報τ2を能力提供装置にまとめて提供し、対応する第一出力情報z1や第二出力情報z2や第三出力情報z3を複数個まとめて取得してもよい。これにより、計算装置と能力提供装置との間のやり取り回数を減らすことができる。第六実施形態の第一入力情報Mτ1及び第二入力情報Mτ2についても同様である。第一実施形態から第五実施形態の第一計算部や第二計算部において得られたuやvが群Gの元であるかを確認し、群Gの元であった場合には上述した処理を続行し、u又はvが群Gの元でなかった場合には、計算をすることができなかった旨の情報、例えば記号⊥が出力されてもよい。同様に、第六実施形態の第一計算部や第二計算部において得られたuMやvMがGMの元であるかを確認し、GMの元であった場合には上述した処理を続行し、uM又はvMがGMの元でなかった場合には、計算をすることができなかった旨の情報、例えば記号⊥が出力されてもよい。計算装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。同様に、能力提供装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。その他、例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。[第七実施形態]本発明の第七実施形態を説明する。<構成>図18に例示するように、第七実施形態の代理計算システム101は、例えば、復号鍵を保持していない計算装置111と、復号鍵s1,,sΓをそれぞれ保持する能力提供装置112-1,,112-ΓΓは2以上の整数と、計算装置111の復号能力を制御する復号制御装置113とを有する。復号制御装置113は能力提供装置112-1,,112-Γから計算装置111へ提供される復号能力を制御し、計算装置111は能力提供装置112-1,,112-Γから提供された復号能力を用いて暗号文を復号する。計算装置111と能力提供装置112-1,,112-Γと復号制御装置113とは情報のやり取りが可能なように構成される。例えば、計算装置111と能力提供装置112-1,,112-Γと復号制御装置113とは、伝送線やネットワークや可搬型記録媒体などを経由した情報のやり取りが可能とされている。図19に例示するように、第七実施形態の計算装置111は、例えば、自然数記憶部11101と自然数選択部11102と整数計算部11103と入力情報提供部11104と第一計算部11105と第一べき乗計算部11106と第一リスト記憶部11107と第二計算部11108と第二べき乗計算部11109と第二リスト記憶部11110と判定部11111と最終出力部11112と復元部11100と制御部11113とを有する。計算装置111の例は、カードリーダライタ装置や携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUcentralprocessingunitやRAMrandomaccessmemoryを備えた公知又は専用のコンピュータなどである。図20に例示するように、第七実施形態の能力提供装置112-ιι=1,,ω、ωは2以上Γ以下の整数は、例えば、第一出力情報計算部11201-ιと第二出力情報計算部11202-ιと鍵記憶部11204-ιと制御部11205-ιとを有する。能力提供装置112-ιの例は、ICカードやICチップなどの耐タンパ性モジュールや、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。後述するように、能力提供装置112-1,,112-ωは能力提供装置112-1,,112-Γから選択されたものである。能力提供装置112-ι1,,112-Γが存在する場合、これらの構成は能力提供装置112-ιと同様である。図21に例示するように、第七実施形態の復号制御装置113は、例えば、暗号文記憶部11301と制御命令部11302と出力部11303と制御部11304と鍵記憶部11305と暗号化部11306とを有する。復号制御装置113の例は、携帯電話などの計算機能と記憶機能とを備えた機器や、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータなどである。<処理>次に本形態の処理を説明する。処理の前提として、Gι,Hιを群例えば、可換群、ωを2以上の整数、ι=1,,ω、fιλιを群Hιの元である暗号文λιを特定の復号鍵sιで復号して群Gιの元を得るための復号関数、群Gι,Hιの生成元をそれぞれμιg,μιh、Xι1,Xι2を群Gιに値を持つ確率変数、確率変数Xι1の実現値をxι1、確率変数Xι2の実現値をxι2とする。なお、本形態のωは定数である。計算装置111の自然数記憶部11101には、互いに素である2つの自然数aι,bιの組aι,bιが複数種類記憶されているものとする。自然数とは0以上の整数を意味する。Iιを群Gιの位数未満の2つの自然数の組で互いに素なものの集合とすると、自然数記憶部11101にはIιの部分集合Sιに対応する自然数aι,bιの組aι,bιが記憶されていると考えることができる。能力提供装置112-ιの鍵記憶部12104には、特定の復号鍵sιがそれぞれ安全に記憶されているものとする。復号制御装置113の鍵記憶部11305には、復号鍵s1,,sΓにそれぞれ対応する暗号鍵pk1,,pkΓが記憶されているものとする。復号鍵sι及び暗号鍵pkιの一例は公開鍵暗号方式の秘密鍵及び公開鍵である。なお、計算装置111の各処理は制御部11113の制御のもとで実行され、能力提供装置112-ιの各処理は制御部11205-ιの制御のもとで実行され、復号制御装置113の各処理は制御部11304の制御のもとで実行される。<暗号化処理>図24に例示するように、まず、復号制御装置113図21の暗号化部11306にメッセージmesが入力される。暗号化部11306は、暗号鍵pk1,,pkΓからω個の暗号鍵pk1,,pkωをランダムに選択するステップS11301。暗号化部11306は、メッセージmesからω個の分散情報sha1,,shaωを生成するステップS11302。以下に分散情報sha1,,shaωの生成方法を例示する。《分散情報の例1》ω個の分散情報sha1,,shaωのビット結合値sha1||shaωがメッセージmesとなるように分散情報sha1,,shaωを生成する。《分散情報の例2》ω個の分散情報sha1,,shaωの排他的論理和がメッセージmesとなるように分散情報sha1,,shaωを生成する。《分散情報の例3》Shamirの秘密分散のような秘密分散方式によってメッセージmesを秘密分散して分散情報sha1,,shaωを生成する分散情報の生成方法を例示終わり。次に、暗号化部11306は、各ι=1,,ωについて、暗号鍵pkιを用いて分散情報shaιを暗号化して暗号文λιを生成する。生成された暗号文λ1,,λωは暗号文記憶部11301に記憶されるステップS11303。その後、暗号文記憶部11301に記憶されている暗号文λ1,,λωが出力部11301から出力され、計算装置111図19に入力されるステップS11304。暗号文λ1,,λωは同時に送られてもよいし、同時に送られなくてもよい。<復号処理>図25を用いて本形態の暗号文λιの復号処理を説明する。以下に説明する処理は各ι=1,,ωについてそれぞれ実行される。まず、計算装置111図19の自然数選択部11102が、自然数記憶部11101に記憶された複数の自然数の組aι,bιから1つの自然数の組aι,bιをランダムに読み込む。読み込まれた自然数の組aι,bιの少なくとも一部の情報は、整数計算部11103、入力情報提供部11104、第一べき乗計算部11106及び第二べき乗計算部11109に送られるステップS11100。整数計算部11103は、送られた自然数の組aι,bιを用いて、a’ιaιb’ιbι=1の関係を満たす整数a’ι,b’ιを計算する。自然数aι,bιは互いに素であるため、a’ιaιb’ιbι=1の関係を満たす整数a’ι,b’ιは必ず存在して、その計算方法もよく知られている。たとえば拡張互除法などのよく知られたアルゴリズムによって整数a’,b’が計算され、自然数の組a’ι,b’ιの情報は、最終出力部11112に送られるステップS11101。制御部11113は、tι=1とするステップS11102。計算装置111の入力情報提供部11104は、入力された暗号文λιにそれぞれ対応する群Hιの元である第一入力情報τι1及び第二入力情報τι2を生成して出力する。好ましくは、第一入力情報τι1及び第二入力情報τι2はそれぞれ暗号文λιとの関係をかく乱させた情報である。これにより、計算装置111は、暗号文λιを能力提供装置112-ιに対して隠蔽できる。好ましくは、本形態の第一入力情報τι1は自然数選択部11102で選択された自然数bιにさらに対応し、第二入力情報τι2は自然数選択部11102で選択された自然数aιにさらに対応する。これにより、能力提供装置112-ιから提供された復号能力を計算装置111が高い精度で評価できるステップS11103。図26に例示するように、第一入力情報τι1は能力提供装置112-ι図20の第一出力情報計算部11201-ιに入力され、第二入力情報τι2は第二出力情報計算部11202-ιに入力されるステップS11200。第一出力情報計算部11201は、第一入力情報τι1と鍵記憶部11204に記憶された復号鍵sιとを用い、或る確率より大きな確率でfιτι1を正しく計算し、得られた計算結果を第一出力情報zι1とするステップS11201。第二出力情報計算部11202-ιは、第二入力情報τι2と鍵記憶部11204-ιに記憶された復号鍵sιとを用い、或る確率より大きな確率でfιτι2を正しく計算し、得られた演算結果を第二出力情報zι2とするステップS11202。なお、或る確率は100未満の確率である。或る確率の例は無視することができない確率であり、無視することができない確率の例は、セキュリティパラメータkについての広義単調増加関数である多項式を多項式ψkとした場合の1/ψk以上の確率である。すなわち、第一出力情報計算部11201-ιや第二出力情報計算部11202-ιは、意図的又は意図的ではない誤差を含んだ計算結果を出力し得る。言い換えると、第一出力情報計算部11201-ιでの計算結果がfιτι1の場合もあればfιτι1でない場合もあり、第二出力情報計算部11202-ιでの計算結果がfιτι2の場合もあればfιτι2でない場合もある。第一出力情報計算部11201-ιは第一出力情報zι1を出力し、第二出力情報計算部11202-ιは第二出力情報zι2を出力するステップS11203。図25に戻り、第一出力情報zι1は計算装置111図19の第一計算部11105に入力され、第二出力情報zι2は第二計算部11108に入力される。これらの第一出力情報zι1及び第二出力情報zι2が、能力提供装置112-ιから計算装置111に与えられた復号能力に相当するステップS11104。第一計算部11105は、第一出力情報zι1から演算結果uι=fιλιbxι1を生成する。ここで、fιλιbxι1を生成計算するとは、fιλιbxι1と定義される式の値を計算することである。式fιλιbxι1の値を最終的に計算することができれば、途中の計算方法は問わない。これは、この出願で登場する他の式の計算についても同様である。演算結果uιは第一べき乗計算部11106に送られるステップS11105。第一べき乗計算部11106はuι’=uιaを計算する。計算結果uιとその計算結果に基づいて計算されたuι’との組uι,uι’は、第一リスト記憶部11107に記憶されるステップS11106。判定部11111は、第一リスト記憶部11107に記憶された組uι,uι’及び第二リスト記憶部11110に記憶された組vι,vι’の中で、uι’=vι’となるものがあるか判定するステップS11107。もし、第二リスト記憶部11110に組vι,vι’が記憶されていない場合には、このステップS11107の処理を行わずに、次のステップS11108の処理を行う。uι’=vι’となるものがあった場合には、ステップS11114に進む。uι’=vι’となるものがなかった場合には、ステップS11108に進む。ステップS11108では、第二計算部11108が、第二出力情報zι2から演算結果vι=fιλιaxι2を生成する。演算結果vιは第二べき乗計算部11109に送られるステップS11108。第二べき乗計算部11109はvι’=vιbを計算する。計算結果vιとその計算結果に基づいて計算されたvι’との組vι,vι’は、第二リスト記憶部11110に記憶されるステップS11109。判定部11111は、第一リスト記憶部11107に記憶された組uι,uι’及び第二リスト記憶部11110に記憶された組vι,vι’の中で、uι’=vι’となるものがあるか判定するステップS11110。uι’=vι’となるものがあった場合には、ステップS11114に進む。uι’=vι’となるものがなかった場合には、ステップS11111に進む。ステップS11111では、制御部11113がtι=Tιであるか判定するステップS11111。Tιは予め定められた自然数である。tι=Tιであれば、最終出力部11112が、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS11113、処理を終える。tι=Tιでない場合には、制御部11113は、tιを1だけインクリメント、すなわちtι=tι1tι1を新たなtιとしてステップS11112、ステップS11103に戻る。計算をすることができなかった旨の情報この例では記号⊥は、能力提供装置112-ιが正しく計算を行う信頼性がTιで定められる基準を下回るということを意味する。言い換えれば、Tι回の繰り返しで正しい演算を行うことができなかったということを意味する。ステップS11114では、最終出力部11112が、uι’=vι’であると判定されたuι’及びvι’に対応するuι及びvιを用いてuιb’vιa’を計算して、出力するステップS11114。このように計算されたuιb’vιa’は高い確率で暗号文λιを特定の復号鍵sιで復号した復号結果fιλιとなる高い確率でuιb’vιa’=fιλιとなる理由については後述する。よって、上述した処理を複数回繰り返し、ステップS11114で得られた値のうち最も頻度の高い値を復号結果fιλιとすればよい。後述するように、設定によっては圧倒的な確率でuιb’vιa’=fιλιとなる。その場合にはステップS11114で得られた値をそのまま復号結果fιλιとしてよい。以上の処理が各ι=1,,ωについてそれぞれ実行されることで得られた各復号結果fιλιは復元部11100に入力される。復元部11100は、各ι=1,,ωについてのfιλι=uιb’vιa’を用い、各ι=1,,ωについての暗号文λιを復号鍵sιで復号して得られる復号値がすべて得られた場合にのみ復元可能な復元値の復元処理を行う。例えば、前述した《分散情報の例1》によって分散情報が生成されていたのであれば、復元部11100はビット結合値f1λ1||fωλωを復元値mes’として生成する。例えば、前述した《分散情報の例2》によって分散情報が生成されていたのであれば、復元部11100は各復号結果f1λ1,,fωλωの排他的論理和を復元値mes’として生成する。例えば、前述した《分散情報の例3》によって分散情報が生成されていたのであれば、復元部11100は、秘密分散方式に対応する復元方法を用い、各復号結果f1λ1,,fωλωから復元値mes’を生成する。復号結果f1λ1,,fωλωがすべて正しい場合、復元部11100で得られる復元値mes’はメッセージmesと等しい。一方、復号結果f1λ1,,fωλωのすべてが誤りであった場合、復元部11100で得られる復元値mes’がメッセージmesと等しくなる確率は無視できるほど小さい。≪高い確率でuιb’vιa’=fιλιとなる理由について≫ここでは表記の簡略化のためιを省略して説明する。Xを群Gに値を持つ確率変数とする。w∈Gについて、要求を受けるたびに確率変数Xに従った標本x’に対応するwx’を返すものを、wについて誤差Xを持つ標本器samplerと呼ぶ。w∈Gについて、自然数aが与えられるたびに確率変数Xに従った標本x’に対応するwax’を返すものを、wについて誤差Xを持つ乱数化可能標本器randomizablesamplerと呼ぶ。乱数化可能標本器はa=1として用いられれば標本器として機能する。本実施形態の入力情報提供部11104と第一出力情報計算部11201と第一計算部11105との組み合わせが、fλについて誤差X1を持つ乱数化可能標本器第一乱数化可能標本器と呼ぶであり、入力情報提供部11104と第二出力情報計算部11202と第二計算部11108との組み合わせが、fλについて誤差X2を持つ乱数化可能標本器第二乱数化可能標本器と呼ぶである。u’=v’が成立するのは、すなわちua=vbが成立するのは、第一乱数化可能標本器がu=fλbを正しく計算しており、第二乱数化可能標本器がv=fλaを正しく計算しているx1及びx2が群Gの単位元egである可能性が高いことを発明者は見出した。説明の簡略化の観点から、この証明は第十一実施形態で行う。第一乱数化可能標本器がu=fλbを正しく計算しており、第二乱数化可能標本器がv=fλaを正しく計算しているときx1及びx2が群Gの単位元egであるとき、ub’va’=fλbx1b’fλax2a’=fλbegb’fλaega’=fλbb’egb’fλaa’ega’=fλ=fλとなる。q1,q2∈Iについて、i=1,2の各々について関数πiをπiq1,q2=qiで定義する。さらに、L=min♯π1S,♯π2Sとする。♯は、集合の位数である。群Gが巡回群や位数の計算が困難な群であるときには、計算装置111が⊥以外を出力するときの出力がfλではない確率は、無視できる程度の誤差の範囲で高々T2L/♯S程度と期待することができる。もしL/♯Sが無視できる量でTが多項式オーダー程度の量であれば、計算装置111は圧倒的な確率で正しいfιλを出力する。L/♯Sが無視できる量になるようなSの例には、例えばS={1,d|d∈[2,|G|-1]}がある。<復号制御処理>次に、本形態の復号制御処理を説明する。復号制御装置113が計算装置111の復号処理を制御する場合、復号制御装置113は、計算装置111の復号処理を制御する復号制御命令をすべての能力提供装置112-ιに出力する。復号制御命令が入力された能力提供装置112-ιは、入力された復号制御命令に従って、第一出力情報zι1及び第二出力情報zι2の両方の出力の有無を制御する。計算装置111は、第一出力情報zι1及び第二出力情報zι2が与えられなければ暗号文λιを復号することができない。そのため、第一出力情報zι1及び第二出力情報zι2の両方の出力の有無を制御することで、計算装置111の復号能力を制御できる。以下に復号処理の制御方法を例示する。≪復号処理の制御方法の例1≫復号処理の制御方法の例1では、復号制御命令が計算装置111の復号能力を制限するための復号制限命令com1-ιを含む。復号制限命令com1-ιが能力提供装置112-ιの制御部11205-ιに入力された場合、制御部11205-ιが第一出力情報zι1及び第二出力情報zι2の両方の出力を禁止する。計算装置111の復号能力を制限する場合、復号制御装置113図21の制御命令部11302は、すべてのιについて復号制限命令com1-ιを出力する。復号制限命令com1-ιは出力部11303から能力提供装置112-ιに出力される。能力提供装置112-ι図20の制御部11205-ιは、復号制限命令com1-ιが入力されたか否かを判断し、復号制限命令com1-ιが制御部11205-ιに入力されない場合には復号制御処理を行わない。一方、復号制限命令com1-ιが制御部11205-ιに入力された場合には、制御部11205-ιは第一出力情報zι1及び第二出力情報zι2の両方の出力を禁止する制御を行う復号制限モード。復号制限モードでは、制御部11205-ιが第一出力情報計算部11201-ιによる第一出力情報zι1の出力及び第二出力情報計算部11201-ιによる第二出力情報zι2の出力の両方を禁止する。第一出力情報zι1及び/又は第二出力情報zι2の出力を禁止する制御の一例は、第一出力情報zι1及び/又は第二出力情報zι2の生成は禁止しないがこれらの出力を禁止する制御である。第一出力情報zι1及び/又は第二出力情報zι2の出力を禁止する制御の他の例は、第一出力情報zι1及び/又は第二出力情報zι2の代わりにダミー情報を出力させる制御である。なお、ダミー情報の例は、乱数その他の暗号文λιに依存しない情報である。第一出力情報zι1及び/又は第二出力情報zι2の出力を禁止する制御の別の例は、第一出力情報zι1及び/又は第二出力情報zι2の生成自体を禁止する制御である。第一出力情報zι1及び/又は第二出力情報zι2の生成自体を禁止する制御を行う場合には、第一出力情報zι1及び/又は第二出力情報zι2の生成を行うために必要な情報を無効又は削除してもよいし、しなくてもよい。例えば、鍵記憶部11204-ιに記憶された復号鍵sιを無効又は削除してもよいし、しなくてもよい。第一出力情報zι1及び第二出力情報zι2の両方の出力が禁止された場合、能力提供装置112-ιはステップS11203で第一出力情報zι1及び第二出力情報zι2の両方を出力しない。そのため、計算装置111はステップS11104で第一出力情報zι1及び第二出力情報zι2の両方を取得できず、演算結果uι及びvιを計算できないため、正しい復号結果fιλを得ることができない。すべてのιについて正しい復号結果fιλが得られなかった場合、復元部11100で得られる復元値mes’がメッセージmesと等しくなる確率は無視できるほど小さい。これにより、計算装置111の復号能力を制限できる。≪復号処理の制御方法の例2≫復号処理の制御方法の例2では、復号制御命令が計算装置111の復号能力の制限を開放するための復号開放命令com2-ιを含み、復号開放命令com2-ιが能力提供装置112-ιの制御部11205-ιに入力された場合、制御部11205-ιは第一出力情報zι1及び第二出力情報zι2の少なくとも一方の出力を許可する。復号処理の制御方法の例2は、例えば、復号処理の制御方法の例1によって第一出力情報zι1及び第二出力情報zι2の両方の出力が禁止された後、再び、第一出力情報zι1及び第二出力情報zι2の出力を許可する場合に行われる。この際、第一出力情報zι1及び/又は第二出力情報zι2の生成を行うために必要な情報が無効又は削除されていた場合には、復号開放命令com2-ιが当該情報を含み、当該情報を能力提供装置112-ιに再設定することにしてもよい。その他、復号処理の制御方法の例2は、例えば、初期状態において第一出力情報zι1及び第二出力情報zι2の両方が禁止されている場合に、第一出力情報zι1及び第二出力情報zι2の出力を許可する場合に行われてもよい。計算装置111の復号能力の制限を開放する場合、復号制御装置113図21の制御命令部11302がすべてのιについて復号開放命令com2-ιを出力する。復号制限命令com2-ιは出力部11303から能力提供装置112-ιに出力される。能力提供装置112-ι図20の制御部11205-ιは、復号開放命令com2-ιが入力されたか否かを判断し、復号開放命令com2-ιが制御部11205-ιに入力されていない場合には復号制御処理を行わない。一方、復号開放命令com2-ιが制御部11205-ιに入力された場合には、制御部11205-ιは第一出力情報zι1及び第二出力情報zι2の両方の出力を許可する制御を行う復号許可モード。第一出力情報zι1及び第二出力情報zι2の両方の出力が許可された場合、能力提供装置112-ιはステップS11203で第一出力情報zι1又は第二出力情報zι2の両方を出力する。そのため、計算装置111はステップS11104で第一出力情報zι1又は第二出力情報zι2の両方を取得でき、演算結果uι又はvιを計算できるため、高い確率で復号結果を得ることができる。これにより、計算装置111の復号能力の制限を開放することができる。≪復号処理の制御方法の例3≫復号処理の制御方法の例1,2では、各復号制御命令が何れかの1つのιに対応し復号関数fιに対応し、能力提供装置112-ιの制御部11205-ιが復号制御命令に対応する復号制御命令に対応する復号関数fιに対応する第一出力情報zι1及び第二出力情報zι2のすべての出力の有無を制御することとした。しかしながら、復号制御命令が複数のιに対応し、能力提供装置112-ιの制御部11205-ιが復号制御命令に対応する第一出力情報zι1及び第二出力情報zι2の出力の有無を制御することとしてもよい。[第八実施形態]第八実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した例である。以下、第七実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。以下の説明において、同一の参照番号が付された部分は同一の機能を持つものとし、同一の参照番号が付されたステップは同一の処理を表すものとする。<構成>図18に例示するように、第八実施形態の代理計算システム102は、計算装置111が計算装置121に置換され、能力提供装置112-1,,112-Γが能力提供装置122-1,,122-Γに置換されたものである。図19に例示するように、第八実施形態の計算装置121は、例えば、自然数記憶部11101と自然数選択部11102と整数計算部11103と入力情報提供部12104と第一計算部12105と第一べき乗計算部11106と第一リスト記憶部11107と第二計算部12108と第二べき乗計算部11109と第二リスト記憶部11110と判定部11111と最終出力部11112と制御部11113とを有する。図22に例示するように、本形態の入力情報提供部12104は、例えば、第一乱数生成部12104aと第一入力情報計算部12104bと第二乱数生成部12104cと第二入力情報計算部12104dとを有する。図20に例示するように、第八実施形態の能力提供装置122-ιι=1,,ω、ωは2以上Γ以下の整数は、例えば、第一出力情報計算部12201-ιと第二出力情報計算部12202-ιと鍵記憶部11204-ιと制御部11205-ιとを有する。能力提供装置122-ι1,,122-Γが存在する場合、これらの構成は能力提供装置122-ιと同様である。<復号処理>次に本形態の復号処理を説明する。第八実施形態では、復号関数fιを準同型関数とし、群Hを巡回群とし、群Hの生成元をμιh、群Hの位数をKιH、νι=fιμιhとする。復号関数fιが準同型関数である例はRSA暗号などである。その他の前提は、計算装置111が計算装置121に置換され、能力提供装置112-1,,112-Γが能力提供装置122-1,,122-Γに置換されている以外、第七実施形態と同一である。図25及び図26に例示するように、第八実施形態の処理は第七実施形態のステップS11103~S11105,S11108,S11200~S11203が、それぞれ、ステップS12103~S12105,S12108,S12200~S12203に置換されたものである。以下ではステップS12103~S12105,S12108,S12200~S12203の処理のみを説明する。《ステップS12103の処理》計算装置121図19の入力情報提供部12104は、入力された暗号文λιにそれぞれ対応する第一入力情報τι1及び第二入力情報τι2を生成して出力する図25/ステップS12103。以下、図27を用いて本形態のステップS12103の処理を説明する。第一乱数生成部12104a図22は、0以上Kι,H未満の自然数の一様乱数rι,1を生成する。生成された乱数rι,1は、第一入力情報計算部12104b及び第一計算部12105に送られるステップS12103a。第一入力情報計算部12104bは、入力された乱数rι,1と暗号文λιと自然数bιとを用いて第一入力情報τι1=μιhrλιbを計算するステップS12103b。第二乱数生成部12104cは、0以上KH未満の自然数の一様乱数rι,2を生成する。生成された乱数rι,2は、第二入力情報計算部12104d及び第二計算部12108に送られるステップS12103c。第二入力情報計算部12104dは、入力された乱数rι,2と暗号文λιと自然数aιとを用いて第二入力情報τι2=μιhrλιaを計算するステップS12103d。第一入力情報計算部12104b及び第二入力情報計算部12104dは、以上のように生成した第一入力情報τι1及び第二入力情報τι2を出力するステップS12103e。なお、本形態の第一入力情報τι1及び第二入力情報τι2は、それぞれ、乱数rι,1,rι,2によって暗号文λιとの関係をかく乱させた情報である。これにより、計算装置122-ιは、暗号文λιを能力提供装置122-ιに対して隠蔽できる。本形態の第一入力情報τι1は自然数選択部11102で選択された自然数bιにさらに対応し、第二入力情報τι2は自然数選択部11102で選択された自然数aιにさらに対応する。これにより、能力提供装置122-ιから提供された復号能力を計算装置121が高い精度で評価できる。《ステップS12200~S12203の処理》図26に例示するように、まず、第一入力情報τι1=μιhrλιbが能力提供装置122-ι図20の第一出力情報計算部12201-ιに入力され、第二入力情報τι2=μιhrλιaが第二出力情報計算部12202-ιに入力されるステップS12200。第一出力情報計算部12201-ιは、第一入力情報τι1=μιhrλιbと鍵記憶部11204-ιに記憶された復号鍵sιとを用い、或る確率より大きな確率でfιμιhrλιbを正しく計算し、得られた計算結果を第一出力情報zι1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部12201-ιでの計算結果がfιμιhrλιbとなる場合もあれば、fιμιhrλιbとならない場合もあるステップS12201。第二出力情報計算部12202-ιは、第二入力情報τι2=μιhrλιaと鍵記憶部11204-ιに記憶された復号鍵sιとを用い、或る確率より大きな確率でfιμιhrλιaを正しく計算し、得られた計算結果を第二出力情報zι2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部12202-ιでの計算結果がfιμιhrλιaとなる場合もあれば、fιμιhrλιaとならない場合もあるステップS12202。第一出力情報計算部12201-ιは第一出力情報zι1を出力し、第二出力情報計算部12202-ιは第二出力情報zι2を出力するステップS12203。《ステップS12104及びS12105の処理》図25に戻り、第一出力情報zι1は計算装置121図19の第一計算部12105に入力され、第二出力情報zι2は第二計算部12108に入力される。これらの第一出力情報zι1及び第二出力情報zι2が、能力提供装置122-ιから計算装置121に与えられた復号能力に相当するステップS12104。第一計算部12105は、入力された乱数rι,1及び第一出力情報zι1を用いてzι1νιrを計算してその計算結果をuιとする。計算結果uιは、第一べき乗計算部11106に送られる。ここで、uι=zι1νιr=fιλιbxι1となる。すなわち、zι1νιrは、fιλιについて誤差Xι1を持つ乱数化可能標本器の出力となる。その理由については後述するステップS12105。《ステップS12108の処理》第二計算部12108は、入力された乱数rι,2及び第二出力情報zι2を用いてzι2νιrを計算してその計算結果をvιとする。計算結果vιは、第二べき乗計算部11109に送られる。ここで、vι=zι,2νιr=fιλιaxι2となる。すなわち、zι2νιrは、fιλιについて誤差Xι2を持つ乱数化可能標本器の出力となる。その理由については後述するステップS12108。≪zι1νιr,zι2νιrがfιλιについてそれぞれ誤差Xι1,Xι2を持つ乱数化可能標本器の出力となる理由について≫cを自然数、Rを乱数として、能力提供装置122がμhRλcを用いて行う計算の計算結果をBμhRλcとする。すなわち、第一出力情報計算部12201-ιや第二出力情報計算部12202-ιが計算装置121に返す計算結果をz=BμhRλcとする。さらに、群Gに値を持つ確率変数XをX=BμhR’fμhR’1と定義する。このとき、zνR=BμhRλcfμhR=XfμhRλcfμhR=XfμhRfλcfμhR=fλcXとなる。すなわち、zνRは、fλについて誤差Xを持つ乱数化可能標本器の出力となる。上記式展開において、X=BμhR’fμhR’1=BμhRλcfμhRλc1であり、BμhRλc=XfμhRλcであるという性質を用いている。この性質は、関数fιが準同型関数であり、Rが乱数であることに基づく。したがって、aι,bιが自然数、rι,1,rι,2が乱数であることを考慮すると、同様に、zι1νιr,zι2νιrがfιλιについてそれぞれ誤差Xι1,Xι2を持つ乱数化可能標本器の出力となるのである。[第九実施形態]第九実施形態は第八実施形態の変形例であり、aι=1やbι=1のときに前述した標本器によってuι又はvιの値を計算する。一般に乱数化可能標本器よりも標本器の計算量は小さい。aι=1やbι=1のときに乱数化可能標本器に代わり、標本器が計算を行うことで、代理計算システムの計算量を小さくすることができる。以下、第七実施形態及び第八実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。<構成>図18に例示するように、第九実施形態の代理計算システム103は、計算装置121が計算装置131に置換され、能力提供装置122-1,,122-Γが能力提供装置132-1,,132-Γに置換されたものである。図19に例示するように、第九実施形態の計算装置131は、例えば、自然数記憶部11101と自然数選択部11102と整数計算部11103と入力情報提供部12104と第一計算部12105と第一べき乗計算部11106と第一リスト記憶部11107と第二計算部12108と第二べき乗計算部11109と第二リスト記憶部11110と判定部11111と最終出力部11112と制御部11113と第三計算部13109とを有する。図20に例示するように、第九実施形態の能力提供装置132-ιは、例えば、第一出力情報計算部12201-ιと第二出力情報計算部12202-ιと鍵記憶部11204-ιと制御部11205-ιと第三出力情報計算部13203-ιとを有する。<復号処理>次に本形態の復号処理を説明する。第八実施形態との相違点を説明する。図25及び図26に例示するように、第九実施形態の処理は第八実施形態のステップS12103~S12105,S12108,S12200~S12203が、それぞれ、ステップS13103~S13105,S13108,S12200~S12203及びS13205~S13209に置換されたものである。以下ではステップS13103~S13105,S13108,S12200~S12203及びS13205~S13209の処理を中心に説明する。《ステップS13103の処理》計算装置131図19の入力情報提供部13104は、入力された暗号文λιにそれぞれ対応する第一入力情報τι1及び第二入力情報τι2を生成して出力する図25/ステップS13103。以下、図27を用いて本形態のステップS13103の処理を説明する。制御部11113図19は、自然数選択部11102で選択された自然数aι,bιに応じて入力情報提供部13104を制御する。制御部11113でbが1であるかが判定されステップS13103a、b≠1であると判定された場合、前述のステップS12103a及びS12103bの処理が実行され、ステップS13103gに進む。一方、ステップS13103aでbι=1であると判定された場合、第三乱数生成部13104eが、0以上KιH未満の自然数の乱数rι,3を生成する。生成された乱数rι,3は第三入力情報計算部13104f及び第三計算部13109に送られるステップS13103b。第三入力情報計算部13104fは、入力された乱数rι,3と暗号文λιとを用いてλιを計算し、これを第一入力情報τι1とするステップS13103c。その後、ステップS13103gに進む。ステップS13103gでは、制御部11113でaιが1であるかが判定されステップS13103g、aι≠1であると判定された場合、前述のステップS12103c及びステップS12103dの処理が実行される。一方、ステップS13103gでaι=1であると判定された場合、第三乱数生成部13104eが、0以上KιH未満の自然数の乱数rι,3を生成する。生成された乱数rι,3は第三入力情報計算部13104fに送られるステップS13103h。第三入力情報計算部13104fは、入力された乱数rι,3と暗号文λιとを用いてλιを計算し、これを第二入力情報τι2とするステップS13103i。第一入力情報計算部12104b、第二入力情報計算部12104d、第三入力情報計算部13104fは、以上のように生成した第一入力情報τι1及び第二入力情報τι2を対応する自然数aι,bιの情報とともに出力するステップS13103e。なお、本形態の第一入力情報τι1及び第二入力情報τι2は、それぞれ、乱数rι,1,rι,2,rι,3によって暗号文λιとの関係をかく乱させた情報である。これにより、計算装置131は、暗号文λιを能力提供装置132-ιに対して隠蔽できる。《S12200~S12203及びS13205~S13209の処理》以下、図26を用いて本形態のS12200~S12203及びS13205~S13209の処理を説明する。制御部11205-ι図20は、入力された自然数aι,bιに応じ、第一出力情報計算部12201-ι、第二出力情報計算部12202-ι、及び第三出力情報計算部13203-ιを制御する。制御部11205-ιの制御に基づき、bι≠1の場合の第一入力情報τι1=μιhrλιbは能力提供装置132-ι図20の第一出力情報計算部12201-ιに入力され、aι≠1の場合の第二入力情報τι2=μιhrλιaは第二出力情報計算部12202-ιに入力される。bι=1の場合の第一入力情報τι1=λιrやaι=1の場合の第二入力情報τι2=λιrは第三出力情報計算部13203-ιに入力されるステップS13200。制御部11113でbιが1であるかが判定されステップS13205、bι≠1であると判定された場合、前述のステップS12201の処理が実行される。その後、制御部11113でaが1であるかが判定されステップS13208、a≠1であると判定された場合、前述したステップS12202の処理が実行されてステップS13203に進む。一方、ステップS13208でaι=1であると判定された場合、第三出力情報計算部13203-ιは、第二入力情報τι2=λιrを用い、或る確率より大きな確率でfιλιrを正しく計算し、得られた計算結果を第三出力情報zι3とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部13203-ιでの計算結果がfιλιrとなる場合もあれば、fιλιrとならない場合もあるステップS13209。その後、ステップS13203に進む。ステップS13205でbι=1であると判定された場合、第三出力情報計算部13203-ιは、第二入力情報τι1=λιrを用い、或る確率より大きな確率でfιλιrを正しく計算し、得られた計算結果を第三出力情報zι3とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部13203-ιでの計算結果がfιλιrとなる場合もあれば、fιλιrとならない場合もあるステップS13206。その後、制御部11113でaιが1であるかが判定されステップS13207、aι=1であると判定された場合にはステップS13203に進み、aι≠1であると判定された場合にはステップS12202に進む。ステップS13203では、第一出力情報zι1を生成した第一出力情報計算部12201-ιは第一出力情報zι1を出力し、第二出力情報zι2を生成した第二出力情報計算部12202-ιは第二出力情報zι2を出力し、第三出力情報zι3を生成した第三出力情報計算部12202-ιは第三出力情報zι3を出力するステップS13203《ステップS13104及びS13105の処理》図25に戻り、制御部11113の制御のもと、第一出力情報zι1は計算装置131図19の第一計算部12105に入力され、第二出力情報zι2は第二計算部12108に入力され、第三出力情報zι3は第三計算部13109に入力されるステップS13104。bι≠1であれば、第一計算部12105が、前述のステップS12105の処理によってuιを生成し、bι=1であれば、第三計算部13109が、zι31rを計算してその計算結果をuιとする。計算結果uιは第一べき乗計算部11106に送られる。ここで、bι=1の場合、uι=zι31r=fιλιxι3となる。すなわち、zι31rは、fιλιについて誤差Xι3を持つ標本器となる。その理由については後述するステップS13105。《ステップS13108の処理》aι≠1であれば、第二計算部12108が、前述のステップS12108の処理によってvιを生成し、aι=1であれば、第三計算部13109が、zι31rを計算してその計算結果をvιとする。計算結果vιは第二べき乗計算部11109に送られる。ここで、aι=1の場合、vι=zι31r=fιλιxι3となる。すなわち、zι31rは、fιλιについて誤差Xι3を持つ標本器となる。その理由については後述するステップS13108。なお、zι31rの計算、すなわちzι3のべき乗根の計算が困難な場合には、次のようにしてuι及び/又はvιを計算してもよい。第三計算部13109は、乱数rι,3とその乱数rι,3に基づいて計算されたzι3の組を順次α1,β1,α2,β2,...,αmι,βmι,...として図示していない記憶部に記憶する。mιは1以上の自然数である。第三計算部13109は、α1,α2,...,αmの最小公倍数が1になれば、γ1,γ2,...,γmιを整数としてγ1α1γ2α2...γmαm=1となるγ1,γ2,...,γmを計算して、そのγ1,γ2,...,γmιを用いてΠi1mβiγi=β1γ1β2γ2...βmγmを計算して、その計算結果をuι及び/又はvιとしてもよい。なお、この出願において、αを第一の文字、βを第二の文字、γを数字として、αβγと表記した場合には、そのβγはβγ、すなわちβの下付きγを意味する。≪zι31rがfιλιについて誤差Xι3を持つ標本器となる理由について≫R及びR’を乱数として、能力提供装置132-ιがλRを用いて行う計算の計算結果をBλRとする。すなわち、第一出力情報計算部12201-ιや第二出力情報計算部12202-ιや第三出力情報計算部13203-ιが計算装置131に返す計算結果をz=BλRとする。さらに、群Gに値を持つ確率変数XをX=BλR1Rfλ1と定義する。このとき、z1R=BλR1R=Xfλ=fλXとなる。すなわち、z1Rは、fλについて誤差Xを持つ標本器となる。上記式展開において、X=BλR1RfλR1であり、BλR1R=XfλRであるという性質を用いている。この性質は、R及びR’が乱数であることに基づく。したがって、rι,3が乱数であることを考慮すると、同様に、zι31rがfιλιについて誤差Xι3を持つ標本器となるのである。[第十実施形態]第十実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、Hι=Gι×Gι、復号関数fιがElGamal暗号の復号関数、すなわち復号鍵sι及び暗号文λι=cι1,cι2に対してfιcι1,cι2=cι1cι2sιである場合の第一乱数化可能標本器及び第二乱数化可能標本器の例を具体化したものである。以下、第七実施形態と異なる部分を中心に説明し、復号制御処理などの共通する部分については重複説明を省略する。図18に例示するように、第十実施形態の代理計算システム104は、計算装置111が計算装置141に置換され、能力提供装置112-1,,112-Γが能力提供装置142-1,,142-Γに置換されたものである。図19に例示するように、第十実施形態の計算装置141は、例えば、自然数記憶部11101と自然数選択部11102と整数計算部11103と入力情報提供部14104と第一計算部14105と第一べき乗計算部11106と第一リスト記憶部11107と第二計算部14108と第二べき乗計算部11109と第二リスト記憶部11110と判定部11111と最終出力部11112と制御部11113とを有する。図23に例示するように、本形態の入力情報提供部14104は、例えば、第四乱数生成部14104aと第五乱数生成部14104bと第一入力情報計算部14104cと第六乱数生成部14104dと第七乱数生成部14104eと第二入力情報計算部14104fとを有する。第一入力情報計算部14104cは、例えば、第四入力情報計算部14104caと第五入力情報計算部14104cbとを有し、第二入力情報計算部14104fは、第六入力情報計算部14104faと第七入力情報計算部14104fbとを有する。図20に例示するように、第十実施形態の能力提供装置142-ιは、例えば、第一出力情報計算部14201-ιと第二出力情報計算部14202-ιと鍵記憶部11204-ιと制御部11205-ιとを有する。能力提供装置142-ι1,,42-Γが存在する場合、これらの構成は能力提供装置142-ιと同様である。<復号処理>次に本形態の復号処理を説明する。第十実施形態では、群Hιが群Gιの直積群Gι×Gι、群Gιが巡回群、暗号文λι=cι1,cι2∈Hιであり、fιcι1,cι2が準同型関数であり、群Gιの生成元をμιgとし、群Gιの位数をKι,Gとし、同じ復号鍵sιに対する暗号文Vι,Wι∈Hιとその暗号文を復号した復号文fιVι,Wι=Yι∈Gιとの組が計算装置141及び能力提供装置142-ιに事前設定され、計算装置141及び能力提供装置142-ιがこの組を利用可能とされているものとする。図25及び図26に例示するように、第十実施形態の処理は第七実施形態のステップS11103~S11105,S11108,S11200~S11203が、それぞれ、ステップS14103~S14105,S14108,S14200~S14203に置換されたものである。以下ではステップS14103~S14105,S14108,S14200~S14203の処理のみを説明する。《ステップS14103の処理》計算装置141図19の入力情報提供部14104は、入力された暗号文λι=cι1,cι2に対応する第一入力情報τι1及び暗号文λι=cι1,cι2に対応する第二入力情報τι2を生成して出力する図25/ステップS14103。以下、図28を用いて本形態のステップS14103の処理を説明する。第四乱数生成部14104a図23は、0以上KιG未満の自然数の一様乱数rι,4を生成する。生成された乱数rι,4は、第四入力情報計算部14104ca、第五入力情報計算部14104cb、及び第一計算部14105に送られるステップS14103a。第五乱数生成部14104bは、0以上Kι,G未満の自然数の一様乱数rι,5を生成する。生成された乱数rι,5は、第五入力情報計算部14104cb、及び第一計算部14105に送られるステップS14103b。第四入力情報計算部14104caは、自然数選択部11102で選択された自然数bι、暗号文λιが含むcι2、及び乱数rι,4を用い、第四入力情報cι2bWιrを計算するステップS14103c。第五入力情報計算部14104cbは、自然数選択部11102で選択された自然数bι、暗号文λιが含むcι1、及び乱数rι,4,rι,5を用い、第五入力情報cι1bVιrμιgrを計算するステップS14103d。第六乱数生成部14104dは、0以上KιG未満の自然数の一様乱数rι,6を生成する。生成された乱数rι,6は、第六入力情報計算部14104fa、第七入力情報計算部14104fb、及び第二計算部14108に送られるステップS14103e。第七乱数生成部14104eは、0以上KG未満の自然数の一様乱数rι,7を生成する。生成された乱数rι,7は、第七入力情報計算部14104fb、及び第二計算部14108に送られるステップS14103f。第六入力情報計算部14104faは、自然数選択部11102で選択された自然数aι、暗号文λιが含むcι2、及び乱数rι,6を用い、第六入力情報cι2aWιrを計算するステップS14103g。第七入力情報計算部14104fbは、自然数選択部11102で選択された自然数aι、暗号文λιが含むcι1、及び乱数rι,6,rι,7を用い、第七入力情報cι1aVιrμιgrを計算するステップS14103h。第一入力情報計算部14104cは、以上のように生成した第四入力情報cι2bWιr及び第五入力情報cι1bVιrμιgrを第一入力情報τι1=cι2bWιr,cι1bVιrμιgrとして出力する。第二入力情報計算部14104fは、以上のように生成した第六入力情報cι2aWιr及び第七入力情報cι1aVιrμιgrを第二入力情報τι2=cι2aWιr,cι1aVιrμιgrとして出力するステップS14103i。《ステップS14200~S14203の処理》図26に例示するように、まず、第一入力情報τι1=cι2bWιr,cι1bVιrμιgrが能力提供装置142-ι図20の第一出力情報計算部14201-ιに入力され、第二入力情報τι2=cι2aWιr,cι1aVιrμιgrが第二出力情報計算部14202-ιに入力されるステップS14200。第一出力情報計算部14201-ιは、第一入力情報τι1=cι2bWιr,cι1bVιrμιgrと鍵記憶部11204-ιに記憶された復号鍵sιとを用い、或る確率より大きな確率でfιcι1bVιrμιgr,cι2bWιrを正しく計算し、計算結果を第一出力情報zι1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部14201-ιでの計算結果がfιcι1bVιrμιgr,cι2bWιrとなる場合もあれば、fιcι1bVιrμιgr,cι2bWιrとならない場合もあるステップS14201。第二出力情報計算部14202-ιは、第二入力情報τι2=cι2aWιr,cι1aVιrμιgrと鍵記憶部11204に記憶された復号鍵sιとを用い、或る確率より大きな確率でfιcι1aVιrμιgr,cι2aWιrを正しく計算可能であり、得られた計算結果を第二出力情報zι2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部14202-ιでの計算結果がfιcι1aVιrμιgr,cι2aWιrとなる場合もあれば、fιcι1aVιrμιgr,cι2aWιrとならない場合もあるステップS14202。第一出力情報計算部14201-ιは第一出力情報zι1を出力し、第二出力情報計算部14202-ιは第二出力情報zι2を出力するステップS14203。《ステップS14104及びS14105の処理》図25に戻り、第一出力情報zι1は計算装置141図19の第一計算部14105に入力され、第二出力情報zι2は第二計算部14108に入力されるステップS14104。第一計算部14105は、入力された第一出力情報zι1及び乱数rι,4,rι,5を用い、zι1Yιrμιgrを計算してその計算結果をuιとするステップS14105。計算結果uιは、第一べき乗計算部11106に送られる。ここで、uι=zι1Yιrμιgr=fιcι1,cι2bxι1となる。すなわち、zι1Yιrμιgrは、fιcι1,cι2について誤差Xι1を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS14108の処理》第二計算部14108は、入力された第二出力情報zι2及び乱数rι,6,rι,7を用い、zι2Yιrμιgrを計算してその計算結果をvιとする。計算結果vιは、第二べき乗計算部11109に送られる。ここで、vι=zι2Yιrμιgr=fιcι1,cι2axι,2となる。すなわち、zι2Yιrμιgrは、fιcι1,cι2について誤差Xι2を持つ乱数化可能標本器の出力となる。その理由については後述する。≪zι1Yιrμιgr,zι2Yιrμιgrがfιcι1,cι2についてそれぞれ誤差Xι1,Xι2を持つ乱数化可能標本器の出力となる理由について≫cを自然数、R1、R2、R1’及びR2’を乱数として、能力提供装置142-ιがc1cVR1μgR2及びc2cWR1を用いて行う計算の計算結果をBc1cVR1μgR2,c2cWR1とする。すなわち、第一出力情報計算部14201-ιや第二出力情報計算部14202-ιが計算装置141に返す計算結果をz=Bc1cVR1μgR2,c2cWR1とする。さらに、群Gに値を持つ確率変数XをX=BVR1’μgR2’,WR1’fVR1’μgR2’,WR1’1と定義する。このとき、zYR1μgR2=Bc1cVR1μgR2,c2cWR1YR1μgR2=Xfc1cVR1μgR2,c2cWR1YR1μgR2=Xfc1,c2cfV,WR1fμg,egR2YR1μgR2=Xfc1,c2cYR1μgR2YR1μgR2=fc1,c2cXとなる。すなわち、zYR1μgR2は、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ιが自然数、rι,4,rι,5,rι,6及びrι,7が乱数であることを考慮すると、同様に、zι1Yιrμιgr,zι2Yιrμιgrがfιcι1,cι2についてそれぞれ誤差Xι1,Xι2を持つ乱数化可能標本器の出力となるのである。[第十一実施形態]上述の第七実施形態から第十実施形態では、計算装置の自然数記憶部11101に、互いに素である2つの自然数aι,bιの組aι,bιが複数種類記憶され、これらの組aι,bιを用いて各処理が実行されることとした。しかしながら、aι,bιの一方が定数であってもよい。例えば、aιが1に固定されていてもよいし、bιが1に固定されていてもよい。ιごとに自然数aι,bιのどちらが定数であるかが異なっていてもよい。言い換えると、第一乱数化可能標本器又は第二乱数化可能標本器の一方が標本器に置換されていてもよい。aι,bιの一方が定数である場合、定数とされたaι又はbιを選択する処理が不要となり、各処理部は定数とされたaι又はbιが入力されることなく、それを定数として扱って計算を行うことができる。定数とされたaι又はbιが1である場合には、a’ιやb’ιを用いることなく、fιλι=uιb’vιa’をfιλι=vι又はfιλι=uιとして得ることができる。第十一実施形態は、そのような変形の一例であり、bιが1に固定され、第二乱数化可能標本器が標本器に置換された形態である。以下では、第七実施形態との相違点を中心に説明し、復号制御処理などの第七実施形態と共通する事項については説明を省略する。第一乱数化可能標本器や標本器の具体例も、第八実施形態から第十実施形態で説明したのと同様であるため、説明を省略する。<構成>図18に例示するように、第十一実施形態の代理計算システム105は、第七実施形態の計算装置111が計算装置151に置換され、能力提供装置112-1,,112-Γが能力提供装置152-1,,152-Γに置換されたものである。図29に例示するように、第十一実施形態の計算装置151は、例えば、自然数記憶部15101と自然数選択部15102と入力情報提供部15104と第一計算部15105と第一べき乗計算部11106と第一リスト記憶部11107と第二計算部15108と第二リスト記憶部15110と判定部15111と最終出力部15112と制御部11113とを有する。図20に例示するように、第十一実施形態の能力提供装置152-ιは、例えば、第一出力情報計算部15201-ιと第二出力情報計算部15202-ιと鍵記憶部11204-ιと制御部11205-ιとを有する。能力提供装置152-ι1,,52-Γが存在する場合、これらの構成は能力提供装置152-ιと同様である。<復号処理>次に本形態の復号処理を説明する。復号処理の前提として、Gι,Hιを群例えば、可換群、fιλιを群Hιの元である暗号文λιを特定の復号鍵sιで復号して群Gιの元を得るための復号関数、群Gι,Hιの生成元をそれぞれμιg,μιh、Xι1,Xι2を群Gιに値を持つ確率変数、確率変数Xι1の実現値をxι1、確率変数Xι2の実現値をxι2とする。計算装置151の自然数記憶部15101には、自然数aιが複数種類記憶されているものとする。図30に例示するように、まず、計算装置151図29の自然数選択部15102が、自然数記憶部15101に記憶された複数の自然数aιから1つの自然数aιをランダムに読み込む。読み込まれた自然数aιの情報は、入力情報提供部15104及び第一べき乗計算部11106に送られるステップS15100。制御部11113は、tι=1とするステップS11102。入力情報提供部15104は、入力された暗号文λιにそれぞれ対応する第一入力情報τι1及び第二入力情報τι2を生成して出力する。好ましくは、第一入力情報τι1及び第二入力情報τι2はそれぞれ暗号文λιとの関係をかく乱させた情報である。これにより、計算装置151は、暗号文λιを能力提供装置152-ιに対して隠蔽できる。好ましくは、本形態の第二入力情報τι2は自然数選択部15102で選択された自然数aιにさらに対応する。これにより、能力提供装置152-ιから提供された復号能力を計算装置151が高い精度で評価できるステップS15103。第一入力情報τι1及び第二入力情報τι2の組みの具体例は、第八実施形態から第十実施形態の何れかのbι=1とした第一入力情報τι1及び第二入力情報τι2の組みである。図26に例示するように、第一入力情報τι1は能力提供装置152-ι図20の第一出力情報計算部15201-ιに入力され、第二入力情報τι2は第二出力情報計算部15202-ιに入力されるステップS15200。第一出力情報計算部15201-ιは、第一入力情報τι1と鍵記憶部11204-ιに記憶された復号鍵sιとを用い、或る確率より大きな確率でfιτι1を正しく計算し、得られた計算結果を第一出力情報zι1とするステップS15201。第二出力情報計算部15202-ιは、第二入力情報τι2と鍵記憶部11204-ιに記憶された復号鍵sιとを用い、或る確率より大きな確率でfιτι2を正しく計算し、得られた演算結果を第二出力情報zι2とするステップS15202。すなわち、第一出力情報計算部15201-ιや第二出力情報計算部15202-ιは、意図的又は意図的ではない誤差を含んだ計算結果を出力する。言い換えると、第一出力情報計算部15201-ιでの計算結果がfιτι1の場合もあればfιτι1でない場合もあり、第二出力情報計算部15202-ιでの計算結果がfιτι2の場合もあればfιτι2でない場合もある。第一出力情報zι1及び第二出力情報zι2の組の具体例は、第八実施形態から第十実施形態の何れかのbι=1とした第一出力情報zι1及び第二出力情報zι2の組である。第一出力情報計算部15201-ιは第一出力情報zι1を出力し、第二出力情報計算部15202-ιは第二出力情報zι2を出力するステップS15203。図30に戻り、第一出力情報zι1は計算装置151図29の第一計算部15105に入力され、第二出力情報zι2は第二計算部15108に入力される。これらの第一出力情報zι1及び第二出力情報zι2が、能力提供装置152-ιから計算装置151に与えられた復号能力に相当するステップS15104。第一計算部15105は、第一出力情報zι1から演算結果uι=fιλιxι1を生成する。演算結果uιの具体例は、第八実施形態から第十実施形態の何れかのbι=1とした演算結果uιである。演算結果uιは第一べき乗計算部11106に送られるステップS15105。第一べき乗計算部11106はuι’=uιaを計算する。計算結果uιとその計算結果に基づいて計算されたuι’との組uι,uι’は、第一リスト記憶部11107に記憶されるステップS11106。第二計算部15108は、第二出力情報zι2から演算結果vι=fιλιaxι2を生成する。演算結果vιの具体例は、第八実施形態から第十実施形態の何れかの演算結果vιである。演算結果vιは第二リスト記憶部15110に記憶されるステップS15108。判定部15111は、第一リスト記憶部11107に記憶された組uι,uι’及び第二リスト記憶部15110に記憶されたvιの中で、uι’=vιとなるものがあるか判定するステップS15110。uι’=vιとなるものがあった場合には、ステップS15114に進む。uι’=vιとなるものがなかった場合には、ステップS11111に進む。ステップS11111では、制御部11113がtι=Tιであるか判定するステップS11111。Tιは予め定められた自然数である。tι=Tιであれば、最終出力部15112が、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS11113、処理を終える。tι=Tιでない場合には、制御部11113は、tιを1だけインクリメント、すなわちtι=tι1としてステップS11112、ステップS15103に戻る。ステップS15114では、最終出力部15112が、uι’=vιであると判定されたuι’に対応するuιを出力するステップS15114。このように得られたuιは、第七実施形態から第十実施形態でbι=1とした場合のuιb’vιa’に相当する。すなわち、このように得られたuιは高い確率で暗号文λιを特定の復号鍵sιで復号した復号結果fιλιとなる。よって、上述した処理を複数回繰り返し、ステップS15114で得られた値のうち最も頻度の高い値を復号結果fιλιとすればよい。後述するように、設定によっては圧倒的な確率でuι=fιλιとなる。その場合にはステップS15114で得られた値をそのまま復号結果fιλιとしてよい。その後の処理は第七実施形態で説明したとおりである。≪復号結果fιλιが得られる理由について≫次に、本形態の計算装置151で復号結果fιλιが得られる理由を説明する。ここでは表記の簡略化のためιを省略して説明する。まず、説明に必要な事項を定義する。ブラックボックスblackbox:fτのブラックボックスFτとは、τ∈Hを入力としてz∈Gを出力する処理部を意味する。本形態では、第一出力情報計算部15201及び第二出力情報計算部15202が、それぞれ復号関数fτのブラックボックスFτに相当する。群Hから任意に選択された元τ∈UH及びz=Fτに対してz=fτを満たす確率がδ0<δ≦1よりも大きい場合、すなわち、Pr[z=fτ|τ∈UH,z=Fτ]>δ...を満たすfτのブラックボックスFτのことを、信頼性δδreliableのfτのブラックボックスFτという。なお、δは正の値であり、前述した或る確率に相当する。自己訂正器selfcorrector:自己訂正器CFλとは、λ∈Hを入力とし、fτのブラックボックスFτを用いて計算を行い、j∈G∪⊥を出力する処理部を意味する。本形態では、計算装置151が自己訂正器CFλに相当する。オールモスト自己訂正器almostselfcorrector:自己訂正器CFλが、λ∈Hを入力とし、δreliableのfτのブラックボックスFτを用い、正しい値j=fλを出力する確率が、誤った値j≠fλを出力する確率よりも十分大きい場合を想定する。すなわち、Pr[j=fλ|j=CFλ,j≠⊥]>Pr[j≠fλ|j=CFλ,j≠⊥]Δ...を満たす場合を想定する。なお、Δは或る正の値0<Δ<1である。このような場合、自己訂正器CFλはオールモスト自己訂正器であるという。例えば、或る正の値Δ’0<Δ’<1に対してPr[j=fλ|j=CFλ]>1/3Δ’Pr[j=⊥|j=CFλ]<1/3Pr[j≠fλかつj≠⊥|j=CFλ]<1/3を満たす場合、自己訂正器CFλはオールモスト自己訂正器である。Δ’の例はΔ’=1/12や1/3である。ローバスト自己訂正器robustselfcorrector:自己訂正器CFλが、λ∈Hを入力とし、δreliableのfτのブラックボックスFτを用い、正しい値j=fλ又はj=⊥を出力する確率が圧倒的である場合を想定する。すなわち、無視することができる誤差ξ0≦ξ<1に対してPr[j=fλまたはj=⊥|j=CFλ]>1-ξ...を満たす場合を想定する。このような場合、自己訂正器CFλはローバスト自己訂正器であるという。なお、無視することができる誤差ξの例は、セキュリティパラメータkの関数値ξkである。関数値ξkの例は、任意の多項式pkについて、十分大きいkに対して{ξkpk}が0に収束するものである。関数値ξkの具体例は、ξk=2kやξk=2√kなどである。オールモスト自己訂正器からローバスト自己訂正器を構成することができる。すなわち、同一のλに対してオールモスト自己訂正器を複数回実行させ、⊥を除いて最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。例えば、同一のλに対してオールモスト自己訂正器をOlog1/ξ回実行させ、最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。なお、Oはオー記法を表す。擬似自由pseudofreeな作用:群G、自然数の集合Ω={0,...,M}Mは1以上の自然数、群Gに値を持つ確率変数X1,X2の各実現値α∈X1α≠eg,β∈X2、及びa∈Ωについて、αa=βとなる確率Pr[αa=βかつα≠eg|a∈UΩ,α∈X1,β∈X2]...について、あらゆる可能なX1,X2に関する上限値を、組G,Ωの疑似自由指標とよび、これをPG,Ωと表すことにする。ある無視することができる関数ζkが存在して、PG,Ω<ζk...である場合、組G,Ωによって定義される演算は擬似自由な作用であるという。なお、αaは、群Gで定義された演算をαに対してa回作用させることを意味する。無視することができる関数ζkの例は、任意の多項式pkについて、十分大きいkに対して{ζkpk}が0に収束するものである。関数ζkの具体例は、ζk=2kやζk=2√kなどである。例えば、セキュリティパラメータkに対し、式11の確率が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,...,αp2}となり、|Ωα|=p-1である。素数pが2kのオーダーであるため、ある定数Cが存在して、kが十分大きければ|Ωα|>C2kを満たす。ここで式11の確率はC12k未満であり、このような組G,Ωによって定義される演算は擬似自由な作用である。信頼性δγδγreliableの乱数化可能標本器:自然数aが与えられるたびに、δreliableのfτのブラックボックスFτを用い、w∈Gについて、確率変数Xに従った標本x’に対応するwax’を返す乱数化可能標本器であって、wax’=waである確率がδγよりも大きいγは正定数、すなわち、Pr[wax’=wa]>δγ...を満たすものを、信頼性δγな乱数化可能標本器という。本形態の入力情報提供部15104と第二出力情報計算部15202と第二計算部15108との組は、w=fλについて、信頼性δγな乱数化可能標本器である。次に、これらの定義を用い、本形態の計算装置151で復号結果fλが得られる理由を説明する。本形態のステップS15110ではu’=vであるか、すなわち、ua=vであるかを判定している。本形態の入力情報提供部15104と第二出力情報計算部15202と第二計算部15108との組は信頼性δγな乱数化可能標本器であるため式13、Tをk,δ,γから定まる一定値よりも大きい値とすれば、漸近的に大きい確率でua=vが成立するステップS15110でyesとなる場合が生じる。たとえば、T≧4/δγとすれば、ua=vが成立するステップS15110でyesとなる確率は1/2よりも大きいことがMarkovの不等式によってわかる。本形態ではu=fλx1及びv=fλax2なのであるから、ua=vが成立する場合にはx1a=x2が成立する。x1a=x2が成立する場合には、x1=x2=egである場合とx1≠egである場合とがある。x1=x2=egである場合には、u=fλとなるのであるから、ステップS15114で出力されるuは正しい復号結果fλとなる。一方、x1≠egである場合には、u≠fλとなるのであるから、ステップS15114で出力されるuは正しい復号結果fλではない。群Gと自然数aが属する集合Ωとの組G,Ωによって定義される演算が擬似自由な作用であるか、疑似自由指標PG,ΩについてT2PG,Ωが漸近的に小さい場合、ua=vの場合にx1≠egである確率式11は漸近的に小さい。したがって、ua=vの場合にx1=egである確率は漸近的に大きい。よって、組G,Ωによって定義される演算が擬似自由な作用であるか、T2PG,Ωが漸近的に小さい場合、ua=vの場合に誤った復号結果fλが出力される確率は、ua=vの場合に正しい復号結果fλが出力される確率よりも十分小さい。この場合の計算装置151はオールモスト自己訂正器であるといえる式9参照。そのため、前述のように、計算装置151からローバスト自己訂正器を構成することが可能であり、圧倒的な確率で正しい復号結果fλを得ることができる。G,Ωで定義される演算が疑似自由な作用である場合には、ua=vの場合に誤った復号結果fλが出力される確率も無視できる。この場合の計算装置151は、圧倒的な確率で正しい復号結果fλまたは⊥を出力する。なお、任意の定数ρに対して0が定まり、この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’は、自己訂正器CFλでua=vが成立するステップS15110でyesとなるにもかかわらず、自己訂正器CFλが誤った値を出力する確率を増加させる。このような攻撃は、与えられた自然数aに対して乱数化可能標本器から出力されたwax’の誤差の確率分布Da=wax’waが自然数aに依存する場合に可能となる。例えば、第二計算部15108から出力されるvがfλax1aとなるような不正が行われた場合、x1の値にかかわらず、必ずua=vが成立することになる。よって、与えられた自然数aに対して乱数化可能標本器から出力されたwax’の誤差の確率分布Da=wax’waが当該自然数aに依存しないことが望ましい。あるいは、集合Ωのいかなる元a∈∀Ωについても、wax’の誤差の確率分布Da=wax’waと区別することができない群Gに値を持つ確率分布Dが存在する確率分布Daと確率分布Dとが統計的に近似するstatisticallyclose乱数化可能標本器であることが望ましい。なお、確率分布Dは自然数aに依存しない。確率分布Daと確率分布Dとを区別することができないとは、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができないことを意味し、例えば、無視することができるζ0≦ζ<1に対してΣg∈G|Pr[g∈D]-Pr[g∈Da]|<ζ...を満たすならば、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができない。無視することができるζの例は、セキュリティパラメータkの関数値ζkである。関数値ζkの例は、任意の多項式pkについて、十分大きいkに対して{ζkpk}が0に収束するものである。関数値ζkの具体例は、ζk=2kやζk=2√kなどである。これらの点は自然数a及びbを使用する第七実施形態から第十実施形態についても同様である。[第七実施形態から第十一実施形態の変形例]第七実施形態から第十一実施形態では、第一出力情報zι1及び第二出力情報zι2が計算装置に与えられた場合、計算装置はある確率でuιb’vιa’を出力できる。uιb’vιa’は高い確率で暗号文λιの復号値となる。一方、第一出力情報zι1及び第二出力情報zι2の両方が復号装置に与えられなかった場合、計算装置は暗号文λιの復号値を得ることができない。第七実施形態から第十一実施形態では、能力提供装置による第一出力情報zι1及び第二出力情報zι2の両方の出力の有無を制御することで、計算装置に復号鍵を与えることなく、計算装置による暗号文の復号能力を制御できる。本発明は上述の実施形態に限定されるものではない。例えば、上述の各実施形態ではωが2以上の整数であるとしたが、ωが1であってもよい。すなわち、能力提供装置が1つのみ存在する構成であってもよい。この場合の計算装置は復元部を含まなくともよく、最終出力部からの出力値をそのまま出力してもよい。例えば、前述した第一実施形態から第五実施形態の何れかのシステムが復号制御装置をさらに有し、復号制御装置が、計算装置の復号処理を制御する復号制御命令を能力提供装置に出力し、能力提供装置が、復号制御命令に従って、第一出力情報計算部及び前記第二出力情報計算部から、第一出力情報z1及び第二出力情報z2の両方が出力されるか否かを制御してもよい。例えば、前述の第六実施形態のシステムが復号制御装置をさらに有し、復号制御装置が、計算装置の復号処理を制御する復号制御命令を能力提供装置に出力し、能力提供装置が、復号制御命令に従って、第一出力情報計算部及び第二出力情報計算部から、第一出力情報Mz1及び第二出力情報Mz2の両方が出力されるか否かを制御してもよい。確率変数Xι1、Xι2及びXι3は、同じでも異なっていてもよい。第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部のそれぞれが一様乱数を生成することにより、代理計算システムの安全性を高くできる。しかし、求める安全性のレベルがそれほど高くない場合には、第一乱数生成部、第二乱数生成部、第三乱数生成部、第四乱数生成部、第五乱数生成部、第六乱数生成部及び第七乱数生成部の少なくとも一部が、一様乱数ではない乱数を生成してもよい。演算効率上からは、上述の各実施形態のように0以上KH未満の自然数である乱数や0以上KιG未満の自然数である乱数が選択されることが望ましいが、それらの代わりにKιH以上やKιG以上の自然数の乱数が選択されてもよい。計算装置が同一のaι,bιに対応する第一入力情報τι1及び第二入力情報τι2を能力提供装置に提供するたびに、能力提供装置の処理が複数回実行させてもよい。これにより、計算装置が第一入力情報τι1及び第二入力情報τι2を能力提供装置に一回提供するたびに、計算装置は第一出力情報zι1や第二出力情報zι2や第三出力情報zι3を複数個得ることができる。これにより、計算装置と能力提供装置との間のやり取り回数や通信量を減らすことができる。計算装置が複数種類の第一入力情報τι1及び第二入力情報τι2を能力提供装置にまとめて提供し、対応する第一出力情報zι1や第二出力情報zι2や第三出力情報zι3を複数個まとめて取得してもよい。これにより、計算装置と能力提供装置との間のやり取り回数を減らすことができる。各形態ではωが定数であることとしたが、ωの値を代理計算システム内で共有できるのであれば、ωが変数であってもよい。計算装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。同様に、能力提供装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。各実施形態の第一計算部や第二計算部において得られたuιやvιが群Gιの元であるかを確認し、群Gιの元であった場合には上述した処理を続行し、uι又はvιが群Gιの元でなかった場合には、計算をすることができなかった旨の情報、例えば記号⊥が出力されてもよい。その他、例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。複数の能力提供装置が1つの装置内に構成されていてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。[第十二実施形態]本発明の第十二実施形態を説明する。本形態では、Φ個Φは2以上の整数の計算装置が1個の能力提供装置を共用して計算を行い、能力提供装置が計算装置からその対価を受ける例を説明する。ただし、これは本発明を限定するものではなく、Φ個の計算装置が複数個の能力提供装置を共用して計算を行ってもよい。<構成>図31に例示するように、第十二実施形態の代理計算システム201は、例えば、Φ個の計算装置211-φφ=1,...,Φと1個の能力提供装置212とを有する。各装置は情報のやり取りが可能なように構成される。例えば、各装置は伝送線やネットワークや可搬型記録媒体などを経由した情報のやり取りが可能とされている。本形態では、能力提供装置212が群Hφの元を群Gφの元へ写す関数fφを計算する能力計算能力を各計算装置211-φに与える。各計算装置211-φはこの能力に対する対価を能力提供装置212に支払う。各計算装置211-φは、提供された能力を用い、群Hφの元xφに対する群Gφの元fφxφを計算する。図32に例示するように、第十二実施形態の計算装置211-φは、例えば、自然数記憶部21101-φと自然数選択部21102-φと整数計算部21103-φと入力情報提供部21104-φと第一計算部21105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部21108-φと第二べき乗計算部21109-φと第二リスト記憶部21110-φと判定部21111-φと最終出力部21112-φと制御部21113-φとを有する。計算装置211-φは、制御部21113-φの制御のもとで各処理を実行する。計算装置211-φの例は、特別なプログラムが読み込まれたCPUcentralprocessingunitやRAMrandomaccessmemoryを備えた公知又は専用のコンピュータや、サーバ装置やゲートウェイ装置やカードリーダライタ装置や携帯電話などの計算機能と記憶機能とを備えた機器などである。図33に例示するように、第十二実施形態の能力提供装置212は、例えば、それぞれ、第一出力情報計算部21201と第二出力情報計算部21202と制御部21205とを有する。能力提供装置212は、制御部21205の制御のもとで各処理を実行する。能力提供装置212の例は、特別なプログラムが読み込まれたCPUやRAMを備えた公知又は専用のコンピュータや、携帯電話などの計算機能と記憶機能とを備えた機器や、ICカードやICチップなどの耐タンパ性モジュールなどである。<処理の前提>Gφ,Hφが群例えば、可換群であり、Xφ1,Xφ2が群Gφに値を持つ確率変数であり、xφ1が確率変数Xφ1の実現値であり、xφ2が確率変数Xφ2の実現値であり、fφが群Hφの元を群Gφの元へ写す関数であり、aφ,bφが互いに素である自然数であるとする。fφの具体例は、暗号化関数、復号関数、再暗号化関数、画像処理処理用の関数、音声処理用の関数などである。Gφ=Hφであってもよいし、Gφ≠Hφであってもよい。すべての群Gφφ=1,...,Φが互いに同一であってもよいし、少なくとも一部のφ’≠φに対する群Gφ’が他の群Gφと相違してもよい。すべての群Hφφ=1,...,Φが互いに同一であってもよいし、少なくとも一部のφ’≠φに対する群Hφ’が他の群Hφと相違してもよい。以下では群Gφ,Hφ上の演算を乗法的に表現する。aφ,bφは互いに素な自然数であり、自然数とは0以上の整数を表す。群Hφの元Mφに対する群Gφの元fφMφaφbφを要素とする集合を元Mφに対する類CLφMφと呼ぶ。ここでCLφMφとCLφ’Mφ’φ’≠φとは互いに異なる類である。関数fφMφが元Mφに対する単写関数である場合、同一の元Mφに対する類CLφMφには、aφ,bφの組に対して、一つの要素のみが属する。aφ,bφの組みごとに同一の元Mφに対する類CLφMφに一つの要素のみが属する場合、二つの値が同一の元Mφに対する類CLφMφに属することと当該二つの値が等しいこととが等価となる。すなわち、関数fφMφが元Mφに対する単写関数である場合、二つの値が同一の元Mφに対する類CLφMφに属するかの判定は当該二つの値が等しいかを判定することで行うことができる。一方、関数fφMφが元Mφに対する単写関数でない場合例えば、関数fφがElGamal暗号方式のような確率暗号方式の暗号化関数の場合、平文と暗号化鍵との組に対して複数の暗号文が対応するため、同一の元Mφに対する類CLφMφには、aφ,bφの組に対して、複数の要素が属する。各計算装置211-φ図32の自然数記憶部21101-φに、互いに素である2つの自然数aφ,bφの組aφ,bφが複数種類記憶されているものとする。Iφを群Gφの位数未満の2つの自然数の組で互いに素なものの集合とすると、自然数記憶部21101-φにはIφの部分集合Sφに対応する自然数aφ,bφの組aφ,bφが記憶されていると考えることができる。<処理>計算装置211-φが能力提供装置212を利用して行う処理を説明する。これらの処理は処理を行う何れか1つの計算装置211-φが能力提供装置212を或る時間占有した状態で実行されてもよいし、処理を行う複数の計算装置211-φが能力提供装置212にアクセスして並列に実行されてもよい。群Hφの元xφが計算装置211-φ図32の入力情報提供部21104-φに入力される。既に元xφが入力情報提供部21104-φに入力されている場合にはこの処理が省略されてもよい。図37に例示するように、元xφが入力情報提供部21104-φに入力された計算装置211-φの自然数選択部21102-φは、自然数記憶部21101-φに記憶された複数の自然数の組aφ,bφから1つの自然数の組aφ,bφをランダムに読み込む。読み込まれた自然数の組aφ,bφ少なくとも一部の情報は、整数計算部21103-φ、入力情報提供部21104-φ、第一べき乗計算部21106-φ及び第二べき乗計算部21109-φに送られるステップS21100。整数計算部21103-φは、送られた自然数の組aφ,bφを用いて、a’φaφb’φbφ=1の関係を満たす整数a’φ,b’φを計算する。自然数aφ,bφは互いに素であるため、a’φaφb’φbφ=1の関係を満たす整数a’φ,b’φは必ず存在して、その計算方法もよく知られている。たとえば拡張互除法などのよく知られたアルゴリズムによって整数a’,b’が計算され、自然数の組a’φ,b’φの情報は、最終出力部21112-φに送られるステップS21101。制御部21113-φは、t=1とするステップS21102。入力情報提供部21104-φは、入力された元xφにそれぞれ対応する第一入力情報τφ1及び第二入力情報τφ2を生成して出力する。好ましくは、第一入力情報τφ1及び第二入力情報τφ2はそれぞれ元xφとの関係をかく乱させた情報である。これにより、計算装置211-φは、元xφを能力提供装置212に対して隠蔽できる。好ましくは、本形態の第一入力情報τφ1は自然数選択部21102-φで選択された自然数bφにさらに対応し、第二入力情報τφ2は自然数選択部21102-φで選択された自然数aφにさらに対応する。これにより、能力提供装置212から提供された計算能力を計算装置211-φが高い精度で評価することができるステップS21103。図38に例示するように、第一入力情報τφ1は能力提供装置212図33の第一出力情報計算部21201に入力され、第二入力情報τφ2は第二出力情報計算部21202に入力されるステップS21200。第一出力情報計算部21201は、第一入力情報τφ1を用い、或る確率より大きな確率でfφτφ1を正しく計算し、得られた計算結果を第一出力情報zφ1とするステップS21201。第二出力情報計算部21202は、第二入力情報τφ2を用い、或る確率より大きな確率でfφτφ2を正しく計算し、得られた演算結果を第二出力情報zφ2とするステップS21202。なお、或る確率は100未満の確率である。或る確率の例は無視することができない確率であり、無視することができない確率の例は、セキュリティパラメータkについての広義単調増加関数である多項式を多項式ψkとした場合の1/ψk以上の確率である。すなわち、第一出力情報計算部21201や第二出力情報計算部21202は、意図的又は意図的ではない誤差を含んだ計算結果を出力し得る。言い換えると、第一出力情報計算部21201での計算結果がfφτφ1の場合もあればfφτφ1でない場合もあり、第二出力情報計算部21202-φでの計算結果がfφτφ2の場合もあればfφτφ2でない場合もある。第一出力情報計算部21201は第一出力情報zφ1を出力し、第二出力情報計算部21202は第二出力情報zφ2を出力するステップS21203。図37に戻り、第一出力情報zφ1は計算装置211-φ図32の第一計算部21105-φに入力され、第二出力情報zφ2は第二計算部21108-φに入力される。これらの第一出力情報zφ1及び第二出力情報zφ2が、能力提供装置212から計算装置211-φに与えられた計算能力に相当するステップS21104。計算能力が与えられた計算装置211-φの利用者は、その対価を能力提供装置212に対して支払う。対価の支払い方法は、例えば、公知の電子決済処理などによって行えばよい。第一計算部21105-φは、第一出力情報zφ1から演算結果uφ=fφxφbxφ1を生成する。ここで、fφxφbxφ1を生成計算するとは、fφxφbxφ1と定義される式の値を計算することである。式fφxφbxφ1の値を最終的に計算することができれば、途中の計算方法は問わない。これは、この出願で登場する他の式の計算についても同様である。演算結果uφは第一べき乗計算部21106-φに送られるステップS21105。第一べき乗計算部21106-φはuφ’=uφaを計算する。計算結果uφとその計算結果に基づいて計算されたuφ’との組uφ,uφ’は、第一リスト記憶部21107-φに記憶されるステップS21106。判定部21111-φは、第一リスト記憶部21107-φに記憶された組uφ,uφ’及び第二リスト記憶部21110-φに記憶された組vφ,vφ’の中で、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属するものがあるかを判定する。Mφ=xφであることまでは判定できなくてもよい以下同様。言い換えると、判定部21111-φは、同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組があるか判定する。例えば、関数fφMφが元Mφに対する単写関数である場合、判定部21111-φはuφ’=vφ’であるかを判定するステップS21107。もし、第二リスト記憶部21110-φに組vφ,vφ’が記憶されていない場合には、このステップS21107の処理を行わずに、次のステップS21108の処理を行う。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組があった場合には、ステップS21114に進む。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組がなかった場合には、ステップS21108に進む。ステップS21108では、第二計算部21108-φが、第二出力情報zφ2から演算結果vφ=fφxφaxφ2を生成する。演算結果vφは第二べき乗計算部21109-φに送られるステップS21108。第二べき乗計算部21109-φはvφ’=vφbを計算する。計算結果vφとその計算結果に基づいて計算されたvφ’との組vφ,vφ’は、第二リスト記憶部21110-φに記憶されるステップS21109。判定部21111-φは、第一リスト記憶部21107-φに記憶された組uφ,uφ’及び第二リスト記憶部21110-φに記憶された組vφ,vφ’の中で、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属するものがあるかを判定する。例えば、関数fφMφが元Mφに対する単写関数である場合、判定部21111-φはuφ’=vφ’であるかを判定するステップS21110。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組があった場合には、ステップS21114に進む。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組がなかった場合には、ステップS21111に進む。ステップS21111では、制御部21113-φがt=Tであるか判定するステップS21111。Tは予め定められた自然数である。Tはすべてのφについて同一値であってもよいし、φについての自己訂正処理でのTの値と、φ’σ’≠σ,σ’=1,...,Φについての自己訂正処理でのTの値が相違する場合があってもよい。t=Tであれば、最終出力部21112-φが、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS21113、処理を終える。t=Tでない場合には、制御部21113-φは、tを1だけインクリメント、すなわちt=t1t1を新たなtとしてステップS21112、ステップS21103に戻る。計算をすることができなかった旨の情報この例では記号⊥は、能力提供装置212が正しく計算を行う信頼性がTで定められる基準を下回るということを意味する。言い換えれば、T回の繰り返しで正しい演算を行うことができなかったということを意味する。ステップS21114では、最終出力部21112-φが、同一の元Mφに対する類CLφMφに属すると判定されたuφ’とvφ’との組に対応するuφ及びvφを用いてuφb’vφa’を計算して、出力して処理を終えるステップS21114。以上のように計算されたuφb’vφa’は、高い確率でfφxφ∈Gφとなる高い確率でuφb’vφa’=fφxφとなる理由については後述する。よって、少なくともφについての上述処理を複数回繰り返し、ステップS21114で得られた値のうち最も頻度の高いuφb’vφa’を選択すれば、uφb’vφa’=fφxφであることの信頼度確率などは所定値以上となる。後述するように、設定によっては圧倒的な確率でuφb’vφa’=fφxφとなる。このことは能力提供装置212が必ずしも正しい返答をするとは限らない場合にも成り立つため、計算装置211-φは能力提供装置212の正当性を確認するための認証処理を必要としない。他の計算装置211-φ’φ’≠φと能力提供装置212との処理内容が計算装置211-φと能力提供装置212との間の処理内容に影響を与えたとしても、能力提供装置212が或る確率より大きな確率で正しい返答をするのであれば計算装置211-φは正しい答えを計算結果fφxφを得ることができる。≪高い確率でuφb’vφa’=fφxφとなる理由について≫Xφを群Gφに値を持つ確率変数とする。wφ∈Gにφついて、要求を受けるたびに確率変数Xφに従った標本xφ’に対応するwφxφ’を返すものを、wφについて誤差Xφを持つ標本器samplerと呼ぶ。wφ∈Gφについて、自然数aφが与えられるたびに確率変数Xφに従った標本xφ’に対応するwφaxφ’を返すものを、wφについて誤差Xφを持つ乱数化可能標本器randomizablesamplerと呼ぶ。乱数化可能標本器はaφ=1として用いられれば標本器として機能する。本実施形態の入力能力提供部21104-φと第一出力情報計算部21201と第一計算部21105-φとの組み合わせが、fφxφについて誤差Xφ1を持つ乱数化可能標本器第一乱数化可能標本器と呼ぶであり、入力能力提供部21104-φと第二出力情報計算部21202と第二計算部21108-φとの組み合わせが、fφxφについて誤差Xφ2を持つ乱数化可能標本器第二乱数化可能標本器と呼ぶである。uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属するのは、第一乱数化可能標本器がuφ=fφxφbを正しく計算しており、第二乱数化可能標本器がvφ=fφxφaを正しく計算しているxφ1及びxφ2が群Gφの単位元eφgである可能性が高いことを発明者は見出した。説明の簡略化の観点から、この証明は第十八実施形態で行う。第一乱数化可能標本器がuφ=fφxφbを正しく計算しており、第二乱数化可能標本器がvφ=fφxφaを正しく計算しているときxφ1及びxφ2が群Gφの単位元eφgであるとき、uφb’=fφxφbxφ1b’=fφxφbeφgb’=fφxφbb’となり、vφa’=fφxφaxφ2a’=fφxφaeφga’=fφxφaa’となる。そのため、関数fφMφが元Mφに対する単写関数である場合、uφb’vφa’=fφxφb’aa’=fφxφとなる。一方、関数fφMφが元Mφに対する単写関数でない場合であったとしても準同型関数なのであれば、uφb’vφa’=fφxφb’aa’=fφxφとなる。q1,q2∈Iについて、i=1,2の各々について関数πiをπiq1,q2=qiで定義する。さらに、L=min♯π1S,♯π2Sとする。♯は、集合の位数である。群Gφが巡回群や位数の計算が困難な群であるときには、計算装置211-φが⊥以外を出力するときの出力がfφxφではない確率は、無視できる程度の誤差の範囲で高々T2L/♯S程度と期待することができる。もしL/♯Sが無視できる量でTが多項式オーダー程度の量であれば、計算装置211-φは圧倒的な確率で正しいfφxφを出力する。L/♯Sが無視できる量になるようなSの例には、例えばS={1,d|d∈[2,|Gφ|-1]}がある。[第十三実施形態]第十三実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した例である。以下、第十二実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。以下の説明において、同一の参照番号が付された部分は同一の機能を持つものとし、同一の参照番号が付されたステップは同一の処理を表すものとする。<構成>図31に例示するように、第十三実施形態の代理計算システム202は、計算装置211-φが計算装置221-φに置換され、能力提供装置212が能力提供装置222に置換されたものである。図32に例示するように、第十三実施形態の計算装置221-φは、例えば、自然数記憶部21101-φと自然数選択部21102-φと整数計算部21103-φと入力情報提供部2104-φと第一計算部2105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部2108-φと第二べき乗計算部21109-φと第二リスト記憶部21110-φと判定部21111-φと最終出力部21112-φと最終出力部21112-φと制御部21113-φとを有する。図34に例示するように、本形態の入力情報提供部22104-φは、例えば、第一乱数生成部22104a-φと第一入力情報計算部22104b-φと第二乱数生成部22104c-φと第二入力情報計算部22104d-φとを有する。図33に例示するように、第十三実施形態の能力提供装置222は、例えば、それぞれ、第一出力情報計算部22201と第二出力情報計算部22202と制御部21205とを有する。<処理の前提>第十三実施形態では、関数fφを準同型関数とし、群Hφを巡回群とし、群Hφの生成元をμφ,h、群Hφの位数をKφ,H、νφ=fφμφ,hとする。その他の前提は、計算装置211-φが計算装置221-φに置換され、能力提供装置212が能力提供装置222に置換されている以外、第十二実施形態と同一である。<処理>図37及び図38に例示するように、第十三実施形態の処理は第十二実施形態のステップS21103~S21105,S21108,S21200~S21203が、それぞれ、ステップS22103~S22105,S22108,S22200~S22203に置換されたものである。以下ではステップS22103~S22105,S22108,S22200~S22203の処理のみを説明する。《ステップS22103の処理》計算装置221-φ図32の入力情報提供部22104-φは、入力された元xφにそれぞれ対応する第一入力情報τφ1及び第二入力情報τφ2を生成して出力する図37/ステップS22103。以下、図39を用いて本形態のステップS22103の処理を説明する。第一乱数生成部22104a-φ図34は、0以上KφH未満の自然数の一様乱数rφ,1を生成する。生成された乱数rφ,1は、第一入力情報計算部22104b-φ及び第一計算部22105-φに送られるステップS22103a。第一入力情報計算部22104b-φは、入力された乱数rφ,1と元xφと自然数bφとを用いて第一入力情報τφ1=μφhrxφbを計算するステップS22103b。第二乱数生成部22104c-φは、0以上KφH未満の自然数の一様乱数rφ,2を生成する。生成された乱数rφ,2は、第二入力情報計算部22104d-φ及び第二計算部22108-φに送られるステップS22103c。第二入力情報計算部22104d-φは、入力された乱数rφ,2と元xφと自然数aφとを用いて第二入力情報τφ2=μφhrxφaを計算するステップS22103d。第一入力情報計算部22104b-φ及び第二入力情報計算部22104d-φは、以上のように生成した第一入力情報τφ1及び第二入力情報τφ2を出力するステップS22103e。なお、本形態の第一入力情報τφ1及び第二入力情報τφ2は、それぞれ、乱数rφ,1,rφ,2によって元xφとの関係をかく乱させた情報である。これにより、計算装置222は、元xφを能力提供装置222に対して隠蔽できる。本形態の第一入力情報τφ1は自然数選択部21102-φで選択された自然数bφにさらに対応し、第二入力情報τφ2は自然数選択部21102-φで選択された自然数aφにさらに対応する。これにより、能力提供装置222から提供された計算能力を計算装置221-φが高い精度で評価することができる。《ステップS22200~S22203の処理》図38に例示するように、まず、第一入力情報τφ1=μφhrxφbが能力提供装置222図33の第一出力情報計算部22201に入力され、第二入力情報τφ2=μφhrxφaが第二出力情報計算部22202に入力されるステップS22200。第一出力情報計算部22201は、第一入力情報τφ1=μφhrxφbを用い、或る確率より大きな確率でfφμφhrxφbを正しく計算し、得られた計算結果を第一出力情報zφ1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部22201での計算結果がfφμφhrxφbとなる場合もあれば、fφxφbとならない場合もあるステップS22201。第二出力情報計算部22202は、第二入力情報τφ2=μφhrxφaを用い、或る確率より大きな確率でfφμφhrxφaを正しく計算し、得られた計算結果を第二出力情報zφ2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部22202での計算結果がfφμφhrxφaとなる場合もあれば、fφμφhrxφaとならない場合もあるステップS22202。第一出力情報計算部22201は第一出力情報zφ1を出力し、第二出力情報計算部22202は第二出力情報zφ2を出力するステップS22203。《ステップS22104及びS22105の処理》図37に戻り、第一出力情報zφ1は計算装置221-φ図32の第一計算部22105-φに入力され、第二出力情報zφ,2は第二計算部22108-φに入力される。これらの第一出力情報zφ1及び第二出力情報zφ2が、能力提供装置222から計算装置221-φに与えられた計算能力に相当するステップS22104。第一計算部22105-φは、入力された乱数rφ,1及び第一出力情報zφ1を用いてzφ1νφrを計算してその計算結果をuφとする。計算結果uφは、第一べき乗計算部21106-φに送られる。ここで、uφ=zφ1νφr=fφxφbxφ1となる。すなわち、zφ1νφrは、fφxφについて誤差Xφ1を持つ乱数化可能標本器の出力となる。その理由については後述するステップS22105。《ステップS22108の処理》第二計算部22108-φは、入力された乱数rφ,2及び第二出力情報zφ2を用いてzφ2νφrを計算してその計算結果をvφとする。計算結果vφは、第二べき乗計算部21109-φに送られる。ここで、vφ=zφ2νφr=fφxφaxφ2となる。すなわち、zφ2νφrは、fφxφについて誤差Xφ2を持つ乱数化可能標本器の出力となる。その理由については後述するステップS22108。≪zφ1νφr,zφ2νφrがfφxφについてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となる理由について≫cを自然数、R及びR’を乱数として、能力提供装置222がμφhRxφcを用いて行う計算の計算結果をBμφhRxφcとする。すなわち、第一出力情報計算部22201や第二出力情報計算部22202が計算装置221-φに返す計算結果をzφ=BμφhRxφcとする。さらに、群Gφに値を持つ確率変数XφをXφ=BμφhR’fφμφhR’1と定義する。このとき、zφνφR=BμφhRxφcfμφhR=XφfφμφhRxφcfφμφhR=XφfφμφhRfφxφcfφμφhR=fφxφcXφとなる。すなわち、zφνφRは、fφxφについて誤差Xφを持つ乱数化可能標本器の出力となる。上記式展開において、Xφ=BμφhR’fφμφhR’1=BμφhRxφcfφμφhRxφc1であり、BμφhRxφc=XφfφμφhRxφcであるという性質を用いている。この性質は、関数fφが準同型関数であり、R及びR’が乱数であることに基づく。したがって、aφ,bφが自然数、rφ,1,rφ,2が乱数であることを考慮すると、同様に、zφ1νr,zφ2νrがfφxφについてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となるのである。[第十四実施形態]第十四実施形態は第十三実施形態の変形例であり、aφ=1やbφ=1のときに前述した標本器によってuφ又はvφの値を計算する。一般に乱数化可能標本器よりも標本器の計算量は小さい。aφ=1やbφ=1のときに乱数化可能標本器に代わり、標本器が計算を行うことで、代理計算システムの計算量を小さくすることができる。以下、第十二実施形態及び第十三実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。<構成>図31に例示するように、第十四実施形態の代理計算システム203は、計算装置221-φが計算装置231-φに置換され、能力提供装置222が能力提供装置232に置換されたものである。図32に例示するように、第十四実施形態の計算装置231-φは、例えば、自然数記憶部21101-φと自然数選択部21102-φと整数計算部21103-φと入力情報提供部22104-φと第一計算部22105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部22108-φと第二べき乗計算部21109-φと第二リスト記憶部21110-φと判定部21111-φと最終出力部21112-φと制御部21113-φと第三計算部23109-φとを有する。図33に例示するように、第十四実施形態の能力提供装置232は、例えば、第一出力情報計算部22201と第二出力情報計算部22202と制御部21205と第三出力情報計算部23203とを有する。<処理>次に本形態の処理を説明する。第十三実施形態との相違点を説明する。図37及び図38に例示するように、第十四実施形態の処理は第十三実施形態のステップS22103~S22105,S22108,S22200~S22203が、それぞれ、ステップS23103~S23105,S23108,S22200~S22203及びS23205~S23209に置換されたものである。以下ではステップS23103~S23105,S23108,S22200~S22203及びS23205~S23209の処理を中心に説明する。《ステップS23103の処理》計算装置231-φ図32の入力情報提供部23104-φは、入力された元xφにそれぞれ対応する第一入力情報τφ1及び第二入力情報τφ2を生成して出力する図37/ステップS23103。以下、図39を用いて本形態のステップS23103の処理を説明する。制御部21113-φ図32は、自然数選択部21102-φで選択された自然数aφ,bφに応じて入力情報提供部23104-φを制御する。制御部21113-φでbφが1であるかが判定されステップS23103a、bφ≠1であると判定された場合、前述のステップS22103a及びS22103bの処理が実行され、ステップS23103gに進む。一方、ステップS23103aでbφ=1であると判定された場合、第三乱数生成部23104e-φが、0以上KφH未満の自然数の乱数rφ,3を生成する。生成された乱数rφ,3は第三入力情報計算部23104f-φ及び第三計算部23109-φに送られるステップS23103b。第三入力情報計算部23104f-φは、入力された乱数rφ,3と元xφとを用いてxφrを計算し、これを第一入力情報τφ1とするステップS23103c。その後、ステップS23103gに進む。ステップS23103gでは、制御部21113-φでaφが1であるかが判定されステップS23103g、aφ≠1であると判定された場合、前述のステップS22103c及びステップS22103dの処理が実行される。一方、ステップS23103gでaφ=1であると判定された場合、第三乱数生成部23104e-φが、0以上KφH未満の自然数の乱数rφ,3を生成する。生成された乱数rφ,3は第三入力情報計算部23104f-φに送られるステップS23103h。第三入力情報計算部23104f-φは、入力された乱数rφ,3と元xφとを用いてxφrを計算し、これを第二入力情報τφ2とするステップS23103i。第一入力情報計算部22104b-φ、第二入力情報計算部22104d-φ、第三入力情報計算部23104f-φは、以上のように生成した第一入力情報τφ1及び第二入力情報τφ2を対応する自然数aφ,bφの情報とともに出力するステップS23103e。なお、本形態の第一入力情報τφ1及び第二入力情報τφ2は、それぞれ、乱数rφ,1,rφ,2,rφ,3によって元xφとの関係をかく乱させた情報である。これにより、計算装置231-φは、元xφを能力提供装置232に対して隠蔽できる。《S22200~S22203及びS23205~S23209の処理》以下、図38を用いて本形態のS22200~S22203及びS23205~S23209の処理を説明する。制御部21205図33は、入力された自然数aφ,bφに応じ、第一出力情報計算部22201、第二出力情報計算部22202、及び第三出力情報計算部23203を制御する。制御部21205の制御に基づき、bφ≠1の場合の第一入力情報τφ1=μφhrxφbは能力提供装置232図33の第一出力情報計算部22201に入力され、aφ≠1の場合の第二入力情報τφ2=μφ,hrxφaは第二出力情報計算部22202に入力される。bφ=1の場合の第一入力情報τφ1=xφrやaφ=1の場合の第二入力情報τφ2=xφrは第三出力情報計算部23203に入力されるステップS23200。制御部21113-φでbφが1であるかが判定されステップS23205、bφ≠1であると判定された場合、前述のステップS22201の処理が実行される。その後、制御部21113-φでaφが1であるかが判定されステップS23208、aφ≠1であると判定された場合、前述したステップS22202の処理が実行されてステップS23203に進む。一方、ステップS23208でaφ=1であると判定された場合、第三出力情報計算部23203は、第二入力情報τφ2=xφrを用い、或る確率より大きな確率でfφxφrを正しく計算し、得られた計算結果を第三出力情報zφ3とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部23203での計算結果がfφxφrとなる場合もあれば、fφxφrとならない場合もあるステップS23209。その後、ステップS23203に進む。ステップS23205でbφ=1であると判定された場合、第三出力情報計算部23203は、第二入力情報τφ1=xφrを用い、或る確率より大きな確率でfφxφrを正しく計算し、得られた計算結果を第三出力情報zφ,3とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第三出力情報計算部23203での計算結果がfφxφrとなる場合もあれば、fφxφrとならない場合もあるステップS23206。その後、制御部21113-φでaφが1であるかが判定されステップS23207、aφ=1であると判定された場合にはステップS23203に進み、aφ≠1であると判定された場合にはステップS22202に進む。ステップS23203では、第一出力情報zφ1を生成した第一出力情報計算部22201は第一出力情報zφ1を出力し、第二出力情報zφ2を生成した第二出力情報計算部22202は第二出力情報zφ2を出力し、第三出力情報zφ3を生成した第三出力情報計算部23202は第三出力情報zφ3を出力するステップS23203。《ステップS23104及びS23105の処理》図37に戻り、制御部21113-φの制御のもと、第一出力情報zφ1は計算装置231-φ図32の第一計算部22105-φに入力され、第二出力情報zφ2は第二計算部22108-φに入力され、第三出力情報zφ3は第三計算部23109-φに入力されるステップS23104。bφ≠1であれば、第一計算部22105-φが、前述のステップS22105の処理によってuφを生成し、bφ=1であれば、第三計算部23109-φが、zφ31rを計算してその計算結果をuφとする。計算結果uφは第一べき乗計算部21106-φに送られる。ここで、bφ=1の場合、uφ=zφ31r=fφxφxφ3となる。すなわち、zφ31rは、fφxφについて誤差Xφ3を持つ標本器となる。その理由については後述するステップS23105。《ステップS23108の処理》aφ≠1であれば、第二計算部22108-φが、前述のステップS22108の処理によってvφを生成し、aφ=1であれば、第三計算部23109-φが、zφ31rを計算してその計算結果をvφとする。計算結果vφは第二べき乗計算部21109-φに送られる。ここで、aφ=1の場合、vφ=zφ31r=fφxφxφ3となる。すなわち、zφ31rは、fφxφについて誤差Xφ3を持つ標本器となる。その理由については後述するステップS23108。なお、zφ31rの計算、すなわちzφ3のべき乗根の計算が困難な場合には、次のようにしてuφ及び/又はvφを計算してもよい。第三計算部23109-φは、乱数rφ,3とその乱数rφ,3に基づいて計算されたzφ3の組を順次α1,β1,α2,β2,...,αm,βm,...として図示していない記憶部に記憶する。mは自然数である。第三計算部23109-φは、α1,α2,...,αmの最小公倍数が1になれば、γ1,γ2,...,γmを整数としてγ1α1γ2α2...γmαm=1となるγ1,γ2,...,γmを計算して、そのγ1,γ2,...,γmを用いてΠi1mβiγi=β1γ1β2γ2...βmγmを計算して、その計算結果をuφ及び/又はvφとしてもよい。≪zφ31rがfφxφについて誤差Xφ3を持つ標本器となる理由について≫Rを乱数として、能力提供装置232がxφRを用いて行う計算の計算結果をBxφRとする。すなわち、第一出力情報計算部22201や第二出力情報計算部22202や第三出力情報計算部23203が計算装置231-φに返す計算結果をzφ=BxφRとする。さらに、群Gφに値を持つ確率変数XφをXφ=BxφR1Rfφxφ1と定義する。このとき、zφ1R=BxφR1R=Xφfφxφ=fφxφXφとなる。すなわち、zφ1Rは、fφxφについて誤差Xφを持つ標本器となる。上記式展開において、Xφ=BxφR1RfφxφR1であり、BxφR1R=XφfφxφRであるという性質を用いている。この性質は、Rが乱数であることに基づく。したがって、rφ,3が乱数であることを考慮すると、同様に、zφ1Rがfφxφについて誤差Xφ3を持つ標本器となるのである。[第十五実施形態]第十五実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、本形態では、fφxφが第一暗号文である群Hφの元xφ=Cφ1yφ,1,mφを群Gφの元である第二暗号文fφxφ=Cφ2yφ,2,mφに変換するための関数とする。ただし、第一暗号文Cφ1yφ,1,mφは第一暗号化方式ENCφ1に則って平文mφを第一暗号化鍵yφ,1で暗号化した暗号文であり、第二暗号文Cφ2yφ,2,mφは第二暗号化方式ENCφ2に則って平文mφを第二暗号化鍵yφ,2で暗号化した暗号文である。第二暗号化方式ENCφ2がElGamal暗号方式であり、関数fφxφが準同型関数である。なお、第一暗号化方式ENCφ1には特に限定はなく、第一暗号化方式ENCφ1はElGamal暗号方式のような確率暗号方式であってもよいし、RSA暗号方式のような確定暗号方式であってもよい。以下、第十二実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。図31に例示するように、第十五実施形態の代理計算システム204は、計算装置211-φが計算装置241-φに置換され、能力提供装置212が能力提供装置242に置換されたものである。図32に例示するように、第十五実施形態の計算装置241-φは、例えば、自然数記憶部21101-φと自然数選択部21102-φと整数計算部21103-φと入力情報提供部24104-φと第一計算部24105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部24108-φと第二べき乗計算部21109-φと第二リスト記憶部21110-φと判定部24111-φと最終出力部21112-φと制御部21113-φとを有する。図35に例示するように、本形態の入力情報提供部24104-φは、例えば、第一乱数生成部24104a-φと第一入力情報計算部24104b-φと第二乱数生成部24104c-φと第二入力情報計算部24104d-φとを有する。図33に例示するように、第十五実施形態の能力提供装置242は、例えば、第一出力情報計算部24201と第二出力情報計算部24202と制御部21205とを有する。<処理の前提>第十五実施形態では、群Gφが巡回群Gφ1,Gφ2の直積群Gφ1×Gφ2、μφg1が群Gφ1の生成元、μφg2が群Gφ2の生成元、第二暗号化鍵yφ,2がμφg2s、元Cφ2yφ,2,mφがμφg1r,mφyφ,2r∈Gφ1×Gφ2、rφが整数の乱数、値uφaがcφ1u,cφ2u∈Gφ1×Gφ2、値vφbがcφ1v,cφ2v∈Gφ1×Gφ2である。Gφ1=Gφ2であってもよいし、Gφ1≠Gφ2であってもよい。前述のように第一暗号化方式ENCφ1には限定はないが、例えば第一暗号化方式ENCφ1がElGamal暗号方式である場合には、群Hφが巡回群Hφ1,Hφ2の直積群Hφ1×Hφ2、r’φが整数の乱数、μφh1が群Hφ1の生成元、μφh2が群Hφ2の生成元、第一暗号化鍵yφ,1がμφh2s、第一暗号文Cφ1yφ,1,mφがμφh1r’,mφyφ,1r’∈Hφ1×Hφ2となる。Hφ1=Hφ2であってもよいし、Hφ1≠Hφ2であってもよい。なお、Α=α1,α2∈Gφ1×Gφ2,Β=β1,β2∈Gφ1×Gφ2,及びεが自然数である場合、Αεはα1ε,α2εを表し、Αεはα1ε,α2εを表し、ΑΒはα1β1,α2β2を表す。同様に、εが自然数、Α=α1,α2∈Hφ1×Hφ2,Β=β1,β2∈Hφ1×Hφ2である場合、Αεはα1ε,α2εを表し、Αεはα1ε,α2εを表し、ΑΒはα1β1,α2β2を表す。eφα,βをα,β∈Gφ1×Gφ2に対して巡回群GφTの元を与える双線形写像とする。双線形写像の例は、WeilペアリングやTateペアリングなどのペアリング演算を行うための関数やアルゴリズムである参考文献2:AlfredJMenezes,ELLIPTICCURVEPUBLICKEYCRYPTOSYSTEMS,KLUWERACADEMICPUBLISHERS,ISBN0792393686,pp6181や、参考文献3:RFC5091IdentityBasedCryptographyStandard1SupersingularCurveImplementationsoftheBFandBB1Cryptosystems等参照。<処理>図37及び図38に例示するように、第十五実施形態の処理は第十二実施形態のステップS21103~S21105,S21107,S21108,S21110,S21200~S21203が、それぞれ、ステップS24103~S24105,S24107,S24108,S24110,S24200~S24203に置換されたものである。以下ではステップS24103~S24105,S24107,S24108,S24110,S24200~S24203の処理のみを説明する。《ステップS24103の処理》計算装置241-φ図32の入力情報提供部24104-φは、入力された元xφ=Cφ1yφ,1,mφに対応する第一入力情報τφ1及び第二入力情報τφ2を生成して出力する図37/ステップS24103。以下、図40を用いて本形態のステップS24103の処理を説明する。第一乱数生成部24104a-φ図35は、群Hφの任意の元hrφ1∈Hφを生成する。本形態では群Hφからランダムかつ一様に元hrφ1が選択される一様乱数。生成された元hrφ1は、第一入力情報計算部24104b-φ、及び第一計算部24105-φに送られるステップS24103a。第一入力情報計算部24104b-φは、自然数選択部21102-φで選択された自然数bφ、元xφ、元hrφ1、及び第一暗号化鍵yφ,1を用い、第一入力情報τφ1としてxφbCφ1yφ,1,hrφ1を計算するステップS24103b。第二乱数生成部24104c-φは、群Hφの任意の元hrφ2∈Hφを生成する。本形態では群Hφからランダムかつ一様に元hrφ2が選択される一様乱数。生成された元hrφ2は、第二入力情報計算部24104d-φ、及び第二計算部24108-φに送られるステップS24103c。第二入力情報計算部24104b-φは、自然数選択部21102-φで選択された自然数aφ、元xφ、元hrφ2、及び第一暗号化鍵yφ,1を用い、第二入力情報τφ2としてxφaCφ1yφ,1,hrφ2を計算するステップS24103d。第一入力情報計算部24104b-φは、以上のように生成した第一入力情報τφ1=xφbCφ1yφ,1,hrφ1を出力する。第二入力情報計算部24104d-φは、以上のように生成した第二入力情報τφ2=xφaCφ1yφ,1,hrφ2を出力するステップS24103e。《ステップS24200~S24203の処理》図38に例示するように、まず、第一入力情報τφ1=xφbCφ1yφ,1,hrφ1が能力提供装置242図33の第一出力情報計算部24201に入力され、第二入力情報τφ2=xφaCφ1yφ,1,hrφ2が第二出力情報計算部24202に入力されるステップS24200。第一出力情報計算部24201は、第一入力情報τφ1=xφbCφ1yφ,1,hrφ1と第一暗号化鍵yφ,1に対応する第一復号鍵sφ,1と第二暗号化鍵yφ,2とを用い、或る確率より大きな確率でfφxφbCφ1yφ,1,hrφ1を正しく計算し、計算結果を第一出力情報zφ1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部24201での計算結果がfφxφbCφ1yφ,1,hrφ1となる場合もあれば、fφxφbCφ1yφ,1,hrφ1とならない場合もあるステップS24201。なお、本形態の関数fφは、第一暗号化方式ENCφ1に則って第一復号鍵sφ,1で暗号文を復号して得られる値をElGamal暗号方式に則って第二暗号化鍵yφ,2で暗号化するための準同型関数である。例えば、第一暗号化方式ENCφ1も第二暗号化方式ENCφ2もElGamal暗号方式で或る場合、関数fφは、ElGamal暗号方式に則って第一復号鍵sφ,1で暗号文を復号して得られる値を、ElGamal暗号方式に則って第二暗号化鍵yφ,2で暗号化するための準同型関数である。第二出力情報計算部24202は、第二入力情報τφ2=xφaCφ1yφ,1,hrφ2と第一復号鍵sφ,1と第二暗号化鍵yφ,2とを用い、或る確率より大きな確率でfφxφaCφ1yφ,1,hrφ2を正しく計算可能であり、得られた計算結果を第二出力情報zφ2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部24202での計算結果がfφxφaCφ1yφ,1,hrφ2となる場合もあれば、fφxφaCφ1yφ,1,hrφ2とならない場合もあるステップS24202。第一出力情報計算部24201は第一出力情報zφ1を出力し、第二出力情報計算部24202は第二出力情報zφ2を出力するステップS24203。《ステップS24104及びS24105の処理》図37に戻り、第一出力情報zφ1は計算装置241-φ図32の第一計算部24105-φに入力され、第二出力情報zφ2は第二計算部24108-φに入力されるステップS24104。第一計算部24105-φは、入力された第一出力情報zφ1、元hrφ1、及び第二暗号化鍵yφ,2を用い、zφ1Cφ2yφ,2,hrφ11を計算してその計算結果をuφとするステップS24105。計算結果uφは、第一べき乗計算部21106-φに送られる。ここで、uφ=zφ1Cφ2yφ,2,hrφ11=fφxφbxφ1となる。すなわち、zφ1Cφ2yφ,2,hrφ11は、fφxφについて誤差Xφ1を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS24108の処理》第二計算部24108-φは、入力された第二出力情報zφ2、元hrφ2、及び第二暗号化鍵yφ,2を用い、zφ2Cφ2yφ,2,hrφ21を計算してその計算結果をvφとする。計算結果vφは、第二べき乗計算部21109-φに送られる。ここで、vφ=zφ2Cφ2yφ,2,hrφ21=fφxφaxφ2となる。すなわち、zφ2Cφ2yφ,2,hrφ21は、fφxφについて誤差Xφ2を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS24107の処理》判定部24111-φは、第一リスト記憶部21107-φに記憶された組uφ,uφ’及び第二リスト記憶部21110-φに記憶された組vφ,vφ’の中で、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属するものがあるかを判定する。本形態の判定部24111-φは、uφ’=cφ1u,cφ2u及びvφ’=cφ1v,cφ2vに対して、関係eφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たすものがあるかを判定するステップS24107。uφ’とvφ’がこの関係を満たすかを判定することで、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属することを判定できる理由については後述する。もし、第二リスト記憶部21110-φに組vφ,vφ’が記憶されていない場合には、このステップS24107の処理を行わずに、次のステップS21108の処理を行う。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組があった場合上記の関係を満たすuφ’とvφ’との組があった場合には、ステップS21114に進む。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組がなかった場合には、ステップS24108に進む。《ステップS24110の処理》判定部24111-φは、第一リスト記憶部21107-φに記憶された組uφ,uφ’及び第二リスト記憶部24110-φに記憶された組vφ,vφ’の中で、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属するものがあるかを判定する。本形態の判定部24111-φは、uφ’=cφ1u,cφ2u及びvφ’=cφ1v,cφ2vに対して、関係eφμφ,g1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たすものがあるかを判定するステップS24110。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組があった場合には、ステップS21114に進む。同一の元Mφに対する類CLφMφに属するuφ’とvφ’との組がなかった場合には、ステップS21111に進む。なお、特殊な群Gφ1,Gφ2や双線形写像eφを用いた場合、ステップS24107及びS24110の処理を計算装置241-φに実行させることができる者を制限できる。この詳細については後述する。《zφ1Cφ2yφ,2,hrφ11,zφ2Cφ2yφ,2,hrφ21がfφxφについてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となる理由について》任意の元hrφ1を固定して考えると、元Cφ2yφ,2,mφ=μφg1r,mφyφ,2rにおける乱数rφを確率空間とする確率分布について、以下の関係が成り立つ。ただし、以下の関係において[Ψ1]=[Ψ2]とは、Ψ1とΨ2とが乱数rを確率空間とする確率分布として等しいことを意味する。Dφ1sφ,1,xφは、第一暗号化方式ENCφ1に則って元xφを第一復号鍵sφ,1で復号するための関数を表す。hrφ2’=Dφ1sφ,1,xφahrφ2とする。[zφ2Cφ2yφ,2,hrφ21]=[fφxφaCφ2yφ,1,hrφ2Cφ2yφ,2,hrφ21]=[fφCφ2yφ,1,Dφ1sφ,1,xφahrφ2Cφ2yφ,2,hrφ21]=[fφCφ2yφ,1,Dφ1sφ,1,xφahrφ2Cφ2yφ,2,Dφ1sφ,1,xφahrφ21Cφ2yφ,2,Dφ1sφ,1,xφa]=[fφCφ2yφ,1,hrφ2’Cφ2yφ,2,hrφ2’1Cφ2yφ,2,Dφ1sφ,1,xφa]したがって、乱数rφと群Gφ上の一様かつランダムな元grφとの両方を確率空間とし、群Gφに値を持つ確率変数をXφ2=fφCφ2yφ,1,hrφ2’Cφ2yφ,2,hrφ2’1と考えると、xφ2∈Xφ2について以下の関係が成り立つ。zφ2Cφ2yφ,2,hrφ21=xφ2Cφ2yφ,2,Dφ1sφ,1,xφa=xφ2fφxφa=fφxφaxφ2同様に、xφ1∈Xφ,1についてzφ1Cφ2yφ,2,hrφ11=fφxφbxφ1の関係が成り立つ。したがって、zφ1Cφ2yφ,2,hrφ11,zφ2Cφ2yφ,2,hrφ21はfφxφについてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となる。《関係eφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たすかを判定することで、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属することを判定できる理由》uφ’とvφ’とが互いに同一の元Mφ=xφに対する類CLφMφに属すると仮定する。この場合には第一乱数化可能標本器がuφ=fxφbを正しく計算しており、第二乱数化可能標本器がvφ=fφxφaを正しく計算しているxφ1及びxφ2が群Gφの単位元eφgである可能性が高い。よって、uφ’=μφg1r’’,mφyφ,2r’’かつvφ’=μφg1r’’’,mφyφ,2r’’’である可能性が高い。ただし、r’’φ及びr’’’φは、ElGamal暗号方式の乱数成分と自然数選択部21102-φで選択された自然数の組とによって定まる値である。その場合、双線形写像eφの性質から、uφ’=cφ1u,cφ2uに対してeφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,mφyφ,2r’’/eφμφg1r’’,yφ,2=eφμφg1,mφyφ,2r’’/eφμφg1,yφ,2r’’=eφμφg1,mφeφμφg1,yφ,2/eφμφg1,yφ,2=eφμφg1,mφを満たす可能性が高い。vφ’=cφ1v,cφ2vに対してeφμφg1,cφ2v/eφcφ1v,yφ,2=eφμφg1,mφyφ,2r’’’/eφμφg1r’’’,yφ,2=eφμφg1,mφyφ,2r’’’/eφμφg1,yφ,2r’’’=eφμφg1,mφeφμφg1,yφ,2/eφμφg1,yφ,2=eφμφg1,mφを満たす可能性が高い。よって、uφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属する場合、関係eφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たす可能性が高い。次に、uφ’とvφ’とが互いに異なる元に対する類に属すると仮定する。すなわち、uφ’が元mφ,uに対する類CLφmφ,uに属し、vφ’が元mφ,vmφ,v≠mφ,uに対する類CLφmφ,vに属すると仮定する。すると、uφ’=μφg1r’’,mφ,uyφ,2r’’xφ1かつvφ’=μφg1r’’’,mφ,vyφ,2r’’’xφ2となる。そのため、uφ’=cφ1u,cφ2uに対してeφ,μφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,mφ,uxφ1を満たし、vφ’=cφ1v,cφ2vに対してeφμφg1,cφ2v/eφcφ1v,yφ,2=eφμφg1,mφ,vxφ2を満たす。よって、uφ’とvφ’とが互いに異なる元に対する類に属する場合、関係eφμφg1,cφ2u/eφcφ1u,yφ,2≠eφμφg1,cφ2v/eφcφ1v,yφ,2となる可能性が高い。《特殊な群Gφ1,Gφ2や双線形写像eφ》群Gφ1,Gφ2や双線形写像eφの構成を以下のように限定した場合、ステップS24107及びS24110の処理を計算装置241-φに実行させることができる者を制限することができる。以下にその詳細を述べる。この特殊な例では、Nφが素数ωφと素数ιφの合成数、群Gφ1,Gφ2がそれぞれ合成数Nφを法とした剰余環Z/NφZ上で定義された第一楕円曲線Eφ1上の点からなる部分群、Gφ1ω,Gφ2ωが素数ωφを法とした剰余体Z/ωφZ上で定義された第二楕円曲線Eφ2上の点からなる部分群、Gφ1ι,Gφ2ιが素数ιφを法とした剰余体Z/ιφZ上で定義された第三楕円曲線Eφ3上の点からなる部分群、eφα,βがα,β∈Gφ1×Gφ2に対して巡回群Gφ,Tの元を与える双線形写像、eφ,ωαω,βωがαω,βω∈Gφ1ω×Gφ2ωに対して巡回群Gφ,Tωの元を与える第二双線形写像、eφ,ιαι,βιがαι,βι∈Gφ1ι×Gφ2ιに対して巡回群GφTιの元を与える第三双線形写像、HMφが第一楕円曲線Eφ1上の点を第二楕円曲線Eφ2上の点と第三楕円曲線Eφ3上の点とに写す同型写像、HMφ1が同型写像HMφの逆像である。この例の場合、双線形写像eφα,βは剰余環Z/NφZ上で定義された第一楕円曲線Eφ1上で定義される。しかしながら、剰余環上で定義された楕円曲線上で定義された双線形写像eφα,βを多項式時間で計算する方法は知られておらず、多項式時間で計算可能な剰余環上で定義された楕円曲線上で定義された双線形写像eφα,βの構成方法も知られていない参考文献4:AlexanderWDentandStevenDGalbraithHiddenPairingsandTrapdoorDDHGroupsANTS2006LNCS4076pp4364512006。このような設定の場合、判定部24111は、双線形写像eφを剰余環Z/NφZ上で直接計算して関係eφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たすか否かを判定することができない。一方、剰余体Z/ωφZ,Z/ιφZ上で定義された楕円曲線上で定義されたeφωαω,βωやeφιαι,βιとしては、多項式時間で計算可能なWeilペアリングやTateペアリングなどが存在する参考文献2,3等参照。このようなeφωαω,βωやeφιαι,βιを多項式時間で行うアルゴリズムとしてMillerのアルゴリズム参考文献5:VSMillerShortProgramsforfunctionsonCurves1986,インターネット<httpcryptostanfordedumillermillerpdf>などがよく知られている。さらに、このようなeφωαω,βωやeφιαι,βιを効率的に行うための楕円曲線や巡回群の構成方法もよく知られている例えば、参考文献3、参考文献6:AMiyajiMNakabayashiSTakanoNewexplicitconditionsofellipticcurveTracesforFRReductionIEICETransFundamentalsvolE84Ano05pp12341243May2001、参考文献7:PSLMBarretoBLynnMScottConstructingellipticcurveswithprescribedembeddingdegreesProcSCN2002LNCS2576pp257267SpringerVerlag2003、参考文献8:RDupontAEngeFMorainBuildingcurveswitharbitrarysmallMOVdegreeoverfiniteprimefieldshttpeprintiacrorg2002094等参照。中国人の剰余定理Chineseremaindertheoremに基づき、合成数NφNφ=ωφιφを法とした剰余環Z/NφZから剰余体Z/ωφZと剰余体Z/ιφZとの直積に写す同型写像が存在すること、及び剰余体Z/ωφZと剰余体Z/ιφZとの直積から剰余環Z/NφZに写す同型写像が存在することがよく知られている参考文献9:ヨハネスブーフマン,暗号理論入門,シュプリンガーフェアラーク東京,ISBN104431708669ISBN13,pp5256。すなわち、第一楕円曲線Eφ1上の点を第二楕円曲線Eφ2上の点と第三楕円曲線Eφ3上の点とに写す同型写像HMφ、及びその逆像HMφ1が存在する。一例を挙げると、剰余環Z/NφZの元κmodNφを剰余体Z/ωφZの元κmodωφと剰余体Z/ιφZの元κmodιφとに写す同型写像をHMφとし、剰余体Z/ωφZの元κωmodωφと剰余体Z/ιφZの元κιmodιφとを剰余環Z/NφZの元κωιφιφ’κιωφωφ’modNφに写す写像をHMφ-1とすることができる。ただし、ωφ’及びιφ’はωφωφ’ιφιφ’=1を満たす自然数である。このようなωφ’,ιφ’は拡張ユークリッドの互除法を用いて容易に生成できる。ωφωφ’ιφιφ’=1の関係から、κωιφιφ’κιωφωφ’modNにHMφを作用させるとκωιφιφ’κιωφωφ’modωφ=κωιφιφ’modωφ=κω1-ωφωφ’modωφ=κωmodωφ∈Z/ωφZκωιφιφ’κιωφωφ’modιφ=κιωφωφ’modιφ=κι1-ιφιφ’modιφ=κιmodιφ∈Z/ιφZとなり、この一例での写像はHMφとHMφ1との関係にあることが分かる。そのため、合成数Nφを素因数分解した値、すなわち素数ωφと素数ιφとの値が与えられるのであれば、判定部24111は、以下のステップA~Dの処理によって、剰余環Z/NφZ上で定義された第一楕円曲線Eφ1上の双線形写像eφα,βを計算することができる。ステップA判定部24111は、同型写像HMφを用い、剰余環Z/NφZ上で定義された第一楕円曲線Eφ1上の点α∈Gφ1を、剰余体Z/ωφZ上で定義された第二楕円曲線Eφ2上の点θωα∈Gφ1ωと剰余体Z/ιφZ上で定義された第三楕円曲線Eφ3上の点θια∈Gφ1ιとに写す。ステップB判定部24111は、同型写像HMφを用い、剰余環Z/NφZ上で定義された第一楕円曲線Eφ1上の点β∈Gφ2を、剰余体Z/ωφZ上で定義された第二楕円曲線Eφ2上の点θωβ∈Gφ2ωと剰余体Z/ιφZ上で定義された第三楕円曲線Eφ3上の点θιβ∈Gφ2ιとに写す。ステップC判定部24111は、第二楕円曲線Eφ2及び第三楕円曲線Eφ3でのeφ,ωθωα,θωβ及びeφιθια,θιβを求める。ステップD判定部24111は、得られた演算結果eφ,ωθωα,θωβ及びeφ,ιθια,θιβに逆像HMφ-1を作用させた値をeφα,βとする。よって素数ωφと素数ιφとの値が与えられるのであれば、判定部24111は、ステップA~Dに従ってeφμφg1,cφ2u,eφcφ1u,yφ,2,eφμφg1,cφ2v,eφcφ1v,yφ,2を計算し、関係eφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たすか否かを判定することができる。一方、大きな合成数Nφの素因数分解を多項式時間で行う方法は知られていない。よって、この設定の場合、素数ωφ及び素数ιφの少なくとも一方が与えられていない判定部24111は、関係eφμφg1,cφ2u/eφcφ1u,yφ,2=eφμφg1,cφ2v/eφcφ1v,yφ,2を満たすか否かを判定することができない。以上のような特殊な群Gφ1,Gφ2や双線形写像eφを用いた場合、ステップS24107及びS24110の処理を計算装置241-φに実行させることができる者を素数ωφ及び素数ιφの少なくとも一方を知る者に制限することができる。[第十六実施形態]第十六実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、Hφが群Gφの直積群Gφ×Gφ、群Gφが巡回群、関数fφxφがElGamal暗号の復号関数、すなわち暗号文である元xφ=cφ1,cφ2及び復号鍵sφに対してfφcφ1,cφ2=cφ1cφ2sである場合の第一乱数化可能標本器及び第二乱数化可能標本器の例を具体化したものである。以下、第十二実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。図31に例示するように、第十六実施形態の代理計算システム205は、計算装置211-φが計算装置251-φに置換され、能力提供装置212が能力提供装置252に置換されたものである。図32に例示するように、第十六実施形態の計算装置251-φは、例えば、自然数記憶部21101-φと自然数選択部21102-φと整数計算部21103-φと入力情報提供部25104-φと第一計算部25105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部25108-φと第二べき乗計算部21109-φと第二リスト記憶部21110-φと判定部21111-φと最終出力部21112-φと制御部21113-φとを有する。図36に例示するように、本形態の入力情報提供部25104-φは、例えば、第四乱数生成部25104a-φと第五乱数生成部25104b-φと第一入力情報計算部25104c-φと第六乱数生成部25104d-φと第七乱数生成部25104e-φと第二入力情報計算部25104f-φとを有する。第一入力情報計算部25104c-φは、例えば、第四入力情報計算部25104ca-φと第五入力情報計算部25104cb-φとを有し、第二入力情報計算部25104f-φは、第六入力情報計算部25104fa-φと第七入力情報計算部25104fb-φとを有する。図33に例示するように、第十六実施形態の能力提供装置252は、例えば、第一出力情報計算部25201と第二出力情報計算部25202と制御部21205とを有する。<処理>次に本形態の処理を説明する。第十六実施形態では、群Hφ=Gφ×Gφ、元xφ=cφ1,cφ2∈Hφであり、fφcφ1,cφ2が準同型関数であり、群Gφの生成元をμφgとし、群Gφの位数をKφGとし、同じ復号鍵sφに対する暗号文Vφ,Wφ∈Hφとその暗号文を復号した復号文fφVφ,Wφ=Yφ∈Gφとの組が計算装置251-φ及び能力提供装置252に事前設定され、計算装置251-φ及び能力提供装置252がこの組を利用可能とされているものとする。図37及び38に例示するように、第十六実施形態の処理は第十二実施形態のステップS21103~S21105,S21108,S21200~S21203が、それぞれ、ステップS25103~S25105,S25108,S25200~S25203に置換されたものである。以下ではステップS25103~S25105,S25108,S25200~S25203の処理のみを説明する。《ステップS25103の処理》計算装置251-φ図32の入力情報提供部25104-φは、入力された元xφ=cφ1,cφ2に対応する第一入力情報τφ1及び元xφ=cφ1,cφ2に対応する第二入力情報τφ2を生成して出力する図37/ステップS25103。以下、図41を用いて本形態のステップS25103の処理を説明する。第四乱数生成部25104a-φ図36は、0以上KφG未満の自然数の一様乱数rφ,4を生成する。生成された乱数rφ,4は、第四入力情報計算部25104ca-φ、第五入力情報計算部25104cb-φ、及び第一計算部25105-φに送られるステップS25103a。第五乱数生成部25104b-φは、0以上KφG未満の自然数の一様乱数rφ,5を生成する。生成された乱数rφ,5は、第五入力情報計算部25104cb-φ、及び第一計算部25105-φに送られるステップS25103b。第四入力情報計算部25104ca-φは、自然数選択部21102-φで選択された自然数bφ、元xφが含むcφ2、及び乱数rφ,4を用い、第五入力情報cφ,2bφWrを計算するステップS25103c。第五入力情報計算部25104cb-φは、自然数選択部21102-φで選択された自然数bφ、元xφが含むcφ1、及び乱数rφ,4,rφ,5を用い、第五入力情報cφ1bVrμφgrを計算するステップS25103d。第六乱数生成部25104d-φは、0以上KφG未満の自然数の一様乱数rφ,6を生成する。生成された乱数rφ,6は、第六入力情報計算部25104fa-φ、第七入力情報計算部25104fb-φ、及び第二計算部25108-φに送られるステップS25103e。第七乱数生成部25104e-φは、0以上KφG未満の自然数の一様乱数rφ,7を生成する。生成された乱数rφ,7は、第七入力情報計算部25104fb-φ、及び第二計算部25108-φに送られるステップS25103f。第六入力情報計算部25104fa-φは、自然数選択部21102-φで選択された自然数aφ、元xφが含むcφ2、及び乱数rφ,6を用い、第六入力情報cφ2aWrを計算するステップS25103g。第七入力情報計算部25104fb-φは、自然数選択部21102-φで選択された自然数aφ、元xφが含むcφ1、及び乱数rφ,6,rφ,7を用い、第七入力情報cφ1aVrμgrを計算するステップS25103h。第一入力情報計算部25104c-φは、以上のように生成した第五入力情報cφ2bWφr及び第五入力情報cφ1bVφrμφgrを第一入力情報τφ1=cφ2bWφr,cφ1bVφrμφgrとして出力する。第二入力情報計算部25104f-φは、以上のように生成した第六入力情報cφ2aWr及び第七入力情報cφ1aVφrμφgrを第二入力情報τφ2=cφ2aWφr,cφ1aVφrμφgrとして出力するステップS25103i。《ステップS25200~S25203の処理》図38に例示するように、まず、第一入力情報τφ1=cφ2bWφr,cφ1bVφrμφgrが能力提供装置252図33の第一出力情報計算部25201に入力され、第二入力情報τφ2=cφ2aWr,cφ1aVrμφgrが第二出力情報計算部25202に入力されるステップS25200。第一出力情報計算部25201は、第一入力情報τφ1=cφ2bWφr,cφ1bVφrμφgrと復号鍵sφとを用い、或る確率より大きな確率でfφcφ1bVφrμφgr,cφ2bWφrを正しく計算し、計算結果を第一出力情報zφ1とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第一出力情報計算部25201での計算結果がfφcφ1bVφrμφgr,cφ2bWφrとなる場合もあれば、fφcφ1bVφrμφgr,cφ2bWφrとならない場合もあるステップS25201。第二出力情報計算部25202は、第二入力情報τφ2=cφ2aWφr,cφ1aVφrμφgrと復号鍵sφとを用い、或る確率より大きな確率でfφcφ1aVφrμφgr,cφ2aWφrを正しく計算可能であり、得られた計算結果を第二出力情報zφ2とする。この計算結果は正しい場合もあれば正しくない場合もある。すなわち、第二出力情報計算部25202での計算結果がfφcφ1aVφrμφgr,cφ2aWφrとなる場合もあれば、fφcφ1aVφrμφgr,cφ2aWφrとならない場合もあるステップS25202。第一出力情報計算部25201は第一出力情報zφ1を出力し、第二出力情報計算部25202は第二出力情報zφ2を出力するステップS25203。《ステップS25104及びS25105の処理》図37に戻り、第一出力情報zφ1は計算装置251-φ図32の第一計算部25105-φに入力され、第二出力情報zφ2は第二計算部25108-φに入力されるステップS25104。第一計算部25105-φは、入力された第一出力情報zφ1及び乱数rφ,4,rφ,5を用い、zφ1Yrμφgrを計算してその計算結果をuφとするステップS25105。計算結果uφは、第一べき乗計算部21106-φに送られる。ここで、uφ=zφ,4Yφrμφgr=fφcφ1,cφ2bxφ1となる。すなわち、zφ,4Yφrμφgrは、fφcφ1,cφ2について誤差Xφ1を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS25108の処理》第二計算部25108-φは、入力された第二出力情報zφ2及び乱数rφ,6,rφ,7を用い、zφ2Yφrμφgrを計算してその計算結果をvφとする。計算結果vφは、第二べき乗計算部21109-φに送られる。ここで、vφ=zφ,5Yφrμφgr=fφcφ1,cφ2aφxφ2となる。すなわち、zφ,5Yφrμφgrは、fφcφ1,cφ2について誤差Xφ2を持つ乱数化可能標本器の出力となる。その理由については後述する。≪zφ,4Yφrμφgr,zφ5Yφrμφgrがfφcφ1,cφ2についてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となる理由について≫cを自然数、R1、R2、R1’及びR2’を乱数として、能力提供装置252がcφ1cVφR1μφgR2及びcφ2cWφR1を用いて行う計算の計算結果をBcφ1cVφR1μφgR2,cφ2cWφR1とする。すなわち、第一出力情報計算部25201や第二出力情報計算部25202が計算装置251-φに返す計算結果をzφ=Bcφ1cVφR1μφgR2,cφ2cWφR1とする。さらに、群Gφに値を持つ確率変数XφをXφ=BVφR1’μφgR2’,WφR1’fφVφR1’μφgR2’,WφR1’1と定義する。このとき、zφYφR1μφgR2=Bcφ1cVφR1μφgR2,cφ2cWφR1YφR1μφgR2=Xφfφcφ1cVφR1μφgR2,cφ2cWφR1YφR1μφgR2=Xφfφcφ1,cφ2cfφVφ,WφR1fφμφg,eφgR2YφR1μφgR2=Xφfφcφ1,cφ2cYφR1μφgR2YφR1μφgR2=fφcφ1,cφ2cXφとなる。すなわち、zφYφR1μφgR2は、fφxφについて誤差Xφを持つ乱数化可能標本器の出力となる。なお、eφgは、群Gφの単位元である。上記式展開において、Xφ=BVφR1’μφgR2’,WφR1’fφVφR1’μφgR2’,WφR1’1=Bcφ1cVφR1μφgR2,cφ2cWφR1fφcφ1cVφR1μφgR2,cφ2cWφR1であり、Bcφ1cVφR1μφgR2,cφ2cWφR1=Xφfφcφ1cVφR1μφgR2,cφ2cWφR1であるという性質を用いている。この性質は、R1、R2、R1’及びR2’が乱数であることに基づく。したがって、aφ,bφが自然数、rφ,4,rφ,5,rφ,6及びrφ,7が乱数であることを考慮すると、同様に、zφ4Yφrμφgr,zφ5Yφrμφgrがfφcφ1,cφ2についてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となるのである。[第十七実施形態]第十七実施形態の代理計算システムは、上述した第一乱数化可能標本器及び第二乱数化可能標本器を具体化した他の例である。具体的には、群Hφが巡回群H1φH2φの直積群H1φ×H2φ、巡回群H1φの生成元がη1φ、巡回群H2φの生成元がη2φ、fφが巡回群H1φの元と巡回群H2φの元との組を巡回群Gφの元へ写す双準同型写像、巡回群Hφの元xφが巡回群H1φの元λ1φと巡回群H2φの元λ2φとの組、Ωφfφη1φ,η2φである場合の第一乱数化可能標本器及び第二乱数化可能標本器の例を具体化したものである。双準同型写像fφの例には、Weilペアリングやtateペアリングなどのペアリング演算を行うための関数やアルゴリズムがある。以下、第十二実施形態と異なる部分を中心に説明し、共通する部分については重複説明を省略する。図31に例示するように、第十七実施形態の代理計算システム207は、計算装置211-φが計算装置271-φに置換され、能力提供装置212が能力提供装置272に置換されたものである。図32に例示するように、第十七実施形態の計算装置271-φは、例えば、自然数記憶部21101-φと自然数選択部21102-φと整数計算部21103-φと入力情報提供部27104-φと第一計算部27105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部27108-φと第二べき乗計算部21109-φと第二リスト記憶部21110-φと判定部27111-φと最終出力部21112-φと制御部21113-φとを有する。図42に例示するように、本形態の入力情報提供部27104-φは、例えば、第一乱数生成部27104a-φと第二乱数生成部27104c-φと第一入力情報計算部27104b-φと第二入力情報計算部27104d-φとを有する。図33に例示するように、第十七実施形態の能力提供装置272は、例えば、第一出力情報計算部27201と第二出力情報計算部27202と制御部21205とを有する。<処理>次に本形態の処理を説明する。第十七実施形態では、群Hφが巡回群H1φH2φの直積群H1φ×H2φ、巡回群H1φの生成元がη1φ、巡回群H2φの生成元がη2φ、fφが巡回群H1φの元と巡回群H2φの元との組を巡回群Gφの元へ写す双準同型写像、群Hφの元xφが巡回群H1φの元λ1φと巡回群H2φの元λ2φとの組、Ωφfφη1φ,η2φである。Ωφfφη1φ,η2φは例えば事前計算されたものである。図37及び38に例示するように、第十七実施形態の処理は第十二実施形態のステップS21103~S21105,S21107,S21108,S21110,S21200~S21203が、それぞれ、ステップS27103~S27105,S27107,S27108,S27110,S27200~S27203に置換されたものである。以下ではステップS27103~S27105,S27107,S27108,S27110,S27200~S27203の処理のみを説明する。《ステップS27103の処理》計算装置271-φ図32の入力情報提供部27104-φは、入力された巡回群H1φの元λ1φと巡回群H2φの元λ2φとの組xφ=λ1φ,λ2φに対応する第一入力情報τφ1及びxφ=λ1φ,λ2φに対応する第二入力情報τφ2を生成して出力する図37/ステップS27103。以下、図43を用いて本形態のステップS27103の処理を説明する。第一乱数生成部27104a-φ図42は、0以上2μk以下の自然数の一様乱数rφ,11,rφ,12,rφ,13,rφ,14,rφ,15,rφ,16を生成する。ただし、μkはセキュリティパラメータkの関数値を意味する。生成された乱数rφ,11,rφ,12,rφ,13,rφ,14,rφ,15,rφ,16は、第一入力情報計算部27104b-φ及び第一計算部27105-φに送られるステップS27103a。第一入力情報計算部27104b-φは、自然数選択部21102-φで選択された自然数bφ、入力された値xφ=λ1φ,λ2φ、生成元η1φ,η2φ及び乱数rφ,11,rφ,12,rφ,13,rφ,14,rφ,15,rφ,16を用い、第一入力情報τφ1として、λ1φη1φrr,λ2φbη2φrr、η1φr,λ2φbrη2φr及びλ1φrη1φr,η2φrを計算するステップS27103b~S27103d。第二乱数生成部27104c-φ図42は、0以上2μk以下の自然数の一様乱数rφ,21,rφ,22,rφ,23,rφ,24,rφ,25,rφ,26を生成する。生成された乱数rφ,21,rφ,22,rφ,23,rφ,24,rφ,25,rφ,26は、第二入力情報計算部27104d-φ及び第二計算部27108-φに送られるステップS27103e。第二入力情報計算部27104d-φは、自然数選択部21102-φで選択された自然数aφ、入力された値xφ=λ1φ,λ2φ、生成元η1φ,η2φ及び乱数rφ,21,rφ,22,rφ,23,rφ,24,rφ,25,rφ,26を用い、第二入力情報τφ2として、λ1φη1φrr,λ2φaη2φrr、η1φr,λ2φarη2φr及びλ1φrη1φr,η2φrを計算するステップS27103f~S27103h。第一入力情報計算部27104b-φは、第一入力情報τφ1として、λ1φη1φrr,λ2φbη2φrr、η1φr,λ2φbrη2φr及びλ1φrη1φr,η2φrを出力する。第二入力情報計算部27104d-φは、第二入力情報τφ2として、λ1φη1φrr,λ2φaη2φrr、η1φr,λ2φarη2φr及びλ1φrη1φr,η2φrを出力するステップSS27103i。《ステップS27200~S27203の処理》図38に例示するように、第一入力情報τφ,1であるλ1φη1φrr,λ2φbη2φrr、η1φr,λ2φbrη2φr及びλ1φrη1φr,η2φrが能力提供装置272図33の第一出力情報計算部27201に入力される。第二入力情報τφ2であるλ1φη1φrr,λ2φaη2φrr、η1φr,λ2φarη2φr及びλ1φrη1φr,η2φrが第二出力情報計算部27202に入力されるステップS27200。第一出力情報計算部27201は、第一入力情報τφ1を用い、或る確率より大きな確率で、fφλ1φη1φrr,λ2φbη2φrr、fφη1φr,λ2φbrη2φr及びfφλ1φrη1φr,η2φrを正しく計算し、得られた演算結果zφ11、zφ12及びzφ13を第一出力情報zφ1とする。これらの計算結果は正しい場合もあれば正しくない場合もあるステップS27201。第二出力情報計算部27202は、第二入力情報τφ2を用い、或る確率より大きな確率で、fφλ1φη1φrr,λ2φaη2φrr、fφη1φr,λ2φarη2φr及びfφλ1φrη1φr,η2φrを正しく計算し、得られた演算結果zφ21、zφ22及びzφ23を第二出力情報zφ2とする。これらの計算結果は正しい場合もあれば正しくない場合もあるステップS27202。第一出力情報計算部27201は第一出力情報zφ1を出力し、第二出力情報計算部27202は第二出力情報zφ2を出力するステップS27203。《ステップS27104及びS27105の処理》図37に戻り、第一出力情報zφ,1は計算装置271-φ図32の第一計算部27105-φに入力され、第二出力情報zφ2は第二計算部27108-φに入力されるステップS27104。第一計算部27105-φは、入力された第一出力情報zφ1=zφ11,zφ12,zφ13及び乱数rφ,11,rφ,12,rφ,13,rφ,14,rφ,15,rφ,16を用い、uφ=zφ11zφ12zφ13Ωφrrrrrrrrを計算して演算結果uφを得るステップS27105。計算結果uφは、第一べき乗計算部21106-φに送られる。ここで、uφ=fφλ1φ,λ2φbφxφ,1となる。すなわち、zφ11zφ12zφ13Ωφrrrrrrrrは、fφλ1φ,λ2φについて誤差Xφ,1を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS27108の処理》第二計算部27108-φは、入力された第二出力情報zφ2=zφ21,zφ22,zφ23及び乱数rφ,21,rφ,22,rφ,23,rφ,24,rφ,25,rφ,26を用い、vφ=zφ21zφ22zφ23Ωφrrrrrrrrを計算して演算結果vφを得る。計算結果vφは、第二べき乗計算部21109-φに送られる。ここで、vφ=fφλ1φ,λ2φaφxφ2となる。すなわち、zφ21zφ22zφ23Ωφrrrrrrrrは、fφλ1φ,λ2φについて誤差Xφ2を持つ乱数化可能標本器の出力となる。その理由については後述する。《ステップS27107,S27110の処理》ステップS27107,S27110では、判定部27111-φがuφ’=vφ’であるかを判定する。ステップS27107でuφ’=vφ’であると判定されればステップS21114に進み、そうでなければステップS27108に進む。ステップS27110でuφ’=vφ’であると判定されればステップS21114に進み、そうでなければステップS21111に進む。≪zφ11zφ12zφ13Ωφrrrrrrrr,zφ21zφ22zφ23Ωφrrrrrrrrがfφλ1φ,λ2φについてそれぞれ誤差Xφ1,Xφ2を持つ乱数化可能標本器の出力となる理由について≫fφの双線形性よりvφについて以下の関係が成り立つ。vφfφλ1φ,λ2φa=zφ21zφ22zφ23Ωφrrrrrrrrfφλ1φ,λ2φa=zφ21zφ22zφ23fφλ1φη1φrr,λ2φaη2φrr1fφλ1φη1φrr,λ2φaη2φrrΩφrrrrrrrrfφλ1φ,λ2φa=zφ21’zφ22zφ23fφλ1φη1φrr,λ2φaη2φrrΩφrrrrrrrrfφλ1φ,λ2φa=zφ21’zφ22’zφ23’fφλ1φη1φrr,λ2φaη2φrrfφη1φr,λ2φarη2φrfφλ1φrη1φr,η2φrΩφrrrrrrrrfφλ1φ,λ2φa=zφ21’zφ22’zφ23’ただし、zφ21’=zφ21fφλ1φη1φrr,λ2φaη2φrr1、zφ22’=zφ22fφη1φr,λ2φarη2φr1、zφ23’=zφ23fφλ1φrη1φr,η2φr1を満たす。zφ21’,zφ22’及びzφ23’は、何れもaに依存しない確率分布とstatisticallycloseである。よって、vφfφλ1φ,λ2φaがなす確率分布はaに依存しないある確率分布Xφ2とstatisticallycloseである。したがって、vφはfφλ1φ,λ2φについて誤差Xφ2を持つ乱数化可能標本器の出力となる。同様に、uφはfφλ1φ,λ2φについて誤差Xφ1を持つ乱数化可能標本器の出力となる。[第十八実施形態]上述の各実施形態では、計算装置の自然数記憶部21101-φに、互いに素である2つの自然数aφ,bφの組aφ,bφが複数種類記憶され、これらの組aφ,bφを用いて各処理が実行されることとした。しかしながら、aφ,bφの一方が定数であってもよい。例えば、aφが1に固定されていてもよいし、bφが1に固定されていてもよい。言い換えると、第一乱数化可能標本器又は第二乱数化可能標本器の一方が標本器に置換されていてもよい。aφ,bφの一方が定数である場合、定数とされたaφ又はbφを選択する処理が不要となり、各処理部は定数とされたaφ又はbφが入力されることなく、それを定数として扱って計算を行うことができる。定数とされたaφ又はbφが1である場合には、a’φやb’φを用いることなく、fφxφ=uφb’vφa’をfφxφ=vφ又はfφxφ=uφとして得ることができる。第十八実施形態は、そのような変形の一例であり、bφが1に固定され、第二乱数化可能標本器が標本器に置換された形態である。以下では、第十二実施形態との相違点を中心に説明する。第一乱数化可能標本器や標本器の具体例は、第十三実施形態から第十七実施形態で説明したのと同様であるため、説明を省略する。<構成>図31に例示するように、第十八実施形態の代理計算システム206は、第十二実施形態の計算装置211-φが計算装置261-φに置換され、能力提供装置212が能力提供装置262に置換されたものである。図44に例示するように、第十八実施形態の計算装置261-φは、例えば、自然数記憶部26101-φと自然数選択部26102-φと入力情報提供部26104-φと第一計算部26105-φと第一べき乗計算部21106-φと第一リスト記憶部21107-φと第二計算部26108-φと第二リスト記憶部26110-φと判定部26111-φと最終出力部21112-φと制御部21113-φとを有する。図33に例示するように、第十八実施形態の能力提供装置262は、例えば、第一出力情報計算部26201と第二出力情報計算部26202と制御部21205とを有する。<処理の前提>計算装置261-φの自然数記憶部26101-φには自然数bφが記憶されておらず、自然数aφのみが複数種類記憶されている。その他の前提は、上述の第十二実施形態から第十七実施形態の何れかと同様である。<処理>図45に例示するように、まず、計算装置261-φ図44の自然数選択部26102-φが、自然数記憶部26101-φに記憶された複数の自然数aφから1つの自然数aφをランダムに読み込む。読み込まれた自然数aφの情報は、入力情報提供部26104-φ及び第一べき乗計算部21106-φに送られるステップS26100。制御部21113-φは、t=1とするステップS21102。入力情報提供部26104-φは、入力された元xφにそれぞれ対応する第一入力情報τφ1及び第二入力情報τφ2を生成して出力する。好ましくは、第一入力情報τφ1及び第二入力情報τφ2はそれぞれ元xφとの関係をかく乱させた情報である。これにより、計算装置261-φは、元xφを能力提供装置262に対して隠蔽できる。好ましくは、本形態の第二入力情報τφ2は自然数選択部26102-φで選択された自然数aφにさらに対応する。これにより、能力提供装置262から提供された計算能力を計算装置261-φが高い精度で評価することが可能となるステップS26103。第一入力情報τφ1及び第二入力情報τφ2の組みの具体例は、第十三実施形態から第十七実施形態の何れかのbφ=1とした第一入力情報τφ1及び第二入力情報τφ2の組みである。図38に例示するように、第一入力情報τφ1は能力提供装置262図33の第一出力情報計算部26201に入力され、第二入力情報τφ2は第二出力情報計算部26202に入力されるステップS26200。第一出力情報計算部26201は、第一入力情報τφ1を用い、或る確率より大きな確率でfφτφ1を正しく計算し、得られた計算結果を第一出力情報zφ1とするステップS26201。第二出力情報計算部26202は、第二入力情報τφ2を用い、或る確率より大きな確率でfφτφ2を正しく計算し、得られた演算結果を第二出力情報zφ2とするステップS26202。すなわち、第一出力情報計算部26201や第二出力情報計算部26202は、意図的又は意図的ではない誤差を含んだ計算結果を出力し得る。言い換えると、第一出力情報計算部26201での計算結果がfφτφ,1の場合もあればfφτφ,1でない場合もあり、第二出力情報計算部26202での計算結果がfφτφ2の場合もあればfφτφ2でない場合もある。第一出力情報zφ,1及び第二出力情報zφ2の組の具体例は、第十三実施形態から第十七実施形態の何れかのbφ=1とした第一出力情報zφ,1及び第二出力情報zφ2の組である。第一出力情報計算部26201は第一出力情報zφ,1を出力し、第二出力情報計算部26202は第二出力情報zφ2を出力するステップS26203。図45に戻り、第一出力情報zφ,1は計算装置261-φ図44の第一計算部26105-φに入力され、第二出力情報zφ2は第二計算部26108-φに入力される。これらの第一出力情報zφ,1及び第二出力情報zφ2が、能力提供装置262から計算装置261-φに与えられた計算能力に相当するステップS26104。第一計算部26105-φは、第一出力情報zφ1から演算結果uφ=fφxφxφ1を生成する。演算結果uφの具体例は、第十三実施形態から第十七実施形態の何れかのbφ=1とした演算結果uφである。演算結果uφは第一べき乗計算部21106-φに送られるステップS26105。第一べき乗計算部21106-φはuφ’=uφaを計算する。計算結果uφとその計算結果に基づいて計算されたuφ’との組uφ,uφ’は、第一リスト記憶部21107-φに記憶されるステップS21106。第二計算部26108-φは、第二出力情報zφ2から演算結果vφ=fφxφaφxφ2を生成する。演算結果vφの具体例は、第十三実施形態から第十七実施形態の何れかの演算結果vφである。演算結果vφは第二リスト記憶部26110-φに記憶されるステップS26108。判定部26111-φは、第十二実施形態から第十七実施形態の何れかと同様に、第一リスト記憶部21107-φに記憶された組uφ,uφ’及び第二リスト記憶部26110-φに記憶されたvφの中で、uφ’とvφとが互いに同一の元Mφに対する類CLφMφに属するものがあるかを判定するステップS26110。同一の元Mφに対する類CLφMφに属するuφ’とvφとの組があった場合には、ステップS26114に進む。同一の元Mφに対する類CLφMφに属するuφ’とvφとの組がなかった場合には、ステップS21111に進む。ステップS21111では、制御部21113-φがt=Tであるか判定するステップS21111。Tは予め定められた自然数である。t=Tであれば、制御部21113-φは、計算をすることができなかった旨の情報、例えば記号⊥を出力してステップS21113、処理を終える。t=Tでない場合には、制御部21113-φは、tを1だけインクリメント、すなわちt=t1としてステップS21112、ステップS26103に戻る。ステップS26114では、最終出力部21112-φが、同一の元Mφに対する類CLφMφに属すると判定されたuφ’とvφとの組が含むuφ’に対応するuφを出力するステップS26114。このように得られたuφは、第十二実施形態から第十七実施形態でbφ=1とした場合のuφb’vφa’に相当する。すなわち、このように得られたuφは高い確率でfφxφとなる。よって、少なくとも上述の処理を複数回繰り返し、ステップS26114で得られた値のうち最も頻度の高い値uφを選択すれば、選択されたuφがfφxφであることの信頼度は所定値以上となる。後述するように、設定によっては圧倒的な確率でuφ=fφxφとなる。≪fφxφが得られる理由について≫次に、本形態の計算装置261-φで復号結果fφxφが得られる理由を説明する。まず、説明に必要な事項を定義する。ブラックボックスblackbox:fφτφのブラックボックスFφτφとは、τφ∈Hφを入力としてzφ∈Gφを出力する処理部を意味する。本形態では、第一出力情報計算部26201及び第二出力情報計算部26202が、それぞれ関数fφτφのブラックボックスFφτφに相当する。群Hφから任意に選択された元τφ∈UHφ及びzφ=Fφτφに対してzφ=fφτφを満たす確率がδ0<δ≦1よりも大きい場合、すなわち、Pr[zφ=fφτφ|τφ∈UHφ,zφ=Fφτφ]>δ...を満たすfφτφのブラックボックスFφτφのことを、信頼性δδreliableのfφτφのブラックボックスFφτφという。なお、δは正の値であり、前述した或る確率に相当する。自己訂正器selfcorrector:自己訂正器CFxφとは、xφ∈Hφを入力とし、fφτφのブラックボックスFφτφを用いて計算を行い、j∈G∪⊥を出力する処理部を意味する。本形態では、計算装置261-φが自己訂正器CFxφに相当する。オールモスト自己訂正器almostselfcorrector:自己訂正器CFxφが、xφ∈Hφを入力とし、δreliableのfφτφのブラックボックスFφτφを用い、正しい値j=fφxφを出力する確率が、誤った値j≠fφxφを出力する確率よりも十分大きい場合を想定する。すなわち、Pr[j=fφxφ|j=CFxφ,j≠⊥]>Pr[j≠fφxφ|j=CFxφ,j≠⊥]Δ...を満たす場合を想定する。なお、Δは或る正の値0<Δ<1である。このような場合、自己訂正器CFxφはオールモスト自己訂正器であるという。例えば、或る正の値Δ’0<Δ’<1に対してPr[j=fφxφ|j=CFxφ]>1/3Δ’Pr[j=⊥|j=CFxφ]<1/3Pr[j≠fφxφかつj≠⊥|j=CFxφ]<1/3を満たす場合、自己訂正器CFxφはオールモスト自己訂正器である。Δ’の例はΔ’=1/12や1/3である。ローバスト自己訂正器robustselfcorrector:自己訂正器CFxφが、xφ∈Hを入力とし、δreliableのfφτφのブラックボックスFφτφを用い、正しい値j=fφxφ又はj=⊥を出力する確率が圧倒的である場合を想定する。すなわち、無視することができる誤差ξ0≦ξ<1に対してPr[j=fφxφまたはj=⊥|j=CFxφ]>1-ξ...を満たす場合を想定する。このような場合、自己訂正器CFxφはローバスト自己訂正器であるという。なお、無視することができる誤差ξの例は、セキュリティパラメータkの関数値ξkである。関数値ξkの例は、任意の多項式pkについて、十分大きいkに対して{ξkpk}が0に収束するものである。関数値ξkの具体例は、ξk=2kやξk=2√kなどである。オールモスト自己訂正器からローバスト自己訂正器を構成することができる。すなわち、同一のxに対してオールモスト自己訂正器を複数回実行させ、⊥を除いて最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。例えば、同一のxに対してオールモスト自己訂正器をOlog1/ξ回実行させ、最も頻度が高い出力値をjとすることで、ローバスト自己訂正器を構成できる。なお、Oはオー記法を表す。擬似自由pseudofreeな作用:群Gφ、自然数の集合Ωφ={0,...,Mφ}Mφは1以上の自然数、群Gφに値を持つ確率変数Xφ1,Xφ2の各実現値αφ∈Xφ,1αφ≠eφg,βφ∈Xφ2、及びaφ∈Ωφについて、αφa=βφとなる確率Pr[αφa=βφかつαφ≠eφg|aφ∈UΩ,αφ∈Xφ1,βφ∈Xφ2]...について、あらゆる可能なXφ1,Xφ2に関する上限値を、組Gφ,Ωφの疑似自由指標とよび、これをPGφ,Ωφと表すことにする。ある無視することができる関数ζkが存在して、PGφ,Ωφ<ζk...である場合、組Gφ,Ωφによって定義される演算は擬似自由な作用であるという。なお、αφaは、群Gφで定義された演算をαφに対してaφ回作用させることを意味する。無視することができる関数ζkの例は、任意の多項式pkについて、十分大きいkに対して{ζkpk}が0に収束するものである。関数ζkの具体例は、ζk=2kやζk=2√kなどである。例えば、セキュリティパラメータkに対し、式18の確率がO2k未満である場合、組Gφ,Ωφによって定義される演算は擬似自由な作用である。例えば、任意のαφ∈Gφでαφ≠eφgであるものについて、集合Ωφαφ={aφαφ|aφ∈Ωφ}の要素数|Ωφαφ|が2kを超える場合、組Gφ,Ωφによって定義される演算は擬似自由な作用といえる。なお、aφαφは、aφとαφに所定の演算を作用させた結果を表す。このような具体例は数多く存在する。例えば、群Gφが素数pを法とする剰余群Z/pZであり、素数pが2kのオーダーであり、集合Ωφ={0,...,p-2}であり、aφαφがαφa∈Z/pZであり、αφ≠eφgである場合、Ωφαφ={αφa|aφ=0,...,p-2}={eφg,αφ1,...,αφp2}となり、|Ωφαφ|=p-1である。素数pが2kのオーダーであるため、ある定数Cが存在して、kが十分大きければ|Ωφαφ|>C2kを満たす。ここで式18の確率はC12k未満であり、このような組Gφ,Ωφによって定義される演算は擬似自由な作用である。信頼性δγδγreliableの乱数化可能標本器:自然数aφが与えられるたびに、δreliableのfφτφのブラックボックスFφτφを用い、wφ∈Gφについて、確率変数Xφに従った標本xφ’に対応するwφaxφ’を返す乱数化可能標本器であって、wφaxφ’=wφaである確率がδγよりも大きいγは正定数、すなわち、Pr[wφaxφ’=wφa]>δγ...を満たすものを、信頼性δγの乱数化可能標本器という。本形態の入力情報提供部26104-φと第二出力情報計算部26202と第二計算部26108-φとの組は、wφ=fφxφについて、信頼性δγの乱数化可能標本器である。次に、これらの定義を用い、本形態の計算装置261-φでfφxφが得られる理由を説明する。本形態のステップS26110では同一の元に対する類に属するuφ’とvφとの組があるか、すなわち、同一の元に対する類に属するuφaとvφとの組があるかを判定している。本形態の入力情報提供部26104-φと第二出力情報計算部26202と第二計算部26108-φとの組は信頼性δγの乱数化可能標本器であるため式20、Tをk、δ、γから定まる一定値よりも大きい値とすれば、漸近的に大きい確率でuφaとvφとが同一の元Mφに対する類CLφMφに属することになるステップS26110でyesとなる場合が生じる。たとえば、T≧4/δγとすれば、uφaとvφとが同一の元に対する類に属するステップS26110でyesとなる確率は1/2よりも大きいことがMarkovの不等式によってわかる。本形態ではuφ=fφxφxφ,1及びvφ=fφxφaxφ2なのであるから、関数fφxφが元xφに対する単写関数であれば、ステップS26110でyesと判定される場合にはuφa=vφを満たし、xφ1a=xφ2が成立する。関数fφxφが元xφに対する単写関数でないとしてもfφxφが準同型関数なのであれば、ステップS26110でyesと判定される場合にxφ1a=xφ2が成立する。xφ1a=xφ2が成立する場合には、xφ1=xφ2=eφgである場合とxφ,1≠eφgである場合とがある。xφ1=xφ2=eφgである場合には、uφ=fφxφとなるのであるから、ステップS26114で出力されるuφは正しいfφxφとなる。一方、xφ,1≠eφgである場合には、uφ≠fφxφとなるのであるから、ステップS26114で出力されるuφは正しいfφxφではない。群Gφと自然数aφが属する集合Ωφとの組Gφ,Ωφによって定義される演算が擬似自由な作用であるか、疑似自由指標PGφ,ΩφについてT2PGφ,Ωφが漸近的に小さい場合、xφ1a=xφ2の場合にxφ,1≠eφgである確率式18は漸近的に小さい。したがって、xφ1a=xφ2の場合にxφ,1=eφgである確率は漸近的に大きい。よって、組Gφ,Ωφによって定義される演算が擬似自由な作用であるか、T2PGφ,Ωφが漸近的に小さい場合、uφaとvφとが同一の元Mφに対する類CLφMφに属する場合に誤ったfφxφが出力される確率は、uφaとvφとが同一の元Mφに対する類CLφMφに属する場合に正しいfφxφが出力される確率よりも十分小さい。この場合の計算装置261-φはオールモスト自己訂正器であるといえる式16参照。そのため、前述のように、計算装置261-φからローバスト自己訂正器を構成することが可能であり、圧倒的な確率で正しいfφxφを得ることができる。Gφ,Ωφで定義される演算が疑似自由な作用である場合には、uφaとvφとが同一の元Mφに対する類CLφMφに属する場合に誤ったfφxφが出力される確率も無視できる。この場合の計算装置261-φは、圧倒的な確率で正しいfφxφまたは⊥を出力する。なお、任意の定数ρに対してk0が定まり、このk0に対してk0<k’を満たす任意のk’に対する関数値ηk’がρ未満となる場合ηk’が漸近的に小さいという。k’の例はセキュリティパラメータkである。任意の定数ρに対してk0が定まり、このk0に対してk0<k’を満たす任意のk’に対する関数値1-ηk’がρ未満となる場合ηk’が漸近的に大きいという。aφをaφ/bφに置換すれば分かるように、上述の証明は第十二実施形態で述べたuφ’とvφ’とが互いに同一の元Mφに対する類CLφMφに属するのは、第一乱数化可能標本器がuφ=fφxφbを正しく計算しており、第二乱数化可能標本器がvφ=fφxφaを正しく計算しているxφ1及びxφ2が群Gφの単位元eφgである可能性が高いことの証明ともなる。《信頼性δγの乱数化可能標本器と安全性について》以下のような攻撃を想定する。ブラックボックスFφτφ又はその部分が意図的に不正なzφを出力する、又は、ブラックボックスFφτφから出力された値が不正なzφに改ざんされる。不正なzφに対応するwφaxφ’が乱数化可能標本器から出力される。不正なzφに対応するwφaxφ’は、自己訂正器CFxφにuφaとvφとが同一の元Mφに対する類CLφMφに属すると判定させるステップS26110でyesとなるにもかかわらず、自己訂正器CFxφが誤った値を出力する確率を増加させる。このような攻撃は、与えられた自然数aφに対して乱数化可能標本器から出力されたwφaxφ’の誤差の確率分布Da=wφaxφ’wφaが自然数aφに依存する場合に可能となる。例えば、第二計算部26108-φから出力されるvφがfφxφaxφ1aとなるような不正が行われた場合、xφ,1の値にかかわらず、必ずuφa=vφが成立してuφaとvφとが同一の元Mφに対する類CLφMφに属すると判定されることになる。よって、与えられた自然数aφに対して乱数化可能標本器から出力されたwφaxφ’の誤差の確率分布Da=wφaxφ’wφaが当該自然数aφに依存しないことが望ましい。あるいは、集合Ωφのいかなる元aφ∈∀Ωφについても、wφaxφ’の誤差の確率分布Da=wφaxφ’wφaと区別することができない群Gφに値を持つ確率分布Dが存在する確率分布Daと確率分布Dとが統計的に近似するstatisticallyclose乱数化可能標本器であることが望ましい。なお、確率分布Dは自然数aφに依存しない。確率分布Daと確率分布Dとを区別することができないとは、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができないことを意味し、例えば、無視することができるζ0≦ζ<1に対してΣg∈G|Pr[g∈D]-Pr[g∈Da]|<ζ...を満たすならば、多項式時間アルゴリズムによって確率分布Daと確率分布Dとを区別することができない。無視することができるζの例は、セキュリティパラメータkの関数値ζkである。関数値ζkの例は、任意の多項式pkについて、十分大きなkに対して{ζkpk}が0に収束するものである。関数値ζkの具体例は、ζk=2kやζk=2√kなどである。これらの点は自然数aφ及びbφを使用する第十二実施形態から第十七実施形態についても同様である。[第十二実施形態から第十八実施形態の変形例]第十二実施形態から第十八実施形態の変形例では、能力提供装置が常に正当な計算を行うことが保障されていないとしても、能力提供装置が或る確率より大きな確率でfφτφ1やfφτφ2を正しく計算するのであれば、計算装置φのそれぞれで得られる値uφb’vφa’は高い確率でfφxφとなる。よって、計算装置φのそれぞれは、認証処理を実行することなく能力提供装置に計算を実行させ、その計算結果を用いて正当な計算結果例えば暗号文の復号結果を得ることができる。本発明は上述の実施形態に限定されるものではない。例えば、確率変数Xφ1、Xφ2及びXφ3は、同じでも異なっていてもよい。乱数生成部のそれぞれが一様乱数を生成することにより、代理計算システムの安全性が最も高くなる。しかし、求められる安全性のレベルがそれほど高くない場合には、乱数生成部の少なくとも一部が、一様乱数ではない乱数を生成してもよい。演算効率上からは、上述の各実施形態のように、選択される自然数の乱数は、0以上KφH未満の自然数又は0以上2μk以下の自然数であることが望ましいが、その代わりにKφH以上の自然数や2μkよりも大きな自然数の乱数が選択されてもよい。ここでμはkの関数である。たとえば、μを群Hφの元のビット列としての長さとすることができる。計算装置が同一のaφ,bφに対応する第一入力情報τφ,1及び第二入力情報τφ2を能力提供装置に提供するたびに、能力提供装置の処理が複数回実行させてもよい。これにより、計算装置が第一入力情報τφ1及び第二入力情報τφ2を能力提供装置に一回提供するたびに、計算装置は第一出力情報zφ1や第二出力情報zφ2や第三出力情報zφ3を複数個得ることができる。これにより、計算装置と能力提供装置との間のやり取り回数や通信量を減らすことができる。計算装置が複数種類の第一入力情報τφ1及び第二入力情報τφ2を能力提供装置にまとめて提供し、対応する第一出力情報zφ1や第二出力情報zφ2や第三出力情報zφ3を複数個まとめて取得してもよい。これにより、計算装置と能力提供装置との間のやり取り回数を減らすことができる。計算装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。同様に、能力提供装置の各部間のデータのやり取りは直接行われてもよいし、図示していない記憶部を介して行われてもよい。各実施形態の第一計算部や第二計算部において得られたuφやvφが群Gφの元であるかを確認し、群Gφの元であった場合には上述した処理を続行し、uφ又はvφが群Gφの元でなかった場合には、計算をすることができなかった旨の情報、例えば記号⊥が出力されてもよい。その他、例えば、上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。上述の構成をコンピュータによって実現する場合、各装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体の例は非一時的なnontransitory記録媒体である。このような記録媒体の例は、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等である。このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD-ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASPApplicationServiceProvider型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるものコンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等を含むものとする。上述の実施形態では、コンピュータ上で所定のプログラムを実行させることにより、本装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。この出願は、日本特許出願番号2010239342,20115899,201188002,201177779に基づきその優先権を主張し、そのすべての内容は参照によってここに組み込まれるThisapplicationisbaseduponandclaimspriorityofJapanesePatentApplicationNo2010239342,20115899,201188002,201177779theentirecontentsofwhichareincorporatedbyreferenceherein"