"実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである、公開鍵暗号方式に対して適用するプロキシ再暗号化システムであって、前記鍵生成アルゴリズムに基づき生成された、復号権限委譲者であるユーザiの公開鍵、秘密鍵Siを予め保有し、RをZqn×gからランダムに選び、B=RSiを計算してとRを出力する委譲情報生成装置と、前記鍵生成アルゴリズムに基づき生成された、復号権限被委譲者であるユーザjの公開鍵、秘密鍵Sjを予め保有し、Rが入力され、C=SjRを計算してを出力する被委譲情報生成装置と、ととが入力され、T=C-Bを計算して、ユーザのインデックスの組に対応する変換鍵としてTを生成して保管する変換鍵生成装置と、ユーザiの公開鍵を用いて前記暗号化アルゴリズムにより暗号化された暗号文Ci=と、ユーザのインデックスの組と、が入力され、当該インデックスの組に対応する変換鍵Tを変換鍵生成装置から入手し、ci ́=ci-uiTを計算し、前記暗号化アルゴリズムに、公開鍵pk=、k=0g、及び0,1mから新たにランダムに選んだrを適用することにより、マスク暗号文Cj ́=を計算し、uj=uiuj ́、cj=ci ́cj ́を計算して、をユーザj向けの暗号文Cjとして出力する暗号文変換装置と、を備えるプロキシ再暗号化システム。実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである、公開鍵暗号方式に対して適用する委譲情報生成装置であって、前記鍵生成アルゴリズムに基づき生成された、復号権限委譲者であるユーザiの公開鍵、秘密鍵Siを予め保有し、RをZqn×gからランダムに選び、B=RSiを計算してとRを出力する委譲情報生成装置。実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである、公開鍵暗号方式に対して適用する被委譲情報生成装置あって、前記鍵生成アルゴリズムに基づき生成された、復号権限被委譲者であるユーザjの公開鍵、秘密鍵Sjを予め保有し、Rが入力され、C=SjRを計算してを出力する被委譲情報生成装置。実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである、公開鍵暗号方式に対して適用する変換鍵生成装置であって、前記鍵生成アルゴリズムに基づき、復号権限委譲者であるユーザiの公開鍵と秘密鍵Si、復号権限被委譲者であるユーザjの公開鍵と秘密鍵Sj、Zqn×gからランダムに選ばれたR、及びB=RSi、C=SjRの計算から得られた、ととが入力され、T=C-Bを計算して、ユーザのインデックスの組に対応する変換鍵としてTを生成して保管する変換鍵生成装置。実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである、公開鍵暗号方式に対して適用する暗号文変換装置であって、ユーザiの公開鍵を用いて前記暗号化アルゴリズムにより暗号化された暗号文Ci=と、ユーザのインデックスの組と、が入力され、当該インデックスの組に対応する変換鍵Tを変換鍵生成装置から入手し、ci ́=ci-uiTを計算し、前記暗号化アルゴリズムに、公開鍵pk=、k=0g、及び0,1mから新たにランダムに選んだrを適用することにより、マスク暗号文Cj ́=を計算し、uj=uiuj ́、cj=ci ́cj ́を計算して、をユーザj向けの暗号文Cjとして出力する暗号文変換装置。実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである、公開鍵暗号方式に対して適用するプロキシ再暗号化方法であって、前記鍵生成アルゴリズムに基づき生成された、復号権限委譲者であるユーザiの公開鍵、秘密鍵Siを予め保有し、RをZqn×gからランダムに選び、B=RSiを計算してとRを出力する委譲情報生成ステップと、前記鍵生成アルゴリズムに基づき生成された、復号権限被委譲者であるユーザjの公開鍵、秘密鍵Sjを予め保有し、Rが入力され、C=SjRを計算してを出力する被委譲情報生成ステップと、ととが入力され、T=C-Bを計算して、ユーザのインデックスの組に対応する変換鍵としてTを生成して変換鍵生成装置に保管する変換鍵生成ステップと、ユーザiの公開鍵を用いて前記暗号化アルゴリズムにより暗号化された暗号文Ci=と、ユーザのインデックスの組と、が入力され、当該インデックスの組に対応する変換鍵Tを変換鍵生成装置から入手し、ci ́=ci-uiTを計算し、前記暗号化アルゴリズムに、公開鍵pk=、k=0g、及び0,1mから新たにランダムに選んだrを適用することにより、マスク暗号文Cj ́=を計算し、uj=uiuj ́、cj=ci ́cj ́を計算して、をユーザj向けの暗号文Cjとして出力する暗号文変換ステップと、を実行するプロキシ再暗号化方法。請求項1に記載のプロキシ再暗号化システム、請求項2に記載の委譲情報生成装置、請求項3に記載の被委譲情報生成装置、請求項4に記載の変換鍵生成装置、又は請求項5に記載の暗号文変換装置としてコンピュータを機能させるためのプログラム。格子問題に基づく公開鍵暗号方式に適用可能な非特許文献4のプロキシ再暗号化方式は、変換前の暗号文と変換後の暗号文を監視すると、変換鍵が漏洩するという問題がある。本発明の目的は、格子問題に基づく公開鍵暗号方式において、プロキシ再暗号化処理を行う際に変換鍵が漏洩しない安全性の高いプロキシ再暗号化システム、委譲情報生成装置、被委譲情報生成装置、変換鍵生成装置、暗号文変換装置、プロキシ再暗号化方法、及びそれらのプログラムを提供することにある。本発明のプロキシ暗号化システムは、以下のような公開鍵暗号方式に適用される。当該公開鍵暗号方式は、実数xについて、一番近い整数に丸める操作をと表記し、平均0、分散σ2のガウス分布をNと表記するとき、自然数m、q、実数α∈における分布χmqαが、ガウス分布N上のサンプルxについて、x ́=qx、とし、xi∈Zq=0,1,,q-1をxi=x ́ ́modqi=1mとして得られるベクトルvx=∈Zqmであると定義され、セキュリティパラメータがnmqαgであるとき、鍵生成アルゴリズムが、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムであり、暗号化アルゴリズムが、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムであり、復号アルゴリズムが、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである公開鍵暗号方式である。本発明のプロキシ暗号化システムは、このような公開鍵暗号方式に対して適用するプロキシ再暗号化システムであり、委譲情報生成装置、被委譲情報生成装置、変換鍵生成装置、及び暗号文変換装置を備える。委譲情報生成装置は、前記鍵生成アルゴリズムに基づき生成された、復号権限委譲者であるユーザiの公開鍵、秘密鍵Siを予め保有し、RをZqn×gからランダムに選び、B=RSiを計算してとRを出力する。被委譲情報生成装置は、前記鍵生成アルゴリズムに基づき生成された、復号権限被委譲者であるユーザjの公開鍵、秘密鍵Sjを予め保有し、Rが入力され、C=SjRを計算してを出力する。変換鍵生成装置は、ととが入力され、T=C-Bを計算して、ユーザのインデックスの組に対応する変換鍵としてTを生成して保管する。暗号文変換装置は、ユーザiの公開鍵を用いて前記暗号化アルゴリズムにより暗号化された暗号文Ci=と、ユーザのインデックスの組と、が入力され、当該インデックスの組に対応する変換鍵Tを変換鍵生成装置から入手し、ci ́=ci-uiTを計算し、前記暗号化アルゴリズムに、公開鍵pk=、k=0g、及び0,1mから新たにランダムに選んだrを適用することにより、マスク暗号文Cj ́=を計算し、uj=uiuj ́、cj=ci ́cj ́を計算して、をユーザj向けの暗号文Cjとして出力する。本発明によれば、格子問題に基づく公開鍵暗号方式において、従来技術の暗号文変換処理に加えて、マスク用暗号文の作成及びマスク処理を行うことで、変換鍵の漏洩を防ぐことができるため、変換鍵が漏洩しない安全性の高いプロキシ再暗号化システム、委譲情報生成装置、被委譲情報生成装置、変換鍵生成装置、暗号文変換装置、プロキシ再暗号化方法、及びそれらのプログラムを提供することができる。本発明のプロキシ再暗号化システム100は、格子問題に基づく公開鍵暗号方式に暗号文変換機能を付加するものである。本発明を適用する格子問題に基づく公開鍵暗号方式は、Regev暗号非特許文献2の拡張である非特許文献3の方式である。そのため、本発明のプロキシ再暗号化システム100を適用する当該公開鍵暗号方式に係る定義アルゴリズムをまず説明する。実数xについて、一番近い整数に丸める操作をと定義し、平均0、分散σ2のガウス分布をNと表記する。そして、自然数m、q、実数α∈について、分布χmqαを定義する。具体的には、ガウス分布Nからサンプルxをとって、x ́=qxを計算し、とし、xi∈Zq=0,1,,q-1を、xi=x ́ ́modqi=1mにより計算して得られたベクトルvx=∈Zqmとして、これを分布χmqαとして定義する。当該公開鍵暗号方式は、このような定義の下、次の3つのアルゴリズムから構成される。なお、セキュリティパラメータはnmqαgであるとする。鍵生成アルゴリズムは、AをZqm×nからランダムに選び、SをZqn×gからランダムに選び、vx1、vx2、、vxgを前記分布χmqαに従い選んでX=vx1vx2vxg∈Zqm×gとして、P=ASXを計算し、公開鍵をpk=とし、秘密鍵をsk=Sとして出力する確率的アルゴリズムである。暗号化アルゴリズムは、公開鍵pkと平文k∈0,1gを入力にとり、rを0,1mからランダムに選び、u=rAを計算し、v=rPを計算し、を計算し、c=vtを計算して、暗号文としてC=を出力する確率的アルゴリズムである。復号アルゴリズムは、秘密鍵skと暗号文C=を入力にとり、d=c-uSを計算し、平文kをにより計算して出力するアルゴリズムである。本発明のプロキシ再暗号化システム100は、以上のような定義アルゴリズムに基づく公開鍵暗号方式に対して適用するプロキシ再暗号化システムである。図2にプロキシ再暗号化システム100の機能構成例を、図3にその処理フロー例をそれぞれ示す。プロキシ再暗号化システム100は、委譲情報生成装置110、被委譲情報生成装置120、変換鍵生成装置130、及び暗号文変換装置140を備える。委譲情報生成装置110は、一般には復号権限委譲者であるユーザiのところに設けられ、前記鍵生成アルゴリズムに基づき生成されたユーザiの公開鍵、秘密鍵Siを予め保有し、RをZqn×gからランダムに選び、B=RSiを計算してとRを出力するS1。被委譲情報生成装置120は、一般には復号権限被委譲者であるユーザjのところに設けられ、前記鍵生成アルゴリズムに基づき生成されたユーザjの公開鍵、秘密鍵Sjを予め保有し、委譲情報生成装置110で生成されたRが入力され、C=SjRを計算してを出力するS2。変換鍵生成装置130と暗号文変換装置140はプロキシ装置を構成し、任意の場所に設けられる。変換鍵生成装置130は、委譲情報生成装置110で生成されたと被委譲情報生成装置130で生成されたとが入力され、T=C-Bを計算して、ユーザのインデックスの組に対応する変換鍵としてTを生成し保管するS3。なお、この変換鍵は、ユーザiの公開鍵による暗号文をユーザjの秘密鍵で復号できる暗号文に変換することができるだけでなく、その逆、すなわちユーザjの公開鍵による暗号文をユーザiの秘密鍵で復号できる暗号文に変換することも可能である。暗号文変換装置140は、ユーザiの公開鍵を用いて前記暗号化アルゴリズムにより暗号化された暗号文Ci=と、復号権限を委譲するユーザのインデックスiと復号権限を委譲されるユーザのインデックスjとの組と、が入力され、まず、当該インデックスの組に対応する変換鍵Tを変換鍵生成装置から入手し、ci ́=ci-uiTを計算する。続いて、前記暗号化アルゴリズムに、公開鍵pk=、k=0g、及び0,1mから新たにランダムに選んだrを適用することにより、マスク暗号文Cj ́=を計算する。そして、uj=uiuj ́、cj=ci ́cj ́を計算してマスク処理を行った上で、をユーザj向けの暗号文Cjとして出力するS4。このように、マスク用暗号文の作成及びマスク処理を行うことで、変換鍵の漏洩を防ぐことができる。以上のように、本発明のプロキシ再暗号化システム100によれば、格子問題に基づく公開鍵暗号方式において、変換鍵が漏洩しない安全性の高いプロキシ再暗号化処理を実現することができる。本発明のプロキシ再暗号化システム及びプロキシ再暗号化方法における各処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本発明の訓練データ獲得装置の各機能は必要に応じ、併合分割しても構わない。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。本発明のプロキシ再暗号化システムを構成する各装置をコンピュータによって実現する場合、各装置が担う機能の処理内容はプログラムによって記述される。そのプログラムは、例えば、ハードディスク装置に格納されており、実行時には必要なプログラムやデータがRAMに読み込まれて、そのプログラムがCPUにより実行されることにより、コンピュータ上で各処理内容が実現される。図4に各装置のハードウェア構成例を示す。主な機能部として記憶部1と演算処理部2が設けられる。記憶部1は、ハードディスクやメモリなどの記憶装置からなり、演算処理部2で実行するプログラム10が記憶されるとともに、公開鍵や秘密鍵や生成した変換鍵などが記憶される。プログラム10は、ハードウェアを、委譲情報生成装置110、被委譲情報生成装置120、変換鍵生成装置130、又は暗号文変換装置140として機能させるのに応じ、委譲情報生成機能、被委譲情報生成機能、変換鍵生成機能、又は暗号文変換機能機能の処理内容がそれぞれ記述されたものである。演算処理部2は、CPUなどのマイクロプロセッサとその周辺回路からなり、記憶部1に格納されているプログラム10を読み出して実行し、ハードウェアとプログラムとを協働させることにより、各装置が有する機能が具体的に実現される。入出力IF部3、通信IF部4、操作入力部5及び画面表示部6は、他の装置での生成データや暗号文の入力、生成したデータや変換した暗号文の出力を始め、各種データやプログラムを入出力する機能を有する。入出力IF部3は、専用のデータ入出力回路からなり、CDやHDD、DVD、さらにはメモリカードや外部ディスクなどの記録媒体との間で、演算処理部2からの指示に応じて、各種データやプログラムの入出力を行う。通信IF部4は、専用のデータ入出力回路からなり、LANなどの通信回線を介して接続されたサーバなどの外部装置との間で、演算処理部2からの指示に応じて、各種データやプログラムの入出力を行う。操作入力部5は、キーボードやマウスなどの操作入力装置からなり、オペレータによる操作があったときに、その操作を検出して演算処理部2へ出力する。画面表示部6は、LDCやPCPなどの画面表示装置からなり、演算処理部2からの指示に応じて各種データや操作画面を表示する。"