説明

情報処理装置、署名生成装置、情報処理方法、署名生成方法、及びプログラム

【課題】高い安全性を有する効率的な公開鍵認証方式を実現すること。
【解決手段】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成し、前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供し、k通り(k≧3)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供する情報処理装置が提供される。但し、前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される。


Notice: Undefined index: DEJ in /mnt/www/gzt_disp.php on line 298

【特許請求の範囲】
【請求項1】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するメッセージ生成部と、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するメッセージ提供部と、
k通り(k≧3)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供する回答提供部と、
を備え、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
情報処理装置。
【請求項2】
前記メッセージ生成部は、N回分(N≧2)のメッセージを生成し、
前記メッセージ提供部は、N回分の前記メッセージを1回の対話で前記検証者に提供し、
前記回答提供部は、N回分の前記メッセージのそれぞれについて前記検証者が選択した検証パターンに対応するN回分の前記回答情報を1回の対話で前記検証者に提供する、
請求項1に記載の情報処理装置。
【請求項3】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する情報保持部と、
前記多次多変数多項式の組F及びベクトルs∈Kに基づいて生成されたメッセージを取得するメッセージ取得部と、
前記メッセージを提供した証明者に対し、k通り(k≧3)の検証パターンの中からランダムに選択した1つの検証パターンの情報を提供するパターン情報提供部と、
前記選択した検証パターンに対応する回答情報を前記証明者から取得する回答取得部と、
前記メッセージ、前記多次多変数多項式の組F、前記ベクトルy、及び前記回答情報に基づいて前記証明者が前記ベクトルsを保持しているか否かを検証する検証部と、
を備え、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
情報処理装置。
【請求項4】
前記メッセージ取得部は、N回分(N≧2)の前記メッセージを1回の対話で取得し、
前記パターン情報提供部は、N回分の前記メッセージのそれぞれについて検証パターンを選択し、選択したN回分の検証パターンの情報を1回の対話で前記証明者に提供し、
前記回答取得部は、前記選択したN回分の検証パターンに対応するN回分の前記回答情報を1回の対話で前記証明者から取得し、
前記検証部は、N回分の前記メッセージの全てについて検証が成功した場合に、前記証明者が前記ベクトルsを保持していると判定する、
請求項3に記載の情報処理装置。
【請求項5】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するメッセージ生成部と、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するメッセージ提供部と、
前記検証者がランダムに選択した第1の情報及び前記メッセージを生成する際に得られる第2の情報を用いて第3の情報を生成する中間情報生成部と、
前記検証者に前記第3の情報を提供する中間情報提供部と、
k通り(k≧2)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供する回答提供部と、
を備え、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵、前記第1の情報、前記第3の情報、前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して線形となるように設定される、
情報処理装置。
【請求項6】
前記メッセージ生成部は、N回分(N≧2)のメッセージを生成し、
前記メッセージ提供部は、N回分の前記メッセージを1回の対話で前記検証者に提供し、
前記中間情報生成部は、N回分の前記メッセージのそれぞれについて前記検証者が選択した前記第1の情報及び前記メッセージを生成する際に得られるN回分の前記第2の情報を用いてN回分の前記第3の情報を生成し、
前記中間情報提供部は、N回分の前記第3の情報を1回の対話で検証者に提供し、
前記回答提供部は、N回分の前記メッセージのそれぞれについて前記検証者が選択した検証パターンに対応するN回分の前記回答情報を1回の対話で前記検証者に提供する、
請求項5に記載の情報処理装置。
【請求項7】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する情報保持部と、
前記多次多変数多項式の組F及びベクトルs∈Kに基づいて生成されたメッセージを取得するメッセージ取得部と、
前記メッセージを提供した証明者に対し、ランダムに選択した第1の情報を提供する情報提供部と、
前記第1の情報及び前記メッセージを生成する際に得られる第2の情報を用いて前記証明者が生成した第3の情報を取得する中間情報取得部と、
k通り(k≧3)の検証パターンの中からランダムに選択した1つの検証パターンの情報を前記証明者に提供するパターン情報提供部と、
前記選択した検証パターンに対応する回答情報を前記証明者から取得する回答取得部と、
前記メッセージ、前記第1の情報、前記第3の情報、前記多次多変数多項式の組F、及び前記回答情報に基づいて前記証明者が前記ベクトルsを保持しているか否かを検証する検証部と、
を備え、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵、前記第1の情報、前記第3の情報、前記回答情報を利用して当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して線形となるように設定される、
情報処理装置。
【請求項8】
前記メッセージ取得部は、N回分(N≧2)の前記メッセージを1回の対話で取得し、
前記情報提供部は、N回分の前記メッセージのそれぞれについて前記第1の情報をランダムに選択し、選択したN回分の前記第1の情報を1回の対話で前記証明者に提供し、
前記中間情報取得部は、N回分の前記第1の情報及びN回分の前記メッセージを生成する際に得られるN回分の前記第2の情報を用いて前記証明者が生成したN回分の前記第3の情報を取得し、
前記パターン情報提供部は、N回分の前記メッセージのそれぞれについて検証パターンを選択し、選択したN回分の検証パターンの情報を1回の対話で前記証明者に提供し、
前記回答取得部は、前記選択したN回分の検証パターンに対応するN回分の前記回答情報を1回の対話で前記証明者から取得し、
前記検証部は、N回分の前記メッセージの全てについて検証が成功した場合に、前記証明者が前記ベクトルsを保持していると判定する、
請求項7に記載の情報処理装置。
【請求項9】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するメッセージ生成部と、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するメッセージ提供部と、
文書M及び前記メッセージを一方向性関数に入力して得られる数値に基づき、k通り(k≧3)の検証パターンの中から1つの検証パターンを選択するパターン選択部と、
選択した前記検証パターンに対応する回答情報を生成する回答生成部と、
署名として、前記メッセージ及び前記回答情報を前記検証者に提供する署名提供部と、
を備え、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
署名生成装置。
【請求項10】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するステップと、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するステップと、
k通り(k≧3)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供するステップと、
を含み、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
情報処理方法。
【請求項11】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する情報処理装置が、
前記多次多変数多項式の組F及びベクトルs∈Kに基づいて生成されたメッセージを取得するステップと、
前記メッセージを提供した証明者に対し、k通り(k≧3)の検証パターンの中からランダムに選択した1つの検証パターンの情報を提供するステップと、
前記選択した検証パターンに対応する回答情報を前記証明者から取得するステップと、
前記メッセージ、前記多次多変数多項式の組F、前記ベクトルy、及び前記回答情報に基づいて前記証明者が前記ベクトルsを保持しているか否かを検証するステップと、
を含み、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
情報処理方法。
【請求項12】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するステップと、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するステップと、
前記検証者がランダムに選択した第1の情報及び前記メッセージを生成する際に得られる第2の情報を用いて第3の情報を生成するステップと、
前記検証者に前記第3の情報を提供するステップと、
k通り(k≧2)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供するステップと、
を含み、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵、前記第1の情報、前記第3の情報、前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して線形となるように設定される、
情報処理方法。
【請求項13】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する情報処理装置が、
前記多次多変数多項式の組F及びベクトルs∈Kに基づいて生成されたメッセージを取得するステップと、
前記メッセージを提供した証明者に対し、ランダムに選択した第1の情報を提供するステップと、
前記第1の情報及び前記メッセージを生成する際に得られる第2の情報を用いて前記証明者が生成した第3の情報を取得するステップと、
k通り(k≧3)の検証パターンの中からランダムに選択した1つの検証パターンの情報を前記証明者に提供するステップと、
前記選択した検証パターンに対応する回答情報を前記証明者から取得するステップと、
前記メッセージ、前記第1の情報、前記第3の情報、前記多次多変数多項式の組F、及び前記回答情報に基づいて前記証明者が前記ベクトルsを保持しているか否かを検証するステップと、
を含み、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵、前記第1の情報、前記第3の情報、前記回答情報を利用して当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して線形となるように設定される、
情報処理方法。
【請求項14】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するステップと、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するステップと、
文書M及び前記メッセージを一方向性関数に入力して得られる数値に基づき、k通り(k≧3)の検証パターンの中から1つの検証パターンを選択するステップと、
選択した前記検証パターンに対応する回答情報を生成するステップと、
署名として、前記メッセージ及び前記回答情報を前記検証者に提供するステップと、
を含み、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
署名生成方法。
【請求項15】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するメッセージ生成機能と、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するメッセージ提供機能と、
k通り(k≧3)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供する回答提供機能と、
をコンピュータに実現させるためのプログラムであり、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
プログラム。
【請求項16】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する情報保持機能と、
前記多次多変数多項式の組F及びベクトルs∈Kに基づいて生成されたメッセージを取得するメッセージ取得機能と、
前記メッセージを提供した証明者に対し、k通り(k≧3)の検証パターンの中からランダムに選択した1つの検証パターンの情報を提供するパターン情報提供機能と、
前記選択した検証パターンに対応する回答情報を前記証明者から取得する回答取得機能と、
前記メッセージ、前記多次多変数多項式の組F、前記ベクトルy、及び前記回答情報に基づいて前記証明者が前記ベクトルsを保持しているか否かを検証する検証機能と、
をコンピュータに実現させるためのプログラムであり、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
プログラム。
【請求項17】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するメッセージ生成機能と、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するメッセージ提供機能と、
前記検証者がランダムに選択した第1の情報及び前記メッセージを生成する際に得られる第2の情報を用いて第3の情報を生成する中間情報生成機能と、
前記検証者に前記第3の情報を提供する中間情報提供機能と、
k通り(k≧2)の検証パターンの中から前記検証者が選択した検証パターンに対応する回答情報を前記検証者に提供する回答提供機能と、
をコンピュータに実現させるためのプログラムであり、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵、前記第1の情報、前記第3の情報、前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して線形となるように設定される、
プログラム。
【請求項18】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する情報保持機能と、
前記多次多変数多項式の組F及びベクトルs∈Kに基づいて生成されたメッセージを取得するメッセージ取得機能と、
前記メッセージを提供した証明者に対し、ランダムに選択した第1の情報を提供する情報提供機能と、
前記第1の情報及び前記メッセージを生成する際に得られる第2の情報を用いて前記証明者が生成した第3の情報を取得する中間情報取得機能と、
k通り(k≧3)の検証パターンの中からランダムに選択した1つの検証パターンの情報を前記証明者に提供するパターン情報提供機能と、
前記選択した検証パターンに対応する回答情報を前記証明者から取得する回答取得機能と、
前記メッセージ、前記第1の情報、前記第3の情報、前記多次多変数多項式の組F、及び前記回答情報に基づいて前記証明者が前記ベクトルsを保持しているか否かを検証する検証機能と、
をコンピュータに実現させるためのプログラムであり、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵、前記第1の情報、前記第3の情報、前記回答情報を利用して当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して線形となるように設定される、
プログラム。
【請求項19】
環K上で定義される多次多変数多項式の組F=(f,…,f)及びベクトルs∈Kに基づいてメッセージを生成するメッセージ生成機能と、
前記多次多変数多項式の組F及びベクトルy=(y,…,y)=(f(s),…,f(s))を保持する検証者に前記メッセージを提供するメッセージ提供機能と、
文書M及び前記メッセージを一方向性関数に入力して得られる数値に基づき、k通り(k≧3)の検証パターンの中から1つの検証パターンを選択するパターン選択機能と、
選択した前記検証パターンに対応する回答情報を生成する回答生成機能と、
署名として、前記メッセージ及び前記回答情報を前記検証者に提供する署名提供機能と、
をコンピュータに実現させるためのプログラムであり、
前記ベクトルsは秘密鍵であり、
前記多次多変数多項式の組F及び前記ベクトルyは公開鍵であり、
前記メッセージは、前記公開鍵及び前記回答情報を利用して、当該回答情報に対応する検証パターン用に予め用意された演算を実行することで得られる情報であり、
前記多次多変数多項式の組Fは、m本の3次多項式f,…,fで構成され、G(x,x)+G(x,x)=F(x+x)−F(x)−F(x)で定義されるG(x,x)及びG(x,x)がそれぞれx及びxに関して加法準同型となるように設定される、
プログラム。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate

【図16】
image rotate

【図17】
image rotate

【図18】
image rotate

【図19】
image rotate

【図20】
image rotate

【図21】
image rotate

【図22】
image rotate

【図23】
image rotate

【図24】
image rotate

【図25】
image rotate

【図26】
image rotate

【図27】
image rotate

【図28】
image rotate

【図29】
image rotate