(57)【要約】【課題】署名または認証に関する処理の高速化を図ることが可能な、情報処理装置、情報処理方法、およびプログラムを提供する。【解決手段】繰り返し処理が含まれる署名または認証に関する処理における繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、外部装置における処理結果を用いて、署名または認証に関する処理を行う処理部と、を備える、情報処理装置が提供される。【選択図】図１７
2014056022.tif 000002
【特許請求の範囲】
【請求項１】
繰り返し処理が含まれる署名または認証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、
前記外部装置における処理結果を用いて、前記署名または認証に関する処理を行う処理部と、
を備える、情報処理装置。
【請求項２】
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、複数の外部装置に分散して行わせる、請求項１に記載の情報処理装置。
【請求項３】
前記分散制御部は、
前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置の数で等分に分割し、
分割された前記繰り返し処理を、複数の前記外部装置に行わせる、請求項２に記載の情報処理装置。
【請求項４】
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置の数分不等分に分割し、
分割された前記繰り返し処理を、複数の前記外部装置に行わせる、請求項２に記載の情報処理装置。
【請求項５】
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、１または２以上の外部装置、および前記処理部に分散して行わせる、請求項１に記載の情報処理装置。
【請求項６】
前記分散制御部は、
前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部の合計数で等分に分割し、
分割された前記繰り返し処理を、前記外部装置および前記処理部に行わせる、請求項５に記載の情報処理装置。
【請求項７】
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部の合計数分不等分に分割し、
分割された前記繰り返し処理を、前記外部装置および前記処理部に行わせる、請求項５に記載の情報処理装置。
【請求項８】
繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証する処理部と、
を備える、情報処理装置。
【請求項９】
前記分散制御部は、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、複数の外部装置に分散して行わせる、請求項８に記載の情報処理装置。
【請求項１０】
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置の数で等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、複数の前記外部装置に行わせる、請求項９に記載の情報処理装置。
【請求項１１】
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置の数分不等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、複数の前記外部装置に行わせる、請求項９に記載の情報処理装置。
【請求項１２】
前記分散制御部は、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２以上の外部装置、および前記処理部に分散して行わせる、請求項８に記載の情報処理装置。
【請求項１３】
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置および前記処理部の合計数で等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部に行わせる、請求項１２に記載の情報処理装置。
【請求項１４】
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置および前記処理部の合計数分不等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部に行わせる、請求項１２に記載の情報処理装置。
【請求項１５】
前記処理部は、前記署名データまたは前記証明データの検証結果を前記外部装置に対して送信させる、請求項８に記載の情報処理装置。
【請求項１６】
署名データまたは証明データを検証するための繰り返し処理を含む検証に関する処理における、前記繰り返し処理中の処理を分割し、分割された処理を、１または２の外部装置に分散して行わせる分散制御部と、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証する処理部と、
を備える、情報処理装置。
【請求項１７】
繰り返し処理が含まれる署名または認証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップと、
前記外部装置における処理結果を用いて、前記署名または認証に関する処理を行うステップと、
を有する、情報処理方法。
【請求項１８】
繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップと、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証するステップと、
を有する、情報処理方法。
【請求項１９】
繰り返し処理が含まれる署名または認証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップ、
前記外部装置における処理結果を用いて、前記署名または認証に関する処理を行うステップ、
をコンピュータに実行させるためのプログラム。
【請求項２０】
繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップ、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証するステップ、
をコンピュータに実行させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
署名方式や認証方式は、様々な状況において利用されている。
【０００３】
また、様々なアルゴリズムを用いた署名方式や認証方式が開発されている。ＭＱ（Multivariate  Quadratic）署名方式やＭＱ認証方式（ＭＱ問題を基にした方式）に係る技術としては、例えば下記の非特許文献１に記載の技術が挙げられ、ＭＣ（Multivariate  Cubic）署名方式やＭＣ認証方式（ＭＣ問題を基にした方式）に係る技術としては、例えば下記の非特許文献２に記載の技術が挙げられる。また、ＳＤ（Syndrome  Decoding）署名方式やＳＤ認証方式（ＳＤ問題を基にした方式）に係る技術としては、例えば下記の非特許文献３に記載の技術が挙げられ、ＣＬＥ（Constrained  Linear  Equations）署名方式やＣＬＥ認証方式（ＣＬＥ問題を基にした方式）に係る技術としては、例えば下記の非特許文献４に記載の技術が挙げられる。そして、ＰＰ（Permuted  Perceptrons）署名方式やＰＰ認証方式（ＰＰ問題を基にした方式）に係る技術としては、例えば下記の非特許文献５に記載の技術が挙げられる。
【先行技術文献】
【非特許文献】
【０００４】
【非特許文献１】Koichi  Sakumoto,  Taizo  Shirai,  Harunaga  Hiwatari:  Public-Key  Identification  Schemes  Based  on  Multivariate  Quadratic  Polynomials,  CRYPTO  2011
【非特許文献２】Koichi  Sakumoto:  Public-Key  Identification  Schemes  Based  on  Multivariate  Cubic  Polynomials,  PKC  2012
【非特許文献３】Jacques  Stern:  A  New  Identification  Scheme  Based  on  Syndrome  Decoding,  CRYPTO  1993
【非特許文献４】Jacques  Stern:  Designing  Identification  Schemes  with  Keys  of  Short  Size,  CRYPTO  1994
【非特許文献５】David  Pointcheval,  Guillaume  Poupard:  A  New  NP-Complete  Problem  and  Public-key  Identification,  Des.  Codes  Cryptography  2003
【発明の概要】
【発明が解決しようとする課題】
【０００５】
例えば非特許文献１〜非特許文献５に記載の技術を用いた署名方式や認証方式など、利用されている署名方式や認証方式では、セキュリティを高めるために、署名または認証に関する処理（認証処理）において多くの計算を必要とする。
【０００６】
一方、署名方式や認証方式は様々な状況において利用されており、例えば、センサーネットワークにおけるセンサーノードのような計算リソースの小さなデバイスにおいてもより高速に実行できることが望まれている。
【０００７】
本開示では、署名または認証に関する処理の高速化を図ることが可能な、新規かつ改良された情報処理装置、情報処理方法、およびプログラムを提案する。
【課題を解決するための手段】
【０００８】
本開示によれば、繰り返し処理が含まれる署名または認証に関する処理における上記繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、上記外部装置における処理結果を用いて、上記署名または認証に関する処理を行う処理部と、を備える、情報処理装置が提供される。
【０００９】
また、本開示によれば、繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された上記署名データまたは上記証明データに対する上記検証に関する処理における上記繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、上記外部装置における処理結果を用いて、上記署名データまたは上記証明データを検証する処理部と、を備える、情報処理装置が提供される。
【００１０】
また、本開示によれば、署名データまたは証明データを検証するための繰り返し処理を含む検証に関する処理における、上記繰り返し処理中の処理を分割し、分割された処理を、１または２の外部装置に分散して行わせる分散制御部と、上記外部装置における処理結果を用いて、上記署名データまたは上記証明データを検証する処理部と、を備える、情報処理装置が提供される。
【００１１】
本開示によれば、繰り返し処理が含まれる署名または認証に関する処理における上記繰り返し処理を、１または２の外部装置に分散して行わせるステップと、上記外部装置における処理結果を用いて、上記署名または認証に関する処理を行うステップと、を有する、情報処理方法が提供される。
【００１２】
また、本開示によれば、繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された上記署名データまたは上記証明データに対する上記検証に関する処理における上記繰り返し処理を、１または２の外部装置に分散して行わせるステップと、上記外部装置における処理結果を用いて、上記署名データまたは上記証明データを検証するステップと、を有する、情報処理方法が提供される。
【００１３】
また、本開示によれば、繰り返し処理が含まれる署名または認証に関する処理における上記繰り返し処理を、１または２の外部装置に分散して行わせるステップ、上記外部装置における処理結果を用いて、上記署名または認証に関する処理を行うステップ、をコンピュータに実行させるためのプログラムが提供される。
【００１４】
また、本開示によれば、繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された上記署名データまたは上記証明データに対する上記検証に関する処理における上記繰り返し処理を、１または２の外部装置に分散して行わせるステップ、上記外部装置における処理結果を用いて、上記署名データまたは上記証明データを検証するステップ、をコンピュータに実行させるためのプログラムが提供される。
【発明の効果】
【００１５】
本開示によれば、署名または認証に関する処理の高速化を図ることができる。
【図面の簡単な説明】
【００１６】
【図１】本実施形態に係る情報処理方法の概要を説明するための説明図である。
【図２】本実施形態に係る情報処理方法の概要を説明するための説明図である。
【図３】本実施形態に係る情報処理方法の概要を説明するための説明図である。
【図４】本実施形態に係る情報処理方法の概要を説明するための説明図である。
【図５】本実施形態に係る情報処理方法の概要を説明するための説明図である。
【図６】本実施形態に係る第１の情報処理装置における分散制御処理の第１の例を示す説明図である。
【図７】署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理の一例を示すシーケンス図である。
【図８】本実施形態に係る第１の情報処理装置における第１の例に係る分散制御処理の他の例を示す説明図である。
【図９】本実施形態に係る第１の情報処理装置における第１の例に係る分散制御処理の他の例を示す説明図である。
【図１０】本実施形態に係る第１の情報処理装置における分散制御処理の第２の例を示す説明図である。
【図１１】本実施形態に係る第１の情報処理装置における第２の例に係る分散制御処理の他の例を示す説明図である。
【図１２】本実施形態に係る第１の情報処理装置における分散制御処理の第３の例を説明するための説明図である。
【図１３】本実施形態に係る第１の情報処理装置における分散制御処理の第３の例を示すシーケンス図である。
【図１４】検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理の一例を示すシーケンス図である。
【図１５】本実施形態に係る第２の情報処理装置における分散制御処理の第３の例を説明するための説明図である。
【図１６】検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理の一例を示すシーケンス図である。
【図１７】本実施形態に係る第１の情報処理装置の構成の一例を示すブロック図である。
【図１８】本実施形態に係る第１の情報処理装置のハードウェア構成の一例を示す説明図である。
【図１９】本実施形態に係る第２の情報処理装置の構成の一例を示すブロック図である。
【発明を実施するための形態】
【００１７】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００１８】
また、以下では、下記に示す順序で説明を行う。
１．本実施形態に係る情報処理方法
２．本実施形態に係る情報処理装置
３．本実施形態に係るプログラム
【００１９】
（本実施形態に係る情報処理方法）
本実施形態に係る情報処理装置の構成について説明する前に、まず、本実施形態に係る情報処理方法について説明する。以下では、本実施形態に係る情報処理装置が、本実施形態に係る情報処理方法に係る処理を行う場合を例に挙げて、本実施形態に係る情報処理方法について説明する。
【００２０】
［１］本実施形態に係る情報処理方法の概要
上述したように、利用されている署名方式や認証方式では、セキュリティを高めるために、署名または認証に関する処理（認証処理）において多くの計算を必要とする。また、例えば、上記のような署名方式における署名データや認証方式における証明データを検証するための検証に関する処理（認証検証処理）においても、同様に、多くの計算を必要とする。本実施形態に係る情報処理方法の概要について説明する前に、まず、署名または認証に関する処理や、検証に関する処理において多くの計算を必要とする理由について説明する。
【００２１】
［１−１］署名または認証に関する処理、検証に関する処理において多くの計算を必要とする理由
〔ｉ〕署名に関する処理、および検証に関する処理において多くの計算を必要とする理由
図１〜図３は、本実施形態に係る情報処理方法の概要を説明するための説明図である。ここで、図１は、例えば非特許文献１に記載のＭＱ署名方式に係る処理の一例として、署名生成アルゴリズムの一例と、署名検証アルゴリズムの一例とを示している。また、図２は、図１に示す署名生成アルゴリズムの一例を示しており、図３は、図１に示す署名検証アルゴリズムの一例を示している。
【００２２】
例えば図１に示すように、ＭＱ署名方式では、一の情報処理装置１０が、署名に関する処理（例えば図１に示す署名生成アルゴリズムの処理）を行う。
【００２３】
ここで、図２に示すように、ＭＱ署名方式における署名に関する処理は、独立した処理が繰り返し行われる繰り返し処理（図２に示す（Ａ））と、その他の処理（図２に示す（Ｂ））とに分類される。情報処理装置１０は、繰り返し処理における独立した処理をＮ回（Ｎは、正の整数）繰り返し、その他の処理として、ハッシュ演算を行う処理と変数の選択を行う処理とをそれぞれ１回ずつ行うことによって、署名データを生成する。ここで、セキュリティをより高めるためには、繰り返し処理における独立した処理を行う回数を増やす必要があるので、本実施形態に係る署名に関する処理の計算量は多くなる。
【００２４】
また、例えば図１に示すように、ＭＱ署名方式では、他の情報処理装置２０が、情報処理装置１０から送信される署名データ（署名に関する処理の結果のデータ）を用いて、検証に関する処理（例えば図１に示す署名検証アルゴリズムの処理）を行う。
【００２５】
ここで、図３に示すように、ＭＱ署名方式における検証に関する処理は、図２に示すＭＱ署名方式における署名に関する処理と同様に、独立した処理が繰り返し行われる繰り返し処理（図３に示す（Ａ））と、その他の処理（図３に示す（Ｂ））とに分類される。情報処理装置２０は、繰り返し処理における独立した処理をＮ回繰り返し、その他の処理として、ハッシュ演算を行う処理を１回行うことによって、署名データを検証する。ここで、セキュリティをより高めるためには、繰り返し処理における独立した処理を行う回数を増やす必要があるので、本実施形態に係る検証に関する処理の計算量は多くなる。
【００２６】
図１、図２を参照して示したように、セキュリティを高めるためには、ＭＱ署名方式における署名に関する処理において多くの計算を必要とする。また、図１、図３を参照して示したように、セキュリティを高めるためには、ＭＱ署名方式における検証に関する処理において多くの計算を必要とする。
【００２７】
〔ｉｉ〕認証に関する処理、および検証に関する処理において多くの計算を必要とする理由の第１の例
図４は、本実施形態に係る情報処理方法の概要を説明するための説明図である。ここで、図４は、例えば非特許文献１に記載のＭＱ認証方式に係る処理の一例として、認証アルゴリズムの一例と、認証検証アルゴリズムの一例とを示している。
【００２８】
例えば図４に示すように、ＭＱ認証方式では、一の情報処理装置１０が、認証に関する処理を行う。ここで、図４に示すように、ＭＱ認証方式における認証に関する処理は、独立した処理が繰り返し行われる繰り返し処理（図４に示す（Ａ））と、その他の処理（図４に示す（Ｂ））とに分類される。情報処理装置１０は、繰り返し処理における独立した処理をＮ回繰り返し、その他の処理として、変数の選択を行う処理を行うことによって、証明データを生成する。ここで、セキュリティをより高めるためには、繰り返し処理における独立した処理を行う回数を増やす必要があるので、本実施形態に係る認証に関する処理の計算量は多くなる。
【００２９】
また、例えば図４に示すように、ＭＱ認証方式では、他の情報処理装置２０が、情報処理装置１０から送信される証明データを用いて、検証に関する処理を行う。ここで、図４に示すように、ＭＱ認証方式における検証に関する処理は、独立した処理が繰り返し行われる繰り返し処理（図４に示す（Ｃ））と、その他の処理（図４に示す（Ｄ））とに分類される。情報処理装置２０は、その他の処理として、０、１、２の中から値をランダムに選択する処理を１回行い、繰り返し処理における独立した処理をＮ回繰り返し行うことによって、証明データを検証する。ここで、セキュリティをより高めるためには、繰り返し処理における独立した処理を行う回数を増やす必要があるので、本実施形態に係る検証に関する処理の計算量は多くなる。
【００３０】
図４を参照して示したように、セキュリティを高めるためには、ＭＱ認証方式における認証に関する処理において多くの計算を必要とする。また、図４を参照して示したように、セキュリティを高めるためには、ＭＱ認証方式における検証に関する処理において多くの計算を必要とする。
【００３１】
〔ｉｉｉ〕認証に関する処理、および検証に関する処理において多くの計算を必要とする理由の第２の例
図５は、本実施形態に係る情報処理方法の概要を説明するための説明図である。ここで、図５は、例えば非特許文献２に記載のＭＣ認証方式に係る処理の一例として、認証アルゴリズムの一例と、認証検証アルゴリズムの一例とを示している。
【００３２】
例えば図５に示すように、ＭＣ認証方式では、一の情報処理装置１０が、認証に関する処理を行う。ここで、図５に示すように、ＭＣ認証方式における認証に関する処理は、独立した処理が繰り返し行われる繰り返し処理（図５に示す（Ａ））と、その他の処理（図５に示す（Ｂ））とに分類される。情報処理装置１０は、繰り返し処理における独立した処理をＮ回繰り返し、その他の処理として、ハッシュ演算を行う処理と変数の選択を行う処理とを行うことによって、証明データを生成する。ここで、セキュリティをより高めるためには、繰り返し処理における独立した処理を行う回数を増やす必要があるので、本実施形態に係る認証に関する処理の計算量は多くなる。
【００３３】
また、例えば図５に示すように、ＭＣ認証方式では、他の情報処理装置２０が、情報処理装置１０から送信される証明データを用いて、検証に関する処理を行う。ここで、図５に示すように、ＭＣ認証方式における検証に関する処理は、独立した処理が繰り返し行われる繰り返し処理（図５に示す（Ｃ））と、その他の処理（図５に示す（Ｄ））とに分類される。情報処理装置２０は、繰り返し処理における独立した処理をＮ回繰り返し、その他の処理として、ハッシュ演算を行う処理を１回行うことによって、証明データを検証する。ここで、セキュリティをより高めるためには、繰り返し処理における独立した処理を行う回数を増やす必要があるので、本実施形態に係る検証に関する処理の計算量は多くなる。
【００３４】
図５を参照して示したように、セキュリティを高めるためには、ＭＣ認証方式における認証に関する処理において多くの計算を必要とする。また、図５を参照して示したように、セキュリティを高めるためには、ＭＣ認証方式における検証に関する処理において多くの計算を必要とする。
【００３５】
例えば上記〔ｉ〕〜〔ｉｉｉ〕に示すように、署名または認証に関する処理、検証に関する処理では、多くの計算が必要とされる。
【００３６】
なお、例えば非特許文献２〜非特許文献５に記載の技術を用いた署名方式における署名に関する処理、および署名方式における検証に関する処理においても、独立した処理が繰り返し行われる繰り返し処理が、含まれる。よって、例えば、非特許文献２〜非特許文献５に記載の技術を用いた署名方式における署名に関する処理、および署名方式における検証に関する処理においても、上述した非特許文献１に記載の技術を用いたＭＱ署名方式における署名に関する処理、およびＭＱ署名方式における検証に関する処理と同様に、多くの計算が必要となる。
【００３７】
また、例えば非特許文献３〜非特許文献５に記載の技術を用いた認証方式における認証に関する処理、および認証方式における検証に関する処理においても、独立した処理が繰り返し行われる繰り返し処理が、含まれる。よって、例えば、非特許文献３〜非特許文献５に記載の技術を用いた認証方式における認証に関する処理、および認証方式における検証に関する処理においても、上述した非特許文献１に記載の技術と非特許文献２に記載の技術とを用いた認証方式における認証に関する処理、および認証方式における検証に関する処理と同様に、多くの計算が必要となる。
【００３８】
［１−２］署名または認証に関する処理に係る、本実施形態に係る情報処理方法
上述したように、署名または認証に関する処理において独立した処理が繰り返し行われる繰り返し処理が含まれる場合には、署名または認証に関する処理において多くの計算が必要となる。また、署名または認証に関する処理における本実施形態に係るその他の処理は、署名または認証に関する処理における本実施形態に係る繰り返し処理よりも小さな処理であるといえる。
【００３９】
そこで、本実施形態に係る署名または認証に関する処理を行う情報処理装置（署名者または証明者の役目を果たす情報処理装置。以下「第１の情報処理装置」と示す。）は、独立した処理が繰り返し行われる繰り返し処理が含まれる署名または認証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせる（分散制御処理）。そして、本実施形態に係る第１の情報処理装置は、外部装置における処理結果を用いて、署名または認証に関する処理を行う（実行処理）。
【００４０】
ここで、本実施形態に係る署名または認証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、本実施形態に係る繰り返し処理におけるｉ回目（ｉは、正の整数）の処理は、本実施形態に係る繰り返し処理におけるｉ＋１回目の処理に影響を与えない。つまり、本実施形態に係る繰り返し処理における各処理を、１または２以上の外部装置に分散して行わせたとしても、本実施形態に係る署名または認証に関する処理の結果（例えば、生成される署名データや証明データ）に影響はない。
【００４１】
また、本実施形態に係る繰り返し処理における各処理を、１または２以上の外部装置に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名または認証に関する処理の処理量（計算量）は減少する。
【００４２】
したがって、本実施形態に係る情報処理方法に係る処理として、（１）分散制御処理、および（２）実行処理を行うことによって、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理の高速化を図ることができる。
【００４３】
また、本実施形態に係る情報処理方法に係る処理によって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名または認証に関する処理の処理量（計算量）は減少するので、本実施形態に係る第１の情報処理装置における処理の負荷も低減する。よって、本実施形態に係る情報処理方法を用いることによって、例えば、本実施形態に係る第１の情報処理装置がセンサーネットワークにおけるセンサーノードのような計算リソースの小さなデバイスであっても、本実施形態に係る第１の情報処理装置は、本実施形態に係る署名または認証に関する処理をより高速に実行することができる。
【００４４】
［１−３］検証に関する処理に係る、本実施形態に係る情報処理方法
上述したように、検証に関する処理において独立した処理が繰り返し行われる繰り返し処理が含まれる場合には、検証に関する処理において多くの計算が必要となる。また、検証に関する処理における本実施形態に係るその他の処理は、検証に関する処理における本実施形態に係る繰り返し処理よりも小さな処理であるといえる。
【００４５】
そこで、本実施形態に係る検証に関する処理を行う情報処理装置（検証者の役目を果たす情報処理装置。以下「第２の情報処理装置」と示す。）は、繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２の外部装置に分散して行わせる（分散制御処理）。そして、本実施形態に係る第２の情報処理装置は、外部装置における処理結果を用いて、署名データまたは証明データを検証する（検証処理）。
【００４６】
ここで、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、一の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理は、他の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理に影響を与えない。つまり、本実施形態に係る第２の情報処理装置が、分割された署名データまたは証明データに対する繰り返し処理における処理を、１または２以上の外部装置に分散して行わせたとしても、本実施形態に係る検証に関する処理の結果に影響はない。
【００４７】
また、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【００４８】
したがって、本実施形態に係る情報処理方法に係る処理として、（Ｉ）分散制御処理、および（ＩＩ）検証処理を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【００４９】
また、本実施形態に係る情報処理方法に係る処理によって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少するので、本実施形態に係る第２の情報処理装置における処理の負荷も低減する。よって、本実施形態に係る情報処理方法を用いることによって、例えば、本実施形態に係る第２の情報処理装置が計算リソースの小さなデバイスであっても、本実施形態に係る第２の情報処理装置は、本実施形態に係る検証に関する処理をより高速に実行することができる。
【００５０】
［２］本実施形態に係る情報処理方法に係る処理
次に、本実施形態に係る情報処理方法に係る処理について、より具体的に説明する。
【００５１】
以下では、本実施形態に係る第１の情報処理装置が、署名に関する処理を行う場合、すなわち、本実施形態に係る第１の情報処理装置が、署名者の役目を果たす装置である場合を主に例に挙げて、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理について説明する。
【００５２】
また、以下では、本実施形態に係る第１の情報処理装置が、ＭＱ署名方式における署名に関する処理を行う場合を主に例に挙げて、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理について説明する。なお、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、例えば非特許文献１に記載の技術に係るＭＱ署名方式に適用されることに限られない。例えば、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、非特許文献２〜非特許文献５に記載の技術に係る署名方式などの、繰り返し処理が含まれる署名方式に適用することが可能である。また、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、例えば、非特許文献１〜非特許文献５に記載の技術に係る認証方式などの、繰り返し処理が含まれる認証方式に適用することも可能である。
【００５３】
また、以下では、本実施形態に係る第２の情報処理装置が、署名方式における検証に関する処理を行う場合、すなわち、本実施形態に係る第２の情報処理装置が、署名方式における検証者の役目を果たす装置である場合を主に例に挙げて、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理について説明する。
【００５４】
また、以下では、本実施形態に係る第２の情報処理装置が、ＭＱ署名方式における検証に関する処理を行う場合を主に例に挙げて、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理について説明する。なお、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、例えば非特許文献１に記載の技術に係るＭＱ署名方式に適用されることに限られない。例えば、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、非特許文献２〜非特許文献５に記載の技術に係る署名方式などの、繰り返し処理が含まれる署名方式に適用することが可能である。また、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、例えば、非特許文献１〜非特許文献５に記載の技術に係る認証方式などの、繰り返し処理が含まれる認証方式に適用することも可能である。
【００５５】
また、以下では、本実施形態に係る第１の情報処理装置、本実施形態に係る第２の情報処理装置それぞれが処理を分散させる対象の外部装置が、サーバである場合を主に例に挙げて、本実施形態に係る情報処理方法に係る処理について説明する。なお、本実施形態に係る外部装置が、サーバに限られないことは、言うまでもない。
【００５６】
［２−１］署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理
まず、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理について説明する。以下では、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を、本実施形態に係る第１の情報処理装置が行う場合を例に挙げて説明する。
【００５７】
（１）分散制御処理
本実施形態に係る第１の情報処理装置は、繰り返し処理が含まれる署名または認証に関する処理における繰り返し処理を、１または２の外部装置に分散して行わせる。
【００５８】
（１−１）分散制御処理の第１の例
本実施形態に係る第１の情報処理装置は、例えば、署名または認証に関する処理における繰り返し処理を、複数の外部装置に分散して行わせる。
【００５９】
より具体的には、本実施形態に係る第１の情報処理装置は、例えば、署名または認証に関する処理における繰り返し処理を、外部装置の数で等分に分割する。そして、本実施形態に係る第１の情報処理装置は、分割された繰り返し処理の全てを、複数の外部装置に行わせる。
【００６０】
なお、署名または認証に関する処理における繰り返し処理の繰り返し数を外部装置の数で等分に分割する場合には、例えば、本実施形態に係る繰り返し処理の繰り返し数を外部装置の数で除算した結果が整数とならないこともありうる。上記のように、本実施形態に係る繰り返し処理の繰り返し数を外部装置の数で除算した結果が整数とならない場合には、本実施形態に係る第１の情報処理装置は、例えば、各外部装置に分散して行わせる本実施形態に係る繰り返し処理における処理の回数が整数となるように、各外部装置に割り当てる本実施形態に係る繰り返し処理における処理の数を調整する。
【００６１】
つまり、本実施形態に係る“署名または認証に関する処理における繰り返し処理を、外部装置の数で等分に分割する”とは、例えば、上記各外部装置に分散して行わせる本実施形態に係る繰り返し処理における処理の回数が整数となるように、各外部装置に割り当てる本実施形態に係る繰り返し処理における処理の数を調整することも含む。
【００６２】
図６は、本実施形態に係る第１の情報処理装置における分散制御処理の第１の例を示す説明図である。ここで、図６は、本実施形態に係る第１の情報処理装置が、署名に関する処理における繰り返し処理を、サーバ１、サーバ２という２個の外部装置に分散して行わせる例を示している。また、図６に示すサーバ１およびサーバ２は、それぞれ署名に関する処理に対応する秘密鍵を有する。署名に関する処理に対応する秘密鍵は、例えば、本実施形態に係る第１の情報処理装置のユーザのユーザ操作によって、サーバ１およびサーバ２それぞれに与えられる。
【００６３】
例えば図６に示すように外部装置が２個である場合には、本実施形態に係る第１の情報処理装置は、署名に関する処理におけるＮ回の処理が繰り返し行われる繰り返し処理を、外部装置の数“２”で等分に分割する。そして、本実施形態に係る第１の情報処理装置は、例えば図６に示すように、分割された繰り返し処理、すなわち、繰り返し処理におけるＮ／２回ずつの処理を、サーバ１およびサーバ２それぞれに行わせる。なお、上述したように、Ｎ／２が正の整数ではない場合には、本実施形態に係る第１の情報処理装置は、サーバ１およびサーバ２それぞれに行わせる繰り返し処理における処理の回数が正の整数となるように、回数を調整する。
【００６４】
図７は、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理の一例を示すシーケンス図である。ここで、図７は、図６に示すように、本実施形態に係る第１の情報処理装置が、署名または認証に関する処理における繰り返し処理におけるＮ／２回ずつの処理を、サーバ１およびサーバ２それぞれに行わせる場合における処理の一例を示している。また、図７では、ステップＳ１００、Ｓ１０２の処理が、（１）の処理（分散制御処理）に該当し、ステップＳ１０８、Ｓ１１０の処理が、後述する（２）の処理（実行処理）に該当する。
【００６５】
本実施形態に係る第１の情報処理装置は、例えば、署名に関する処理における繰り返し処理を、サーバ（外部装置の一例）の数“２”で等分に分割する（Ｓ１００。分割処理）。
【００６６】
ステップＳ１００の処理を行うと、本実施形態に係る第１の情報処理装置は、ステップＳ１００の処理の結果に応じた署名生成命令を、サーバ１、サーバ２それぞれに送信する（Ｓ１０２）。本実施形態に係る第１の情報処理装置は、例えば、自装置（本実施形態に係る第１の情報処理装置）が備える通信部（後述する）、または、外部通信デバイスを介して、サーバ１、サーバ２と通信を行うことによって、署名生成命令を送信する。
【００６７】
ここで、本実施形態に係る署名生成命令は、署名または認証に関する処理における繰り返し処理を、外部装置に行わせるためのトリガとなるデータである。本実施形態に係る署名生成命令には、例えば、署名または認証に関する処理における繰り返し処理のうち、どの部分の処理を行うかを示す情報（データ）が含まれる。
【００６８】
より具体的には、ステップＳ１０２では、本実施形態に係る第１の情報処理装置は、例えば、繰り返し処理のうち１回目から２／Ｎ回目までの処理を行わせるための署名生成命令を、サーバ１に対して送信し、繰り返し処理のうち（Ｎ／２＋１）回目からＮ回目までの処理を行わせるための署名生成命令を、サーバ２に対して送信する。
【００６９】
ステップＳ１０２において本実施形態に係る第１の情報処理装置から送信された署名生成命令を受信したサーバ１、サーバ２それぞれは、受信した署名生成命令に基づいて、署名に関する処理における繰り返し処理におけるＮ／２回ずつの処理を行う（Ｓ１０４。署名生成処理）。より具体的には、サーバ１は、例えば図２の（Ａ）に示す繰り返し処理のうち、ｉ＝１〜ｉ＝Ｎ／２の処理を行い、サーバ２は、例えば図２の（Ａ）に示す繰り返し処理のうち、ｉ＝（Ｎ／２＋１）〜ｉ＝Ｎの処理を行う。
【００７０】
ステップＳ１０４の処理が完了すると、サーバ１、サーバ２それぞれは、署名に関する処理における繰り返し処理の結果を、本実施形態に係る第１の情報処理装置に送信する（Ｓ１０６）。ここで、サーバ１、サーバ２それぞれは、例えば、署名に関する処理における繰り返し処理の結果と併せて、署名に関する処理における繰り返し処理において用いられた変数も送信する。
【００７１】
ステップＳ１０６においてサーバ１、サーバ２それぞれから送信された署名に関する処理における繰り返し処理の結果を受信した本実施形態に係る第１の情報処理装置は、受信した署名に関する処理における繰り返し処理の結果を用いて、署名データを生成する（Ｓ１０８。署名生成処理）。本実施形態に係る第１の情報処理装置は、例えば、図２の（Ｂ）に示すその他の処理を行うことによって、署名データを生成する。
【００７２】
ステップＳ１０８の処理が完了すると、本実施形態に係る第１の情報処理装置は、生成した署名データを、例えば図１に示す署名検証アルゴリズムの処理（検証に関する処理）を行う、検証者の役目を果たす情報処理装置に送信する（Ｓ１１０）。本実施形態に係る第１の情報処理装置は、例えば、自装置（本実施形態に係る第１の情報処理装置）が備える通信部（後述する）、または、外部通信デバイスを介して、検証者の役目を果たす情報処理装置と通信を行うことによって、署名データを送信する。
【００７３】
本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、例えば図６に示すように、繰り返し処理における処理をサーバ１およびサーバ２それぞれに等分に行わせる場合には、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば図７に示す処理が行われる。
【００７４】
ここで、上述したように、本実施形態に係る署名に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、本実施形態に係る繰り返し処理における各処理を、サーバ１、サーバ２に分散して行わせたとしても、生成される署名データに影響はない。また、本実施形態に係る繰り返し処理における各処理を、サーバ１、サーバ２に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【００７５】
よって、例えば図７に示すように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理をサーバ１およびサーバ２それぞれに等分に行わせて、後述する（２）の処理（実行処理）を行うことによって、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【００７６】
なお、本実施形態に係る第１の情報処理装置における第１の例に係る分散制御処理は、図６に示す例に限られない。
【００７７】
例えば、署名または認証に関する処理における繰り返し処理を実行することが可能な外部装置が、２個以上ある場合には、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理における繰り返し処理を、２個以上の外部装置それぞれに分散して行わせてもよい。
【００７８】
図８は、本実施形態に係る第１の情報処理装置における第１の例に係る分散制御処理の他の例を示す説明図である。ここで、図８は、本実施形態に係る第１の情報処理装置が、署名に関する処理における繰り返し処理を、サーバ１〜サーバＺというＺ（Ｚは、２以上の整数）個の外部装置に分散して行わせる例を示している。また、図８に示す各サーバ（外部装置の一例）は、それぞれ署名に関する処理に対応する秘密鍵を有する。署名に関する処理に対応する秘密鍵は、例えば、本実施形態に係る第１の情報処理装置のユーザのユーザ操作によって、サーバ（外部装置の一例）それぞれに与えられる。
【００７９】
例えば図８に示すように、署名に関する処理における繰り返し処理を実行することが可能なサーバ（外部装置の一例）が、Ｚ個ある場合には、本実施形態に係る第１の情報処理装置は、署名に関する処理におけるＮ回の処理が繰り返し行われる繰り返し処理を、外部装置の数“Ｚ”で等分に分割する。そして、本実施形態に係る第１の情報処理装置は、例えば図８に示すように、分割された繰り返し処理、すなわち、繰り返し処理におけるＮ／Ｚ回ずつの処理を、サーバ１〜サーバＺそれぞれに行わせる。なお、上述したように、Ｎ／Ｚが正の整数ではない場合には、本実施形態に係る第１の情報処理装置は、サーバ１〜サーバＺそれぞれに行わせる繰り返し処理における処理の回数が正の整数となるように、回数を調整する。
【００８０】
上述したように、本実施形態に係る署名に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、本実施形態に係る繰り返し処理における各処理を、サーバ１〜サーバＺに分散して行わせたとしても、生成される署名データに影響はない。また、本実施形態に係る繰り返し処理における各処理を、サーバ１〜サーバＺに分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【００８１】
よって、例えば図８に示すように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理をサーバ１〜サーバＺそれぞれに等分に行わせて、後述する（２）の処理（実行処理）を行うことによって、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【００８２】
また、上記では、本実施形態に係る第１の情報処理装置が、署名または認証に関する処理における繰り返し処理を、外部装置の数で等分に分割する例を示したが、本実施形態に係る第１の情報処理装置における第１の例に係る分散制御処理は、上記に限られない。
【００８３】
例えば、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理における繰り返し処理を、外部装置の数分不等分に分割してもよい。不等分に分割した場合には、本実施形態に係る第１の情報処理装置は、分割された繰り返し処理の全てを、複数の外部装置に行わせる。
【００８４】
ここで、例えば、署名または認証に関する処理における繰り返し処理を実行することが可能な、複数の外部装置の計算リソースは、同一であるとは限られず、ある外部装置の計算リソースが他の外部装置の計算リソースよりも大きいことがありうる。
【００８５】
そこで、本実施形態に係る第１の情報処理装置は、例えば、各外部装置の計算リソースの大きさに基づいて、計算リソースがより大きな外部装置に本実施形態に係る繰り返し処理のうちのより多くの回数の処理を行わせるように、本実施形態に係る繰り返し処理を不等分に分割する。
【００８６】
より具体的には、本実施形態に係る第１の情報処理装置は、例えば、計算能力を示す情報（例えば、ＦＬＯＰＳ（Floating-point  Operations  Per  Second）を示すデータなど）や、負荷状態を示す情報（例えば、負荷率を示すデータなど）などの計算リソースに関する情報を、各外部装置から取得する。そして、本実施形態に係る第１の情報処理装置は、例えば、取得された計算リソースに関する情報から各外部装置の計算リソースの大小を判定して、計算リソースがより大きな外部装置に本実施形態に係る繰り返し処理のうちのより多くの回数の処理を行わせるように、本実施形態に係る繰り返し処理を不等分に分割する。
【００８７】
そして、本実施形態に係る第１の情報処理装置は、例えば、不等分に分割された繰り返し処理を、計算リソースがより大きな外部装置に本実施形態に係る繰り返し処理のうちのより多くの回数の処理を行わせるように、分散して行わせる。
【００８８】
例えば上記のように、外部装置の計算リソースの大きさに基づいて本実施形態に係る繰り返し処理を不等分に分割し、計算リソースがより大きな外部装置に本実施形態に係る繰り返し処理のうちのより多くの回数の処理を行わせるように、分割された繰り返し処理を、複数の外部装置に行わせることによって、外部装置における本実施形態に係る繰り返し処理の処理時間をより短縮することが可能となる。
【００８９】
なお、本実施形態に係る第１の情報処理装置が、外部装置の計算リソースによらずに、署名または認証に関する処理における繰り返し処理を、外部装置の数分不等分に分割することが可能であることは、言うまでもない。
【００９０】
図９は、本実施形態に係る第１の情報処理装置における第１の例に係る分散制御処理の他の例を示す説明図である。ここで、図９は、本実施形態に係る第１の情報処理装置が、図６に示す例と同様に、署名に関する処理における繰り返し処理を、サーバ１、およびサーバ２という２個の外部装置に分散して行わせる例を示している。また、図９に示すサーバ１、およびサーバ２は、それぞれ署名に関する処理に対応する秘密鍵を有する。署名に関する処理に対応する秘密鍵は、例えば、本実施形態に係る第１の情報処理装置のユーザのユーザ操作によって、サーバ１、およびサーバ２それぞれに与えられる。
【００９１】
例えば図９に示すように、サーバ１とサーバ２との計算リソースは、同一であるとは限られず、一方のサーバの計算リソースが他方のサーバの計算リソースよりも大きいことがありうる。そこで、本実施形態に係る第１の情報処理装置は、署名に関する処理におけるＮ回の処理が繰り返し行われる繰り返し処理を、外部装置の数“２”分、不等分に分割する。
【００９２】
例えば、本実施形態に係る第１の情報処理装置は、計算リソースの大きなサーバ１には、繰り返し処理におけるＮ回の処理のうち（Ｎ／２＋ｘ）回分（ｘは、Ｎ／２より小さな整数）の処理を行わせる。また、本実施形態に係る第１の情報処理装置は、例えば、計算リソースの小さなサーバ２には、繰り返し処理におけるＮ回の処理のうち（Ｎ／２−ｘ）回分の処理を行わせる。
【００９３】
上述したように、本実施形態に係る署名に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、本実施形態に係る繰り返し処理における各処理を、サーバ１、サーバ２に不等分に分散して行わせたとしても、生成される署名データに影響はない。また、本実施形態に係る繰り返し処理における各処理を、サーバ１、サーバ２に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【００９４】
よって、例えば図９に示すように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理をサーバ１およびサーバ２に不等分に行わせて、後述する（２）の処理（実行処理）を行う場合であっても、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【００９５】
なお、図９では、図６に示す例と同様にサーバ（外部装置の一例）の数が２個である例を示しているが、本実施形態に係る第１の情報処理装置は、図８に示す例と同様に、署名に関する処理における繰り返し処理を、２以上のサーバ（外部装置の一例）に行わせてもよい。図８に示す例と同様に、署名に関する処理における繰り返し処理を、２以上のサーバ（外部装置の一例）に不等分に行わせる場合であっても、本実施形態に係る第１の情報処理装置は、図８に示す例と同様に、署名に関する処理の高速化を図ることができる。
【００９６】
（１−２）分散制御処理の第２の例
上記第１の例に係る分散制御処理では、本実施形態に係る第１の情報処理装置が、署名または認証に関する処理における繰り返し処理の全てを、複数の外部装置に分散して行わせる例を示した。しかしながら、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、本実施形態に係る繰り返し処理の全てを、複数の外部装置に分散して行わせることに限られない。
【００９７】
例えば、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理における繰り返し処理を、１または２以上の外部装置、および自装置（本実施形態に係る第１の情報処理装置。より具体的には、例えば、後述する処理部。以下、同様とする。）に分散して行わせてもよい。
【００９８】
より具体的には、本実施形態に係る第１の情報処理装置は、例えば、署名または認証に関する処理における繰り返し処理を、外部装置および自装置の合計数で等分に分割する。そして、本実施形態に係る第１の情報処理装置は、分割された繰り返し処理を、外部装置および自装置に行わせる。
【００９９】
なお、署名または認証に関する処理における繰り返し処理の繰り返し数を、外部装置および自装置の合計数で等分に分割する場合には、例えば、本実施形態に係る繰り返し処理の繰り返し数を当該合計数で除算した結果が整数とならないこともありうる。上記のように、本実施形態に係る繰り返し処理の繰り返し数を外部装置および自装置の合計数で除算した結果が整数とならない場合には、本実施形態に係る第１の情報処理装置は、例えば、各外部装置および自装置に分散して行わせる本実施形態に係る繰り返し処理における処理の回数が整数となるように、各外部装置および自装置に割り当てる本実施形態に係る繰り返し処理における処理の数を調整する。
【０１００】
つまり、本実施形態に係る“署名または認証に関する処理における繰り返し処理を、外部装置および自装置の合計数で等分に分割する”とは、例えば、上記各外部装置および自装置に分散して行わせる本実施形態に係る繰り返し処理における処理の回数が整数となるように、各外部装置および自装置に割り当てる本実施形態に係る繰り返し処理における処理の数を調整することも含む。
【０１０１】
図１０は、本実施形態に係る第１の情報処理装置における分散制御処理の第２の例を示す説明図である。ここで、図１０は、本実施形態に係る第１の情報処理装置が、署名に関する処理における繰り返し処理を、サーバ１という１個の外部装置と自装置に分散して行わせる例を示している。また、図１０に示すサーバ１、第１の情報処理装置は、それぞれ署名に関する処理に対応する秘密鍵を有する。署名に関する処理に対応する秘密鍵は、例えば、本実施形態に係る第１の情報処理装置のユーザのユーザ操作によって、サーバ１に与えられる。
【０１０２】
例えば図１０に示すように外部装置が１個である場合には、本実施形態に係る第１の情報処理装置は、署名に関する処理におけるＮ回の処理が繰り返し行われる繰り返し処理を、外部装置の数“１”と自装置との合計数“２”で等分に分割する。そして、本実施形態に係る第１の情報処理装置は、例えば図１０に示すように、分割された繰り返し処理、すなわち、繰り返し処理におけるＮ／２回ずつの処理を、サーバ１および自装置それぞれに行わせる。なお、上述したように、Ｎ／２が正の整数ではない場合には、本実施形態に係る第１の情報処理装置は、サーバ１および自装置それぞれに行わせる繰り返し処理における処理の回数が正の整数となるように、回数を調整する。
【０１０３】
ここで、上述したように、本実施形態に係る署名に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、本実施形態に係る繰り返し処理における各処理を、サーバ１および自装置に分散して行わせたとしても、生成される署名データに影響はない。また、本実施形態に係る繰り返し処理における各処理の一部を、サーバ１に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【０１０４】
よって、例えば図１０に示すように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理をサーバ１および自装置それぞれに等分に行わせて、後述する（２）の処理（実行処理）を行うことによって、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【０１０５】
なお、本実施形態に係る第１の情報処理装置における第２の例に係る分散制御処理は、図１０に示す例に限られない。
【０１０６】
例えば、署名または認証に関する処理における繰り返し処理を実行することが可能な外部装置が、２個以上ある場合には、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理における繰り返し処理を、２個以上の外部装置および自装置それぞれに分散して行わせてもよい。
【０１０７】
図１１は、本実施形態に係る第１の情報処理装置における第２の例に係る分散制御処理の他の例を示す説明図である。ここで、図１１は、本実施形態に係る第１の情報処理装置が、署名に関する処理における繰り返し処理を、サーバ１〜サーバＺというＺ（Ｚは、２以上の整数）個の外部装置、および自装置に分散して行わせる例を示している。また、図１１に示す各サーバ（外部装置の一例）、および第１の情報処理装置は、それぞれ署名に関する処理に対応する秘密鍵を有する。署名に関する処理に対応する秘密鍵は、例えば、本実施形態に係る第１の情報処理装置のユーザのユーザ操作によって、サーバ（外部装置の一例）それぞれに与えられる。
【０１０８】
例えば図１１に示すように、署名に関する処理における繰り返し処理を実行することが可能なサーバ（外部装置の一例）が、Ｚ個ある場合には、本実施形態に係る第１の情報処理装置は、署名に関する処理におけるＮ回の処理が繰り返し行われる繰り返し処理を、外部装置の数“Ｚ”と自装置との合計数“Ｚ＋１”で等分に分割する。そして、本実施形態に係る第１の情報処理装置は、例えば図１１に示すように、分割された繰り返し処理、すなわち、繰り返し処理におけるＮ／（Ｚ＋１）回ずつの処理を、サーバ１〜サーバＺそれぞれに行わせる。なお、上述したように、Ｎ／（Ｚ＋１）が正の整数ではない場合には、本実施形態に係る第１の情報処理装置は、サーバ１〜サーバＺ、および自装置それぞれに行わせる繰り返し処理における処理の回数が正の整数となるように、回数を調整する。
【０１０９】
上述したように、本実施形態に係る署名に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、本実施形態に係る繰り返し処理における各処理を、サーバ１〜サーバＺ、および自装置に分散して行わせたとしても、生成される署名データに影響はない。また、本実施形態に係る繰り返し処理における各処理を、サーバ１〜サーバＺ、および自装置に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【０１１０】
よって、例えば図１１に示すように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理をサーバ１〜サーバＺ、および自装置それぞれに等分に行わせて、後述する（２）の処理（実行処理）を行うことによって、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【０１１１】
また、上記では、本実施形態に係る第１の情報処理装置が、署名または認証に関する処理における繰り返し処理を、外部装置および自装置の合計数で等分に分割する例を示したが、本実施形態に係る第１の情報処理装置における第２の例に係る分散制御処理は、上記に限られない。
【０１１２】
例えば、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理における繰り返し処理を、外部装置および自装置の合計数分、不等分に分割してもよい。不等分に分割した場合には、本実施形態に係る第１の情報処理装置は、分割された繰り返し処理の一部を自装置で行い、また、分割された繰り返し処理の残りの全てを、外部装置に行わせる。
【０１１３】
ここで、本実施形態に係る第１の情報処理装置は、例えば、上述した第１の例に係る分散制御処理の他の例と同様に、外部装置の計算リソースの大きさに基づいて本実施形態に係る繰り返し処理を不等分に分割する。また、本実施形態に係る第１の情報処理装置は、例えば、さらに、自装置（本実施形態に係る第１の情報処理装置）における計算リソースの大きさに基づいて、本実施形態に係る繰り返し処理を不等分に分割してもよい。
【０１１４】
そして、本実施形態に係る第１の情報処理装置は、例えば、計算リソースがより大きな装置（外部装置、または、自装置）に本実施形態に係る繰り返し処理のうちのより多くの回数の処理を行わせるように、不等分に分割された繰り返し処理を、外部装置、および自装置に行わせる。
【０１１５】
例えば上記のように、外部装置の計算リソースの大きさに基づいて本実施形態に係る繰り返し処理を不等分に分割し、計算リソースがより大きな装置（外部装置、または、自装置）に本実施形態に係る繰り返し処理のうちのより多くの回数の処理を行わせるように、分割された繰り返し処理を、複数の外部装置に行わせることによって、外部装置および自装置における本実施形態に係る繰り返し処理の処理時間をより短縮することが可能となる。
【０１１６】
なお、本実施形態に係る第１の情報処理装置が、外部装置や自装置の計算リソースによらずに、署名または認証に関する処理における繰り返し処理を、外部装置および自装置の合計数分、不等分に分割することが可能であることは、言うまでもない。
【０１１７】
また、上述したように、本実施形態に係る署名または認証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、本実施形態に係る繰り返し処理における各処理を、外部装置および自装置に不等分に分散して行わせたとしても、生成される署名データまたは証明データに影響はない。また、本実施形態に係る繰り返し処理における各処理を、外部装置および自装置に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名または認証に関する処理の処理量（計算量）は減少する。
【０１１８】
よって、例えば上記のように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理を外部装置および自装置に不等分に行わせて、後述する（２）の処理（実行処理）を行う場合であっても、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理の高速化を図ることができる。
【０１１９】
（１−３）分散制御処理の第３の例
上記第１の例に係る分散制御処理、および上記第２の例に係る分散制御処理では、本実施形態に係る第１の情報処理装置が、外部装置に秘密鍵を与えることによって、署名または認証に関する処理における繰り返し処理の一部または全部を、外部装置に分散して行わせる例を示した。しかしながら、例えば、署名生成や認証時において、秘密鍵を外部装置に与えることが望ましくない状況はありうる。
【０１２０】
そこで、本実施形態に係る第１の情報処理装置は、例えば、署名または認証に関する処理における繰り返し処理のうち、秘密鍵なしで計算できる処理部分のみを外部装置に計算させるように、本実施形態に係る繰り返し処理を分割する。そして、本実施形態に係る第１の情報処理装置は、分割された繰り返し処理（秘密鍵なしで計算できる処理部分）を外部装置に行わせる。また、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理における繰り返し処理のうちの、秘密鍵なしで計算できる処理部分以外の処理を、自装置で行う。
【０１２１】
例えば上記のように、秘密鍵なしで計算できる部分のみを外部装置に計算させることによって、本実施形態に係る第１の情報処理装置は、秘密鍵を外部装置に与えることなく、署名または認証に関する処理の一部の処理を外部装置に分散させることができる。
【０１２２】
図１２は、本実施形態に係る第１の情報処理装置における分散制御処理の第３の例を説明するための説明図である。ここで、図１２は、図１と同様に、例えば非特許文献１に記載のＭＱ署名方式に係る処理の一例として、署名生成アルゴリズムの一例と、署名検証アルゴリズムの一例とを示している。
【０１２３】
例えば図１２の（Ａ）に示す繰り返し処理において、図１２の（Ｃ）、（Ｄ）に示す処理は、秘密鍵がなくても計算可能な部分である。そこで、本実施形態に係る第１の情報処理装置は、例えば、図１２の（Ａ）に示す繰り返し処理のうち、秘密鍵がなくても計算可能な図１２の（Ｃ）、（Ｄ）に示す部分を分割し、図１２の（Ｃ）、（Ｄ）に示す部分を１または２以上の外部装置に行わせる。
【０１２４】
より具体的には、本実施形態に係る第１の情報処理装置は、例えば、１または２以上の外部装置それぞれに対して、（ｔ０,ｉ，ｅ０,ｉ）、（ｔ１,ｉ，ｅ１,ｉ）を含み図１２の（Ｃ）、（Ｄ）に示す部分の処理を行わせるための署名生成命令を送信することによって、図１２の（Ｃ）、（Ｄ）に示す部分を１または２以上の外部装置に行わせる。また、本実施形態に係る第１の情報処理装置は、例えば、図１２の（Ａ）に示す繰り返し処理のうちの、図１２の（Ｃ）、（Ｄ）に示す部分を除く処理を自装置で行う。そして、本実施形態に係る第１の情報処理装置は、例えば、外部装置から取得した処理の結果と、自装置における、図１２の（Ａ）に示す繰り返し処理のうちの図１２の（Ｃ）、（Ｄ）に示す部分を除く処理の結果とを用いて、図１２の（Ｂ）に示すその他の処理を行うことによって、署名データを生成する。
【０１２５】
図１３は、本実施形態に係る第１の情報処理装置における分散制御処理の第３の例を示すシーケンス図である。ここで、図１３は、本実施形態に係る第１の情報処理装置が、例えば、図１２の（Ａ）に示す繰り返し処理のうち、秘密鍵がなくても計算可能な図１２の（Ｃ）、（Ｄ）に示す部分を分割し、図１２の（Ｃ）、（Ｄ）に示す部分を１または２以上の外部装置に行わせる例を示している。また、図１３では、ステップＳ２００、Ｓ２０２の処理が、（１）の処理（分散制御処理）に該当し、ステップＳ２０８、Ｓ２１０の処理が、後述する（２）の処理（実行処理）に該当する。
【０１２６】
本実施形態に係る第１の情報処理装置は、例えば、署名に関する処理における繰り返し処理を、例えば図１２の（Ｃ）、（Ｄ）に示す秘密鍵がなくても計算可能な部分と、秘密鍵がなくても計算可能な部分以外の部分とに分割する（Ｓ２００。分割処理）。
【０１２７】
ステップＳ２００の処理を行うと、本実施形態に係る第１の情報処理装置は、図７のステップＳ１０２と同様に、ステップＳ２００の処理の結果に応じた署名生成命令を、サーバ１、サーバ２それぞれに送信する（Ｓ２０２）。より具体的には、本実施形態に係る第１の情報処理装置は、例えば、“（（ｖ１,…，ｖＮ）,（ｃ０，１，ｃ０，２，…，ｃ０，Ｎ−１，ｃ０，Ｎ））”を生成する。また、本実施形態に係る第１の情報処理装置は、例えば、“（（ｔ０，１，ｅ０，１），…，（ｔ０，Ｎ，ｅ０，Ｎ））”を含み図１２の（Ｃ）に示す部分の処理を行わせるための署名生成命令をサーバ１へ送信する。また、本実施形態に係る第１の情報処理装置は、例えば、“（（ｔ１，１，ｅ１，１），…，（ｔ１，Ｎ，ｅ１，Ｎ））”
を含み図１２の（Ｄ）に示す部分の処理を行わせるための署名生成命令をサーバ２へ送信する。
【０１２８】
ステップＳ２０２において本実施形態に係る第１の情報処理装置から送信された署名生成命令を受信したサーバ１、サーバ２それぞれは、受信した署名生成命令に基づいて、署名に関する処理における繰り返し処理における、図１２の（Ｃ）、（Ｄ）に示す秘密鍵がなくても計算可能な部分の処理を行う（Ｓ２０４。署名生成処理）。より具体的には、サーバ１は、例えば、署名生成命令に基づいて“（ｃ１，１，ｃ１，２，…，ｃ１，Ｎ−１，ｃ１，Ｎ）”を生成し、サーバ２は、例えば、署名生成命令に基づいて“（ｃ２，１，ｃ２，２，…，ｃ２，Ｎ−１，ｃ２，Ｎ）”を生成する。
【０１２９】
ステップＳ２０４の処理が完了すると、サーバ１、サーバ２それぞれは、署名に関する処理における署名生成命令に基づく処理の結果を、本実施形態に係る第１の情報処理装置に送信する（Ｓ２０６）。
【０１３０】
ステップＳ２０６においてサーバ１、サーバ２それぞれから送信された署名に関する処理における署名生成命令に基づく処理の結果を受信した本実施形態に係る第１の情報処理装置は、受信した署名に関する処理における繰り返し処理の結果を用いて、署名データを生成する（Ｓ２０８。署名生成処理）。より具体的には、本実施形態に係る第１の情報処理装置は、例えば、図１２の（Ａ）に示す繰り返し処理のうちの図１２の（Ｃ）、（Ｄ）に示す部分を除く処理を行い、当該処理の結果と、受信した本実施形態に係る第１の情報処理装置は、受信した署名に関する処理における繰り返し処理の結果とを用いて、図１２の（Ｂ）に示すその他の処理を行うことによって、署名データを生成する。
【０１３１】
ステップＳ２０８の処理が完了すると、本実施形態に係る第１の情報処理装置は、生成した署名データを、図７のステップＳ１１０と同様に、例えば図１２に示す署名検証アルゴリズムの処理（検証に関する処理）を行う、検証者の役目を果たす情報処理装置に送信する（Ｓ２１０）。
【０１３２】
本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における秘密鍵がなくても計算可能な部分の処理を、サーバ１およびサーバ２それぞれに行わせる場合には、署名に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば図１３に示す処理が行われる。
【０１３３】
ここで、例えば図１３に示すように、署名に関する処理における繰り返し処理のうちの、秘密鍵なしで計算できる処理部分を外部装置に行わせ、署名に関する処理における繰り返し処理のうちの、秘密鍵なしで計算できる処理部分以外の部分を自装置で行ったとしても、生成される署名データに影響はない。また、本実施形態に係る繰り返し処理における各処理の一部を、外部装置に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名または認証に関する処理の処理量（計算量）は減少する。
【０１３４】
よって、例えば上記のように、本実施形態に係る第１の情報処理装置が、（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における処理の一部を外部装置に行わせて、後述する（２）の処理（実行処理）を行う場合であっても、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理の高速化を図ることができる。
【０１３５】
本実施形態に係る第１の情報処理装置は、（１）の処理（分散制御処理）として、例えば、上記第１の例に係る処理〜上記第３の例に係る処理を行う。なお、本実施形態に係る（１）の処理（分散制御処理）が、上記第１の例に係る処理〜上記第３の例に係る処理に限られないことは、言うまでもない。
【０１３６】
（２）実行処理
本実施形態に係る第１の情報処理装置は、上記（１）の処理（分散制御処理）において分散して処理を行わせた外部装置における処理結果を用いて、署名または認証に関する処理を行う。
【０１３７】
より具体的には、本実施形態に係る第１の情報処理装置は、例えば、外部装置における処理結果を用いて、署名または認証に関する処理における本実施形態に係る繰り返し処理以外のその他の処理を行い、署名データまたは証明データを生成する。また、本実施形態に係る第１の情報処理装置は、例えば、生成した署名データまたは証明データを、検証者の役目を果たす情報処理装置（検証に関する処理を行う情報処理装置）に送信する。
【０１３８】
本実施形態に係る第１の情報処理装置は、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば、上記（１）の処理（分散制御処理）、および（２）の処理（実行処理）を行う。
【０１３９】
ここで、本実施形態に係る署名または認証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、上記（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における各処理の一部または全部を、外部装置に分散して行わせたとしても、生成される署名データまたは証明データに影響はない。また、本実施形態に係る繰り返し処理における各処理の一部または全部を、外部装置に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【０１４０】
したがって、例えば、上記（１）の処理（分散制御処理）、および（２）の処理（実行処理）を、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として行うことによって、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【０１４１】
［２−２］検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理
次に、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理について説明する。以下では、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を、本実施形態に係る第２の情報処理装置が行う場合を例に挙げて説明する。
【０１４２】
（Ｉ）分散制御処理
本実施形態に係る第２の情報処理装置は、例えば、繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割する。そして、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２の外部装置に分散して行わせる。
【０１４３】
（Ｉ−１）分散制御処理の第１の例
本実施形態に係る第２の情報処理装置は、例えば、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、複数の外部装置に分散して行わせる。
【０１４４】
より具体的には、本実施形態に係る第２の情報処理装置は、例えば、署名データまたは証明データを、外部装置の数で等分に分割する。そして、本実施形態に係る第２の情報処理装置は、例えば、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、複数の外部装置に行わせる。
【０１４５】
なお、署名データまたは証明データを、外部装置の数で等分に分割する場合には、例えば、本実施形態に係る署名または認証に関する処理における繰り返し処理の繰り返し数によっては、署名データまたは証明データを外部装置の数で完全に等分することができないこともありうる。上記のように、署名データまたは証明データを外部装置の数で完全に等分することができない場合には、本実施形態に係る第２の情報処理装置は、例えば、各外部装置に分散して処理させる署名データまたは証明データのデータ量の差分が設定されている範囲内に収まるように、各外部装置に割り当てる署名データまたは証明データのデータ量を調整する。
【０１４６】
つまり、本実施形態に係る“署名データまたは証明データを、外部装置の数で等分に分割する”とは、例えば、上記各外部装置に分散して処理させる署名データまたは証明データのデータ量の差分が設定されている範囲内に収まるように、各外部装置に割り当てる署名データまたは証明データのデータ量を調整することも含む。
【０１４７】
ここで、本実施形態に係る第２の情報処理装置は、例えば、図６や図８に示す本実施形態に係る第１の情報処理装置における処理と同様に、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、複数の外部装置に行わせる。
【０１４８】
図１４は、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理の一例を示すシーケンス図である。ここで、図１４は、本実施形態に係る第２の情報処理装置が、サーバ１およびサーバ２それぞれに、等分に分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を行わせる場合における処理の一例を示している。また、図１４は、本実施形態に係る第２の情報処理装置が、例えば図１、図３に示す署名検証アルゴリズムの処理（検証に関する処理）を行う場合における処理の一例を示している。また、図１４では、ステップＳ３０２、Ｓ３０４の処理が、（Ｉ）の処理（分散制御処理）に該当し、ステップＳ３１０の処理が、後述する（ＩＩ）の処理（検証処理）に該当する。
【０１４９】
署名者の役目を果たす情報処理装置（署名に関する処理を行う情報処理装置）から送信された署名データが受信されると（Ｓ３００）、本実施形態に係る第２の情報処理装置は、受信した署名データを分割する（Ｓ３０２。分割処理）。
【０１５０】
より具体的には、本実施形態に係る第２の情報処理装置は、例えば、受信した署名データを“（Ｃｈ１，…，ＣｈＮ／２，σ１，…，σＮ／２）”と“（ＣｈＮ／２＋１，…，ＣｈＮ，σＮ／２＋１，…，σＮ）”との２等分に分割する。なお、上述したように、署名データを外部装置の数で完全に等分することができない場合には、本実施形態に係る第２の情報処理装置は、例えば、各外部装置に分散して処理させる署名データまたは証明データのデータ量の差分が設定されている範囲内に収まるように、各外部装置に割り当てる署名データのデータ量を調整する。
【０１５１】
ステップＳ３０２の処理を行うと、本実施形態に係る第２の情報処理装置は、ステップＳ３０２の処理の結果に応じた検証命令を、サーバ１、サーバ２それぞれに送信する（Ｓ３０４）。本実施形態に係る第２の情報処理装置は、例えば、自装置（本実施形態に係る第２の情報処理装置）が備える通信部（後述する）、または、外部通信デバイスを介して、サーバ１、サーバ２と通信を行うことによって、検証命令を送信する。
【０１５２】
ここで、本実施形態に係る検証命令は、検証に関する処理における繰り返し処理を、外部装置に行わせるためのトリガとなるデータである。本実施形態に係る検証命令には、例えば、分割された署名データまたは証明データが含まれる。
【０１５３】
より具体的には、ステップＳ３０４では、本実施形態に係る第２の情報処理装置は、例えば、ステップＳ３０２において分割された署名データ“（Ｃｈ１，…，ＣｈＮ／２，σ１，…，σＮ／２）”を含む検証命令を、サーバ１に対して送信する。また、ステップＳ３０４では、本実施形態に係る第２の情報処理装置は、例えば、ステップＳ３０２において分割された署名データ“（ＣｈＮ／２＋１，…，ＣｈＮ，σＮ／２＋１，…，σＮ）”
を含む検証命令を、サーバ２に対して送信する。
【０１５４】
ステップＳ３０４において本実施形態に係る第２の情報処理装置から送信された検証命令を受信したサーバ１、サーバ２それぞれは、受信した検証命令に基づいて、分割された署名データに対する検証に関する処理における繰り返し処理を行う（Ｓ３０６。検証処理）。より具体的には、サーバ１、サーバ２それぞれは、例えば図３の（Ａ）に示す繰り返し処理を行う。
【０１５５】
ステップＳ３０６の処理が完了すると、サーバ１、サーバ２それぞれは、検証に関する処理における繰り返し処理の結果を、本実施形態に係る第２の情報処理装置に送信する（Ｓ３０８）。
【０１５６】
ステップＳ３０８においてサーバ１、サーバ２それぞれから送信された検証に関する処理における繰り返し処理の結果を受信した本実施形態に係る第２の情報処理装置は、受信した検証に関する処理における繰り返し処理の結果を用いて、署名データを検証する（Ｓ３１０。検証処理）。
【０１５７】
本実施形態に係る第２の情報処理装置は、例えば、図３の（Ｂ）に示すその他の処理を行うことによって、署名データを検証する。より具体的には、本実施形態に係る第２の情報処理装置は、例えば、図３の（Ｂ）に示すその他の処理におけるハッシュ演算を行い、当該ハッシュ演算により得られたハッシュ値と受信した署名データのチャレンジＣｈｉ（ｉ＝１，…，Ｎ）との比較演算を行う。上記比較演算の値は、署名データの検証結果に該当するので、本実施形態に係る第２の情報処理装置は、署名データを検証することができる。
【０１５８】
本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、例えば、等分に分割された署名データに対する検証に関する処理における繰り返し処理を、外部装置に行わせる場合には、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば図１４に示す処理が行われる。
【０１５９】
ここで、上述したように、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、一の分割された署名データに対する本実施形態に係る繰り返し処理における処理は、他の分割された署名データに対する本実施形態に係る繰り返し処理における処理に影響を与えない。つまり、本実施形態に係る第２の情報処理装置が、分割された署名データに対する繰り返し処理における処理を、１または２以上の外部装置に分散して行わせたとしても、本実施形態に係る検証に関する処理の結果に影響はない。
【０１６０】
また、分割された署名データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０１６１】
よって、例えば図１４に示すように、本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、署名データを外部装置の数で等分に分割し、分割された署名データに対する検証に関する処理における繰り返し処理を外部装置に行わせて、後述する（ＩＩ）の処理（検証処理）を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０１６２】
なお、本実施形態に係る第２の情報処理装置における第１の例に係る分散制御処理は、図１４に示す例に限られない。
【０１６３】
例えば、本実施形態に係る第２の情報処理装置は、署名データまたは証明データを、外部装置の数分不等分に分割してもよい。不等分に分割した場合には、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理の全てを、複数の外部装置に行わせる。
【０１６４】
ここで、本実施形態に係る第２の情報処理装置は、例えば、図９に示す本実施形態に係る第１の情報処理装置における処理と同様に、検証に関する処理における繰り返し処理を実行することが可能な外部装置の計算リソースの大きさに基づいて、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、複数の外部装置に行わせる。
【０１６５】
より具体的には、本実施形態に係る第２の情報処理装置は、例えば、外部装置の計算リソースの大きさに基づいて、署名データまたは証明データを外部装置の数分不等分に分割する。そして、本実施形態に係る第２の情報処理装置は、計算リソースがより大きな外部装置に、よりデータ量の大きな分割された署名データまたは証明データを処理させるように、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、複数の外部装置に行わせる。
【０１６６】
例えば上記のように、計算リソースがより大きな外部装置によりデータ量の大きな分割された署名データまたは証明データを処理させるように、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、複数の外部装置に行わせることによって、外部装置における本実施形態に係る繰り返し処理の処理時間をより短縮することが可能となる。
【０１６７】
なお、本実施形態に係る第２の情報処理装置が、外部装置の計算リソースによらずに、署名データまたは証明データを、外部装置の数分不等分に分割することが可能であることは、言うまでもない。
【０１６８】
上述したように、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、署名データまたは証明データを外部装置の数分不等分に分割したとしても、署名データまたは証明データの検証結果に影響はない。また、分割された署名データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０１６９】
よって、上記のように、本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、署名データまたは証明データを外部装置の数分不等分に分割し、分割された署名データに対する検証に関する処理における繰り返し処理を外部装置に行わせて、後述する（ＩＩ）の処理（検証処理）を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０１７０】
（Ｉ−２）分散制御処理の第２の例
上記第１の例に係る分散制御処理では、本実施形態に係る第２の情報処理装置が、検証に関する処理における繰り返し処理の全てを、複数の外部装置に分散して行わせる例を示した。しかしながら、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理は、本実施形態に係る繰り返し処理の全てを、複数の外部装置に分散して行わせることに限られない。
【０１７１】
例えば、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置、および自装置（本実施形態に係る第２の情報処理装置。より具体的には、例えば、後述する処理部。以下、同様とする。）に分散して行わせてもよい。
【０１７２】
より具体的には、本実施形態に係る第２の情報処理装置は、例えば、署名データまたは証明データを、外部装置および自装置の合計数で等分に分割する。そして、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、外部装置および自装置に行わせる。
【０１７３】
なお、署名データまたは証明データを、外部装置および自装置の合計数で等分に分割する場合には、例えば、本実施形態に係る署名または認証に関する処理における繰り返し処理の繰り返し数によっては、署名データまたは証明データを外部装置および自装置の合計数で完全に等分することができないこともありうる。上記のように、署名データまたは証明データを外部装置および自装置の合計数で完全に等分することができない場合には、本実施形態に係る第２の情報処理装置は、例えば、各外部装置に分散して処理させる署名データまたは証明データのデータ量の差分が設定されている範囲内に収まるように、各外部装置に割り当てる署名データまたは証明データのデータ量を調整する。
【０１７４】
つまり、本実施形態に係る“署名データまたは証明データを、外部装置および自装置の合計数で等分に分割する”とは、例えば、上記各外部装置に分散して処理させる署名データまたは証明データのデータ量の差分が設定されている範囲内に収まるように、各外部装置に割り当てる署名データまたは証明データのデータ量を調整することも含む。
【０１７５】
ここで、本実施形態に係る第２の情報処理装置は、例えば、図１０や図１１に示す本実施形態に係る第１の情報処理装置における処理と同様に、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置、および自装置に行わせる。
【０１７６】
上述したように、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、一の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理は、他の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理に影響を与えない。つまり、本実施形態に係る第２の情報処理装置が、分割された署名データまたは証明データに対する繰り返し処理における処理を、１または２以上の外部装置、および自装置に分散して行わせたとしても、本実施形態に係る検証に関する処理の結果に影響はない。
【０１７７】
また、分割された署名データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置、および自装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０１７８】
よって、例えば上記のように、本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、署名データまたは証明データを外部装置および自装置の合計数で等分に分割し、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を外部装置および自装置に行わせて、後述する（ＩＩ）の処理（検証処理）を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０１７９】
なお、上記では、本実施形態に係る第２の情報処理装置が、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、外部装置および自装置の合計数で等分に分割する例を示したが、本実施形態に係る第２の情報処理装置における第２の例に係る分散制御処理は、上記に限られない。
【０１８０】
例えば、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、外部装置および自装置の合計数分、不等分に分割してもよい。不等分に分割した場合には、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、外部装置と自装置に行わせる。
【０１８１】
ここで、本実施形態に係る第２の情報処理装置は、例えば、上述した第１の例に係る分散制御処理の他の例と同様に、検証に関する処理における繰り返し処理を実行することが可能な外部装置の計算リソースの大きさに基づいて、署名データまたは証明データを不等分に分割する。また、本実施形態に係る第２の情報処理装置は、例えば、さらに、自装置（本実施形態に係る第２の情報処理装置）における計算リソースの大きさに基づいて、署名データまたは証明データを不等分に分割してもよい。
【０１８２】
そして、本実施形態に係る第２の情報処理装置は、例えば、計算リソースがより大きな装置（外部装置、または、自装置）に、よりデータ量の大きな分割された署名データまたは証明データを処理させるように、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、外部装置および自装置に行わせる。
【０１８３】
例えば上記のように、本実施形態に係る署名データまたは証明データを不等分に分割し、計算リソースがより大きな装置（外部装置、または、自装置）によりデータ量の大きな分割された署名データまたは証明データを処理させるように、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を外部装置および自装置に行わせることによって、外部装置および自装置における本実施形態に係る繰り返し処理の処理時間をより短縮することが可能となる。
【０１８４】
なお、本実施形態に係る第２の情報処理装置が、外部装置の計算リソースによらずに、署名データまたは証明データを、外部装置の数分不等分に分割することが可能であることは、言うまでもない。
【０１８５】
また、上述したように、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、署名データまたは証明データを外部装置の数分不等分に分割したとしても、署名データまたは証明データの検証結果に影響はない。また、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置、および自装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０１８６】
よって、上記のように、本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、署名データまたは証明データを外部装置の数分不等分に分割し、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を外部装置および自装置に行わせて、後述する（ＩＩ）の処理（検証処理）を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０１８７】
（Ｉ−３）分散制御処理の第３の例
上記第１の例に係る分散制御処理、および上記第２の例に係る分散制御処理では、本実施形態に係る第２の情報処理装置が、署名データまたは証明データを分割して、分割された署名データに対する検証に関する処理における繰り返し処理を外部装置に行わせる例を示したが、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理における（Ｉ）の処理（分散制御処理）は、上記に限られない。
【０１８８】
例えば、本実施形態に係る第２の情報処理装置は、署名データまたは証明データを検証するための繰り返し処理を含む検証に関する処理における、繰り返し処理中の処理を分割し、分割された処理を、１または２の外部装置に分散して行わせてもよい。
【０１８９】
図１５は、本実施形態に係る第２の情報処理装置における分散制御処理の第３の例を説明するための説明図である。ここで、図１５は、図１と同様に、例えば非特許文献１に記載のＭＱ署名方式に係る処理の一例として、署名生成アルゴリズムの一例と、署名検証アルゴリズムの一例とを示している。
【０１９０】
例えば図１５の（Ａ）に示す繰り返し処理において、繰り返し処理中の処理の一部である図１５の（Ｃ）〜（Ｅ）に示す処理では、ハッシュ計算が２回ずつ実行される。そこで、本実施形態に係る第２の情報処理装置は、例えば、繰り返し処理中の処理の一部である図１５の（Ｃ）〜（Ｅ）に示す処理における２回のハッシュ計算の一部または全部を分割し、１または２以上の外部装置に分散して行わせる。
【０１９１】
ここで、例えば、図１５の（Ｃ）〜（Ｅ）に示す処理における２回のハッシュ計算の全部を、１または２以上の外部装置に行わせる場合には、本実施形態に係る第２の情報処理装置は、例えば、外部装置における繰り返し処理中の処理の処理結果を用いて、図１５の（Ｂ）に示すその他の処理を行うことによって、署名データを検証する。
【０１９２】
また、例えば、図１５の（Ｃ）〜（Ｅ）に示す処理における２回のハッシュ計算の一部を外部装置に行わせる場合には、本実施形態に係る第２の情報処理装置は、例えば、２回のハッシュ計算のうちの残りの部分を自装置で行う。そして、本実施形態に係る第２の情報処理装置は、外部装置における繰り返し処理中の処理の処理結果、および自装置における繰り返し処理中の処理の処理結果を用いて、図１５の（Ｂ）に示すその他の処理を行うことによって、署名データを検証する。
【０１９３】
上述したように、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、検証に関する処理における繰り返し処理中の処理を分割したとしても、署名データまたは証明データの検証結果に影響はない。また、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理中の処理を、１または２以上の外部装置、または、外部装置および自装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０１９４】
よって、上記のように、本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、署名データまたは証明データを検証するための繰り返し処理を含む検証に関する処理における、繰り返し処理中の処理を分割し、分割された処理を、１または２の外部装置に分散して行わせて、後述する（ＩＩ）の処理（検証処理）を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０１９５】
本実施形態に係る第２の情報処理装置は、（Ｉ）の処理（分散制御処理）として、例えば、上記第１の例に係る処理〜上記第３の例に係る処理を行う。なお、本実施形態に係る（Ｉ）の処理（分散制御処理）が、上記第１の例に係る処理〜上記第３の例に係る処理に限られないことは、言うまでもない。
【０１９６】
（ＩＩ）検証処理
本実施形態に係る第２の情報処理装置は、上記（Ｉ）の処理（分散制御処理）において分散して処理を行わせた外部装置における処理結果を用いて、署名データまたは証明データを検証する。
【０１９７】
より具体的には、例えば図３に示す署名データを検証する場合には、本実施形態に係る第２の情報処理装置は、例えば、図３の（Ｂ）に示すその他の処理におけるハッシュ演算を行い、当該ハッシュ演算により得られたハッシュ値と受信した署名データのチャレンジＣｈｉ（ｉ＝１，…，Ｎ）との比較演算を行うことにより、署名データの検証結果を得る。また、例えば図４に示す証明データを検証する場合には、本実施形態に係る第２の情報処理装置は、例えば、図４の（Ｃ）に示す繰り返し処理の結果を得ることによって、証明データの検証結果を得る。
【０１９８】
なお、本実施形態に係る第２の情報処理装置における（ＩＩ）の処理（検証処理）は、上記に限られない。
【０１９９】
例えば、本実施形態に係る第２の情報処理装置は、署名データまたは証明データの検証結果を、分散して処理を行わせた外部装置に対して送信させてもよい。本実施形態に係る第２の情報処理装置は、例えば、署名データまたは証明データの検証結果を、自装置（本実施形態に係る第２の情報処理装置）が備える通信部（後述する）、または、外部通信デバイスに送信させる。
【０２００】
例えば上記のように、本実施形態に係る第２の情報処理装置が、署名データまたは証明データの検証結果を分散して処理を行わせた１または２以上の外部装置に対して送信させることによって、本実施形態では、当該検証結果を受信した外部装置を、検証者としてみなすことができる。よって、本実施形態に係る第２の情報処理装置が、署名データまたは証明データの検証結果を分散して処理を行わせた１または２以上の外部装置に対して送信させることによって、本実施形態では、本実施形態に係る第２の情報処理装置、および当該検証結果を受信した１または２以上の外部装置の複数の検証者による検証が可能となる。
【０２０１】
また、例えば上記のように、本実施形態に係る第２の情報処理装置が、署名データまたは証明データの検証結果を分散して処理を行わせた１または２以上の外部装置に対して送信させることによって、認証者の役目を果たす装置は、一度の認証に関する処理の処理量で、複数の検証者の役目を果たす装置との間で認証を行うことができる。さらに、各検証者の役目を果たす装置は、検証に関する処理を“１／（検証者の役目を果たす装置数）”の処理量で実行することができる。
【０２０２】
図１６は、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理の一例を示すシーケンス図である。ここで、図１６は、本実施形態に係る第２の情報処理装置が、サーバ１、サーバ２、および自装置それぞれに、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を行わせる場合における処理の一例を示している。また、図１６は、本実施形態に係る第２の情報処理装置が、例えば図１、図３に示す署名検証アルゴリズムの処理（検証に関する処理）を行う場合における処理の一例を示している。また、図１６では、ステップＳ４０２、Ｓ４０４の処理が、（Ｉ）の処理（分散制御処理）に該当し、ステップＳ４１２、Ｓ４１４の処理が、後述する（ＩＩ）の処理（検証処理）に該当する。
【０２０３】
署名者の役目を果たす情報処理装置（署名に関する処理を行う情報処理装置）から送信された署名データが受信されると（Ｓ４００）、本実施形態に係る第２の情報処理装置は、受信した署名データを３つに分割する（Ｓ４０２。分割処理）。
【０２０４】
ステップＳ４０２の処理を行うと、本実施形態に係る第２の情報処理装置は、図１４に示すステップＳ３０４と同様に、ステップＳ４０２の処理の結果に応じた検証命令を、サーバ１、サーバ２それぞれに送信する（Ｓ４０４）。
【０２０５】
また、ステップＳ４０２の処理を行うと、本実施形態に係る第２の情報処理装置は、分割した署名データのうち、サーバ１、サーバ２に処理をさせない残りの分割した署名データに対する、検証に関する処理における繰り返し処理を行う（Ｓ４０６。検証処理）。より具体的には、本実施形態に係る第２の情報処理装置は、例えば図３の（Ａ）に示す繰り返し処理を行う。
【０２０６】
ステップＳ４０４において本実施形態に係る第２の情報処理装置から送信された検証命令を受信したサーバ１、サーバ２それぞれは、図１４に示すステップＳ３０６と同様に、受信した検証命令に基づいて、分割された署名データに対する検証に関する処理における繰り返し処理を行う（Ｓ４０８。検証処理）。
【０２０７】
ステップＳ４０８の処理が完了すると、サーバ１、サーバ２それぞれは、図１４に示すステップＳ３０８と同様に、検証に関する処理における繰り返し処理の結果を、本実施形態に係る第２の情報処理装置に送信する（Ｓ４１０）。
【０２０８】
ステップＳ４１０においてサーバ１、サーバ２それぞれから送信された検証に関する処理における繰り返し処理の結果を受信した本実施形態に係る第２の情報処理装置は、受信した検証に関する処理における繰り返し処理の結果と、ステップＳ４０６における検証に関する処理における繰り返し処理の結果とを用いて、図１４に示すステップＳ３１０と同様に、署名データを検証する（Ｓ４１２。検証処理）。
【０２０９】
そして、本実施形態に係る第２の情報処理装置は、検証結果をサーバ１、サーバ２それぞれに送信する（Ｓ４１４）。
【０２１０】
本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、例えば、分割された署名データに対する検証に関する処理における繰り返し処理を、外部装置および自装置に行わせる場合には、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば図１６に示す処理が行われる。
【０２１１】
ここで、上述したように、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、一の分割された署名データに対する本実施形態に係る繰り返し処理における処理は、他の分割された署名データに対する本実施形態に係る繰り返し処理における処理に影響を与えない。つまり、本実施形態に係る第２の情報処理装置が、分割された署名データに対する繰り返し処理における処理を、サーバ（外部装置の一例）および自装置に分散して行わせたとしても、本実施形態に係る検証に関する処理の結果に影響はない。
【０２１２】
また、分割された署名データに対する検証に関する処理における繰り返し処理を、サーバ（外部装置の一例）および自装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０２１３】
よって、例えば図１６に示すように、本実施形態に係る第２の情報処理装置が、（Ｉ）の処理（分散制御処理）において、署名データをサーバ（外部装置の一例）および自装置の合計数分分割し、分割された署名データに対する検証に関する処理における繰り返し処理をサーバおよび自装置に行わせて、（ＩＩ）の処理（検証処理）を行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０２１４】
また、本実施形態に係る第２の情報処理装置が、分散して処理を行わせた各サーバ（外部装置の一例）に対して検証結果を送信させることによって、本実施形態に係る第２の情報処理装置、および当該検証結果を受信した各サーバの複数の検証者による検証が可能となる。
【０２１５】
また、本実施形態に係る第２の情報処理装置が、分散して処理を行わせた各サーバ（外部装置の一例）に対して検証結果を送信させることによって、認証者の役目を果たす装置は、一度の認証に関する処理の処理量で、複数の検証者の役目を果たす装置との間で認証を行うことができる。さらに、各検証者の役目を果たす装置は、検証に関する処理を“１／（検証者の役目を果たす装置数）”の処理量で実行することができる。
【０２１６】
本実施形態に係る第２の情報処理装置は、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば、上記（Ｉ）の処理（分散制御処理）、および（ＩＩ）の処理（検証処理）を行う。
【０２１７】
ここで、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、一の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理は、他の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理に影響を与えない。つまり、本実施形態に係る第２の情報処理装置が、分割された署名データまたは証明データに対する繰り返し処理における処理を、１または２以上の外部装置に分散して行わせたとしても、本実施形態に係る検証に関する処理の結果に影響はない。
【０２１８】
また、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０２１９】
したがって、例えば、上記（Ｉ）の処理（分散制御処理）、および（ＩＩ）の処理（検証処理）を、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として行うことによって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０２２０】
（本実施形態に係る情報処理装置）
次に、上述した本実施形態に係る情報処理方法に係る処理を行うことが可能な、本実施形態に係る第１の情報処理装置（署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を行う情報処理装置）、および本実施形態に係る第２の情報処理装置（検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を行う情報処理装置）それぞれの構成の一例について、説明する。
【０２２１】
［１］第１の情報処理装置（署名者または認証者の役目を果たす装置）
図１７は、本実施形態に係る第１の情報処理装置１００の構成の一例を示すブロック図である。図１７では、検証者の役目を果たす第２の情報処理装置２００と、本実施形態に係る外部装置であるサーバ３００、…とを併せて示している。
【０２２２】
第１の情報処理装置１００と第２の情報処理装置２００、および第１の情報処理装置１００とサーバ３００、…それぞれは、例えば、ネットワーク４００を介して（または直接的に）通信を行う。ここで、本実施形態に係るネットワーク４００としては、例えば、ＬＡＮ（Local  Area  Network）やＷＡＮ（Wide  Area  Network）などの有線ネットワーク、無線ＬＡＮ（ＷＬＡＮ：Wireless  Local  Area  Network）や基地局を介した無線ＷＡＮ（ＷＷＡＮ：Wireless  Wide  Area  Network）などの無線ネットワーク、あるいは、ＴＣＰ／ＩＰ（Transmission  Control  Protocol/Internet  Protocol）などの通信プロトコルを用いたインターネットなどが挙げられる。
【０２２３】
第１の情報処理装置１００は、例えば、通信部１０２と、制御部１０４とを備える。
【０２２４】
また、第１の情報処理装置１００は、例えば、ＲＯＭ（Read  Only  Memory。図示せず）や、ＲＡＭ（Random  Access  Memory。図示せず）、記憶部（図示せず）、ユーザが操作可能な操作部（図示せず）、様々な画面を表示画面に表示する表示部（図示せず）などを備えていてもよい。第１の情報処理装置１００は、例えば、データの伝送路としてのバス（bus）により上記各構成要素間を接続する。
【０２２５】
ここで、ＲＯＭ（図示せず）は、制御部１０４が使用するプログラムや演算パラメータなどの制御用データを記憶する。ＲＡＭ（図示せず）は、制御部１０４により実行されるプログラムなどを一時的に記憶する。
【０２２６】
記憶部（図示せず）は、第１の情報処理装置１００が備える記憶手段であり、例えば、アプリケーションなど様々なデータを記憶する。また、記憶部（図示せず）には、例えば、耐タンパ性を有する領域が設けられ、秘密鍵などの鍵データが記憶される。なお、秘密鍵などの鍵データは、耐タンパ性を有する任意の記録媒体に記憶されていてもよい。ここで、記憶部（図示せず）としては、例えば、ハードディスク（Hard  Disk）などの磁気記録媒体や、フラッシュメモリ（flash  memory）などの不揮発性メモリ（nonvolatile  memory）などが挙げられる。また、記憶部（図示せず）は、第１の情報処理装置１００から着脱可能であってもよい。
【０２２７】
また、操作部（図示せず）としては、後述する操作入力デバイスが挙げられ、表示部（図示せず）としては、後述する表示デバイスが挙げられる。
【０２２８】
［第１の情報処理装置１００のハードウェア構成例］
図１８は、本実施形態に係る第１の情報処理装置１００のハードウェア構成の一例を示す説明図である。第１の情報処理装置１００は、例えば、ＭＰＵ１５０と、ＲＯＭ１５２と、ＲＡＭ１５４と、記録媒体１５６と、入出力インタフェース１５８と、操作入力デバイス１６０と、表示デバイス１６２と、通信インタフェース１６４とを備える。また、第１の情報処理装置１００は、例えば、データの伝送路としてのバス１６６で各構成要素間を接続する。
【０２２９】
ＭＰＵ１５０は、例えば、ＭＰＵ（Micro  Processing  Unit）や各種処理回路などで構成され、第１の情報処理装置１００全体を制御する制御部１０４として機能する。また、ＭＰＵ１５０は、第１の情報処理装置１００において、例えば、後述する分散制御部１１０、および処理部１１２の役目を果たす。
【０２３０】
ＲＯＭ１５２は、ＭＰＵ１５０が使用するプログラムや演算パラメータなどの制御用データなどを記憶する。ＲＡＭ１５４は、例えば、ＭＰＵ１５０により実行されるプログラムなどを一時的に記憶する。
【０２３１】
記録媒体１５６は、記憶部（図示せず）として機能し、例えばアプリケーションなど様々なデータを記憶する。ここで、記録媒体１５６としては、例えば、ハードディスクなどの磁気記録媒体や、フラッシュメモリなどの不揮発性メモリが挙げられる。また、記録媒体１５６は、第１の情報処理装置１００から着脱可能であってもよい。
【０２３２】
入出力インタフェース１５８は、例えば、操作入力デバイス１６０や、表示デバイス１６２を接続する。操作入力デバイス１６０は、操作部（図示せず）として機能し、また、表示デバイス１６２は、表示部（図示せず）として機能する。ここで、入出力インタフェース１５８としては、例えば、ＵＳＢ（Universal  Serial  Bus）端子や、ＤＶＩ（Digital  Visual  Interface）端子、ＨＤＭＩ（High-Definition  Multimedia  Interface）端子、各種処理回路などが挙げられる。また、操作入力デバイス１６０は、例えば、第１の情報処理装置１００上に備えられ、第１の情報処理装置１００の内部で入出力インタフェース１５８と接続される。操作入力デバイス１６０としては、例えば、ボタン、方向キー、ジョグダイヤルなどの回転型セレクター、あるいは、これらの組み合わせなどが挙げられる。また、表示デバイス１６２は、例えば、第１の情報処理装置１００上に備えられ、第１の情報処理装置１００の内部で入出力インタフェース１５８と接続される。表示デバイス１６２としては、例えば、液晶ディスプレイ（Liquid  Crystal  Display；ＬＣＤ）や有機ＥＬディスプレイ（Organic  ElectroLuminescence  display。または、ＯＬＥＤディスプレイ（Organic  Light  Emitting  Diode  display）ともよばれる。）などが挙げられる。
【０２３３】
なお、入出力インタフェース１５８が、第１の情報処理装置１００の外部装置としての操作入力デバイス（例えば、キーボードやマウスなど）や表示デバイスなどの、外部デバイスと接続することもできることは、言うまでもない。また、表示デバイス１６２は、例えばタッチスクリーンなど、表示とユーザ操作とが可能なデバイスであってもよい。
【０２３４】
通信インタフェース１６４は、第１の情報処理装置１００が備える通信手段であり、ネットワーク４００を介して（あるいは、直接的に）、サーバなどの外部装置と無線／有線で通信を行うための通信部１０２として機能する。ここで、通信インタフェース１６４としては、例えば、通信アンテナおよびＲＦ（Radio  Frequency）回路（無線通信）や、ＩＥＥＥ８０２．１５．１ポートおよび送受信回路（無線通信）、ＩＥＥＥ８０２．１１ｂポートおよび送受信回路（無線通信）、あるいはＬＡＮ端子および送受信回路（有線通信）などが挙げられる。
【０２３５】
第１の情報処理装置１００は、例えば図１８に示す構成によって、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を行う。なお、本実施形態に係る第１の情報処理装置１００のハードウェア構成は、図１８に示す構成に限られない。
【０２３６】
例えば、第１の情報処理装置１００は、赤外線センサなどの各種センサデバイスを備えていてもよい。
【０２３７】
また、第１の情報処理装置１００が、例えば、入出力インタフェース１５８などを介して接続される外部通信デバイスを介して、第２の情報処理装置２００やサーバ３００などの外部の装置と通信を行う場合には、第１の情報処理装置１００は、通信インタフェース１６４を備えていなくてもよい。また、第１の情報処理装置１００は、例えば、操作デバイス１６０や表示デバイス１６２を備えない構成をとることも可能である。
【０２３８】
再度図１７を参照して、第１の情報処理装置１００の構成の一例について説明する。通信部１０２は、第１の情報処理装置１００が備える通信手段であり、ネットワーク４００を介して（あるいは、直接的に）、第２の情報処理装置２００やサーバ３００などの外部の装置と無線／有線で通信を行う。また、通信部１０２は、例えば制御部１０４により通信が制御される。ここで、通信部１０２としては、例えば、通信アンテナおよびＲＦ回路や、ＬＡＮ端子および送受信回路などが挙げられるが、通信部１０２の構成は、上記に限られない。例えば、通信部１０２は、ＵＳＢ端子および送受信回路など通信を行うことが可能な任意の規格に対応する構成や、ネットワーク４００を介して外部装置と通信可能な任意の構成をとることができる。
【０２３９】
制御部１０４は、例えばＭＰＵなどで構成され、第１の情報処理装置１００全体を制御する役目を果たす。また、制御部１０４は、例えば、分散制御部１１０と、処理部１１２とを備え、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を主導的に行う役目を果たす。
【０２４０】
分散制御部１１０は、上記（１）の処理（分散制御処理）を主導的に行う役目を果たし、繰り返し処理が含まれる署名または認証に関する処理における繰り返し処理を、１または２の外部装置に分散して行わせる。より具体的には、分散制御部１１０は、例えば、上記（１）の処理（分散制御処理）における上記第１の例に係る処理〜上記第３の例に係る処理を行う。
【０２４１】
処理部１１２は、上記（２）の処理（実行処理）を主導的に行う役目を果たし、分散制御部１１０における処理により分散して処理を行わせた外部装置における処理結果を用いて、署名または認証に関する処理を行う。
【０２４２】
制御部１０４は、例えば、分散制御部１１０、および処理部１１２を備えることによって、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理（例えば、上記（１）の処理（分散制御処理）、および（２）の処理（実行処理））を主導的に行う。
【０２４３】
第１の情報処理装置１００は、例えば図１７に示す構成によって、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理（例えば、上記（１）の処理（分散制御処理）、および（２）の処理（実行処理））を行う。したがって、第１の情報処理装置１００は、例えば図１７に示す構成によって、署名または認証に関する処理の高速化を図ることができる。
【０２４４】
なお、本実施形態に係る第１の情報処理装置の構成は、図１７に示す構成に限られない。
【０２４５】
例えば、本実施形態に係る第１の情報処理装置は、図１７に示す分散制御部１１０、および処理部１１２を個別に備える（例えば、それぞれを個別の処理回路で実現する）ことができる。
【０２４６】
また、例えば、本実施形態に係る第１の情報処理装置が、外部通信デバイスを介して第２の情報処理装置２００やサーバ３００などの外部の装置と通信を行う場合には、本実施形態に係る第１の情報処理装置は、通信部１０２を備えていなくてもよい。
【０２４７】
以上のように、本実施形態に係る第１の情報処理装置は、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば、上記（１）の処理（分散制御処理）、および（２）の処理（実行処理）を行う。
【０２４８】
ここで、本実施形態に係る署名または認証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、上記（１）の処理（分散制御処理）において、本実施形態に係る繰り返し処理における各処理の一部または全部を外部装置に分散して行わせたとしても、（２）の処理（実行処理）により生成される署名データまたは証明データに影響はない。また、本実施形態に係る繰り返し処理における各処理の一部または全部を外部装置に分散して行わせることによって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名に関する処理の処理量（計算量）は減少する。
【０２４９】
したがって、本実施形態に係る第１の情報処理装置は、署名に関する処理の高速化を図ることができる。
【０２５０】
また、本実施形態に係る情報処理方法に係る処理によって、本実施形態に係る第１の情報処理装置における、本実施形態に係る署名または認証に関する処理の処理量（計算量）は減少するので、本実施形態に係る第１の情報処理装置における処理の負荷も低減する。よって、本実施形態に係る情報処理方法を用いることによって、例えば、本実施形態に係る第１の情報処理装置がセンサーネットワークにおけるセンサーノードのような計算リソースの小さなデバイスであっても、本実施形態に係る第１の情報処理装置は、本実施形態に係る署名または認証に関する処理をより高速に実行することができる。
【０２５１】
さらに、本実施形態に係る第１の情報処理装置は、本実施形態に係る繰り返し処理における各処理の一部または全部を、外部装置に分散して行わせるので、１つの装置に処理が集中することを回避することができる。
【０２５２】
［２］第２の情報処理装置（検証者の役目を果たす装置）
図１９は、本実施形態に係る第２の情報処理装置２００の構成の一例を示すブロック図である。図１９では、署名者または証明者の役目を果たす第１の情報処理装置１００と、本実施形態に係る外部装置であるサーバ５００、…とを併せて示している。第２の情報処理装置２００と第１の情報処理装置１００、および第２の情報処理装置２００とサーバ５００、…それぞれは、例えば、ネットワーク４００を介して（または直接的に）通信を行う。
【０２５３】
第２の情報処理装置２００は、例えば、通信部２０２と、制御部２０４とを備える。
【０２５４】
また、第２の情報処理装置２００は、例えば、ＲＯＭ（図示せず）や、ＲＡＭ（図示せず）、記憶部（図示せず）、ユーザが操作可能な操作部（図示せず）、様々な画面を表示画面に表示する表示部（図示せず）などを備えていてもよい。第２の情報処理装置２００は、例えば、データの伝送路としてのバスにより上記各構成要素間を接続する。
【０２５５】
ここで、ＲＯＭ（図示せず）は、制御部２０４が使用するプログラムや演算パラメータなどの制御用データを記憶する。ＲＡＭ（図示せず）は、制御部２０４により実行されるプログラムなどを一時的に記憶する。
【０２５６】
記憶部（図示せず）は、第２の情報処理装置２００が備える記憶手段であり、例えば、検証結果を示すデータや、アプリケーションなど様々なデータを記憶する。ここで、記憶部（図示せず）としては、例えば、ハードディスクなどの磁気記録媒体や、フラッシュメモリなどの不揮発性メモリなどが挙げられる。また、記憶部（図示せず）は、第２の情報処理装置２００から着脱可能であってもよい。
【０２５７】
また、操作部（図示せず）としては、例えば、上述した図１８に示す操作入力デバイスが挙げられ、表示部（図示せず）としては、例えば、上述した図１８に示す表示デバイスが挙げられる。
【０２５８】
［第２の情報処理装置２００のハードウェア構成例］
第２の情報処理装置２００は、例えば図１８に示すハードウェア構成をとり、例えば図１８に示す構成によって、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を行う。
【０２５９】
なお、本実施形態に係る第２の情報処理装置２００のハードウェア構成は、図１８に示す構成に限られない。
【０２６０】
例えば、第２の情報処理装置２００が、入出力インタフェース１５８などを介して接続される外部通信デバイスを介して、第１の情報処理装置１００やサーバ５００などの外部の装置と通信を行う場合には、第２の情報処理装置２００は、通信インタフェース１６４を備えていなくてもよい。また、第２の情報処理装置２００は、例えば、操作デバイス１６０や表示デバイス１６２を備えない構成をとることも可能である。
【０２６１】
再度図１９を参照して、第２の情報処理装置２００の構成の一例について説明する。通信部２０２は、第２の情報処理装置２００が備える通信手段であり、ネットワーク４００を介して（あるいは、直接的に）、第１の情報処理装置１００やサーバ５００などの外部の装置と無線／有線で通信を行う。また、通信部２０２は、例えば制御部２０４により通信が制御される。ここで、通信部２０２としては、例えば、通信アンテナおよびＲＦ回路や、ＬＡＮ端子および送受信回路などが挙げられるが、通信部２０２の構成は、上記に限られない。例えば、通信部２０２は、ＵＳＢ端子および送受信回路など通信を行うことが可能な任意の規格に対応する構成や、ネットワーク４００を介して外部装置と通信可能な任意の構成をとることができる。
【０２６２】
制御部２０４は、例えばＭＰＵなどで構成され、第２の情報処理装置２００全体を制御する役目を果たす。また、制御部２０４は、例えば、分散制御部２１０と、処理部２１２とを備え、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を主導的に行う役目を果たす。
【０２６３】
分散制御部２１０は、上記（Ｉ）の処理（分散制御処理）を主導的に行う役目を果たす。分散制御部２１０は、例えば、繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２の外部装置に分散して行わせる。より具体的には、分散制御部１１０は、例えば、上記（Ｉ）の処理（分散制御処理）における上記第１の例に係る処理〜上記第３の例に係る処理を行う。
【０２６４】
また、分散制御部２１０は、例えば、署名データまたは証明データを検証するための繰り返し処理を含む検証に関する処理における、繰り返し処理中の処理を分割し、分割された処理を、１または２の外部装置に分散して行わせてもよい。
【０２６５】
処理部２１２は、上記（ＩＩ）の処理（検証処理）を主導的に行う役目を果たし、分散制御部２１０における処理により分散して処理を行わせた外部装置における処理結果を用いて、署名データまたは証明データを検証する。
【０２６６】
制御部２０４は、例えば、分散制御部２１０、および処理部２１２を備えることによって、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理（例えば、上記（Ｉ）の処理（分散制御処理）、および（ＩＩ）の処理（検証処理））を主導的に行う。
【０２６７】
第２の情報処理装置２００は、例えば図１９に示す構成によって、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理（例えば、上記（Ｉ）の処理（分散制御処理）、および（ＩＩ）の処理（検証処理））を行う。したがって、第２の情報処理装置２００は、例えば図１９に示す構成によって、検証に関する処理の高速化を図ることができる。
【０２６８】
なお、本実施形態に係る第２の情報処理装置の構成は、図１９に示す構成に限られない。
【０２６９】
例えば、本実施形態に係る第２の情報処理装置は、図１９に示す分散制御部２１０、および処理部２１２を個別に備える（例えば、それぞれを個別の処理回路で実現する）ことができる。
【０２７０】
また、例えば、本実施形態に係る第２の情報処理装置が、外部通信デバイスを介して第１の情報処理装置１００やサーバ５００などの外部の装置と通信を行う場合には、本実施形態に係る第１の情報処理装置は、通信部２０２を備えていなくてもよい。
【０２７１】
以上のように、本実施形態に係る第２の情報処理装置は、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理として、例えば、上記（Ｉ）の処理（分散制御処理）、および（ＩＩ）の処理（検証処理）を行う。
【０２７２】
ここで、本実施形態に係る検証に関する処理における繰り返し処理は、独立した処理が繰り返し行われる処理であるので、例えば、一の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理は、他の分割された署名データまたは証明データに対する本実施形態に係る繰り返し処理における処理に影響を与えない。つまり、本実施形態に係る第２の情報処理装置が、分割された署名データまたは証明データに対する繰り返し処理における処理を、１または２以上の外部装置に分散して行わせたとしても、本実施形態に係る検証に関する処理の結果に影響はない。
【０２７３】
また、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせることによって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少する。
【０２７４】
したがって、本実施形態に係る第２の情報処理装置は、検証に関する処理の高速化を図ることができる。
【０２７５】
また、本実施形態に係る情報処理方法に係る処理によって、本実施形態に係る第２の情報処理装置における、本実施形態に係る検証に関する処理の処理量（計算量）は減少するので、本実施形態に係る第２の情報処理装置における処理の負荷も低減する。よって、本実施形態に係る情報処理方法を用いることによって、例えば、本実施形態に係る第２の情報処理装置が計算リソースの小さなデバイスであっても、本実施形態に係る第２の情報処理装置は、本実施形態に係る署名または認証に関する処理をより高速に実行することができる。
【０２７６】
さらに、本実施形態に係る第２の情報処理装置は、分割された署名データまたは証明データに対する検証に関する処理における繰り返し処理を、１または２以上の外部装置に分散して行わせるので、１つの装置に処理が集中することを回避することができる。
【０２７７】
以上、本実施形態として第１の情報処理装置（署名または認証に関する処理に係る、情報処理方法に係る処理を行う、署名者または認証者の役目を果たす装置）を挙げて説明したが、本実施形態は、かかる形態に限られない。本実施形態は、例えば、センサーネットワークにおけるセンサーノードを構成するデバイスや、タブレット型の装置、携帯電話やスマートフォンなどの通信装置、映像／音楽再生装置（または映像／音楽記録再生装置）、ゲーム機、ＰＣ（Personal  Computer）などのコンピュータなど、様々な機器に適用することができる。また、本実施形態は、例えば、上記のような機器に組み込むことが可能な、処理ＩＣ（Integrated  Circuit）に適用することもできる。
【０２７８】
また、本実施形態として第２の情報処理装置（検証に関する処理に係る、情報処理方法に係る処理を行う、検証者の役目を果たす装置）を挙げて説明したが、本実施形態は、かかる形態に限られない。本実施形態は、例えば、ＰＣやサーバなどのコンピュータや、タブレット型の装置や、携帯電話やスマートフォンなどの通信装置、映像／音楽再生装置（または映像／音楽記録再生装置）、ゲーム機など、様々な機器に適用することができる。また、本実施形態は、例えば、上記のような機器に組み込むことが可能な、処理ＩＣに適用することもできる。
【０２７９】
また、本実施形態として、本実施形態に係る第１の情報処理装置、本実施形態に係る第２の情報処理装置それぞれに対する外部装置を挙げて説明したが、本実施形態は、かかる形態に限られない。本実施形態は、例えば、センサーネットワークにおけるセンサーノードを構成するデバイスや、タブレット型の装置、携帯電話やスマートフォンなどの通信装置、映像／音楽再生装置（または映像／音楽記録再生装置）、ゲーム機、ＰＣやサーバなどのコンピュータなど、本実施形態に係る情報処理方法に係る処理を実行することが可能な、様々な機器に適用することができる。また、本実施形態に係る外部装置は、例えば図１８に示すハードウェア構成をとるが、本実施形態に係る外部装置のハードウェア構成は、上記に限られない。
【０２８０】
（本実施形態に係るプログラム）
コンピュータを、本実施形態に係る第１の情報処理装置（署名または認証に関する処理に係る、情報処理方法に係る処理を行う、署名者または認証者の役目を果たす装置）として機能させるためのプログラム（例えば、上記（１）の処理（分散制御処理）、および（２）の処理（実行処理）など、署名または認証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を実行することが可能なプログラム）が、コンピュータにおいて実行されることによって、署名または認証に関する処理の高速化を図ることができる。
【０２８１】
また、コンピュータを、本実施形態に係る第２の情報処理装置（検証に関する処理に係る、情報処理方法に係る処理を行う、検証者の役目を果たす装置）として機能させるためのプログラム（例えば、上記（Ｉ）の処理（分散制御処理）、および（ＩＩ）の処理（検証処理）など、検証に関する処理に係る、本実施形態に係る情報処理方法に係る処理を実行することが可能なプログラム）が、コンピュータにおいて実行されることによって、検証に関する処理の高速化を図ることができる。
【０２８２】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０２８３】
例えば、上記では、コンピュータを、本実施形態に係る第１の情報処理装置（署名または認証に関する処理に係る、情報処理方法に係る処理を行う、署名者または認証者の役目を果たす装置）、または、本実施形態に係る第２の情報処理装置（検証に関する処理に係る、情報処理方法に係る処理を行う、検証者の役目を果たす装置）として機能させるためのプログラム（コンピュータプログラム）が提供されることを示したが、本実施形態は、さらに、上記プログラムそれぞれ、または、上記プログラムを共にを記憶させた記録媒体も併せて提供することができる。
【０２８４】
上述した構成は、本実施形態の一例を示すものであり、当然に、本開示の技術的範囲に属するものである。
【０２８５】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
繰り返し処理が含まれる署名または認証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、
前記外部装置における処理結果を用いて、前記署名または認証に関する処理を行う処理部と、
を備える、情報処理装置。
（２）
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、複数の外部装置に分散して行わせる、（１）に記載の情報処理装置。
（３）
前記分散制御部は、
前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置の数で等分に分割し、
分割された前記繰り返し処理を、複数の前記外部装置に行わせる、（２）に記載の情報処理装置。
（４）
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置の数分不等分に分割し、
分割された前記繰り返し処理を、複数の前記外部装置に行わせる、（２）に記載の情報処理装置。
（５）
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、１または２以上の外部装置、および前記処理部に分散して行わせる、（１）に記載の情報処理装置。
（６）
前記分散制御部は、
前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部の合計数で等分に分割し、
分割された前記繰り返し処理を、前記外部装置および前記処理部に行わせる、（５）に記載の情報処理装置。
（７）
前記分散制御部は、前記署名または認証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部の合計数分不等分に分割し、
分割された前記繰り返し処理を、前記外部装置および前記処理部に行わせる、（５）に記載の情報処理装置。
（８）
繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせる分散制御部と、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証する処理部と、
を備える、情報処理装置。
（９）
前記分散制御部は、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、複数の外部装置に分散して行わせる、（８）に記載の情報処理装置。
（１０）
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置の数で等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、複数の前記外部装置に行わせる、（９）に記載の情報処理装置。
（１１）
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置の数分不等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、複数の前記外部装置に行わせる、（９）に記載の情報処理装置。
（１２）
前記分散制御部は、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２以上の外部装置、および前記処理部に分散して行わせる、（８）に記載の情報処理装置。
（１３）
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置および前記処理部の合計数で等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部に行わせる、（１２）に記載の情報処理装置。
（１４）
前記分散制御部は、前記署名データまたは前記証明データを、前記外部装置および前記処理部の合計数分不等分に分割し、
分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、前記外部装置および前記処理部に行わせる、（１２）に記載の情報処理装置。
（１５）
前記処理部は、前記署名データまたは前記証明データの検証結果を前記外部装置に対して送信させる、（８）〜（１４）のいずれか１つに記載の情報処理装置。
（１６）
署名データまたは証明データを検証するための繰り返し処理を含む検証に関する処理における、前記繰り返し処理中の処理を分割し、分割された処理を、１または２の外部装置に分散して行わせる分散制御部と、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証する処理部と、
を備える、情報処理装置。
（１７）
繰り返し処理が含まれる署名または認証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップと、
前記外部装置における処理結果を用いて、前記署名または認証に関する処理を行うステップと、
を有する、情報処理方法。
（１８）
繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップと、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証するステップと、
を有する、情報処理方法。
（１９）
繰り返し処理が含まれる署名または認証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップ、
前記外部装置における処理結果を用いて、前記署名または認証に関する処理を行うステップ、
をコンピュータに実行させるためのプログラム。
（２０）
繰り返し処理を含む検証に関する処理により検証される署名データまたは証明データを分割し、分割された前記署名データまたは前記証明データに対する前記検証に関する処理における前記繰り返し処理を、１または２の外部装置に分散して行わせるステップ、
前記外部装置における処理結果を用いて、前記署名データまたは前記証明データを検証するステップ、
をコンピュータに実行させるためのプログラム。
【符号の説明】
【０２８６】
１００    第１の情報処理装置
１０２、２０２    通信部
１０４、２０４    制御部
１１０、２１０    分散制御部
１１２、２１２    処理部
２００    第２の情報処理装置
【図１】
2014056022.tif 000003
【図２】
2014056022.tif 000004
【図３】
2014056022.tif 000005
【図４】
2014056022.tif 000006
【図５】
2014056022.tif 000007
【図６】
2014056022.tif 000008
【図７】
2014056022.tif 000009
【図８】
2014056022.tif 000010
【図９】
2014056022.tif 000011
【図１０】
2014056022.tif 000012
【図１１】
2014056022.tif 000013
【図１２】
2014056022.tif 000014
【図１３】
2014056022.tif 000015
【図１４】
2014056022.tif 000016
【図１５】
2014056022.tif 000017
【図１６】
2014056022.tif 000018
【図１７】
2014056022.tif 000019
【図１８】
2014056022.tif 000020
【図１９】
2014056022.tif 000021