(57)【特許請求の範囲】
【請求項１】
提示したメッセージに対するデジタル署名を復元するための複数の分散情報を時系列的に個別に送信する送信側エンティティ装置と、前記送信側エンティティ装置から受けた分散情報に基づいて前記デジタル署名を復元する受信側エンティティ装置とを備えた署名分散システムであって、
前記送信側エンティティ装置は、
前記デジタル署名に基づいて前記各分散情報を生成する署名生成手段と、
前記受信側エンティティ装置から要求を受ける毎に、前記署名生成手段により生成された各分散情報を個別に受信側エンティティ装置宛に送信する分散情報送信手段とを有し、
前記受信側エンティティ装置は、
前記分散情報送信手段から分散情報を受ける毎に、当該分散情報の正当性を検証する分散情報検証手段と、
前記分散情報検証手段により正当性が検証された分散情報が全部又は所定の個数揃ったとき、当該各分散情報に基づいてデジタル署名を復元する署名復元手段と、
を備えたことを特徴とする署名分散システム。
【請求項２】
委託内容管理部及び署名分散値生成部を有する送信側エンティティ装置に用いられ、受信側エンティティ装置に提示したメッセージに対するデジタル署名を復元するための複数の署名分散値を前記受信側エンティティ装置宛に時系列的に個別に送信する前記送信側エンティティ装置の署名分散用プログラムであって、
前記送信側エンティティ装置のコンピュータに、
前記デジタル署名に基づいて前記各署名分散値を前記署名分散値生成部により計算する機能、
前記受信側エンティティ装置からの１回目の要求に基づいて、前記デジタル署名の一部、１つ目の前記署名分散値を前記委託内容管理部により送信する機能、
前記受信側エンティティ装置からの２回目以降の要求毎に、対応する前記署名分散値を前記委託内容管理部により個別に送信する機能、
を実現させるための署名分散用プログラム。
【請求項３】
受託内容管理部及び署名分散値検証部を有する受信用エンティティ装置に用いられ、
提示されたメッセージに対して公開鍵暗号方式の秘密鍵を用いて生成されたデジタル署名に関し、複数個の乱数を含む多項式に基づいて、前記デジタル署名を復元するための複数の分散情報を生成し、前記各分散情報を時系列的に個別に送信側エンティティ装置に要求し、この要求により前記送信側エンティティ装置から受けた全部又は所定個の分散情報からデジタル署名を復元し、得られたデジタル署名を検証可能な受信用エンティティ装置の署名検証用プログラムであって、
前記受信用エンティティ装置のコンピュータに、
前記送信用エンティティ装置から前記受託内容管理部により受けたデジタル署名の一部、及び前記多項式の各乱数に関する複数のコミット値と、前記秘密鍵に対応する公開鍵とに基づいて、前記送信用エンティティ装置から前記受託内容管理部により分散情報を受ける毎に、この分散情報の正当性を前記署名分散値検証部により検証する機能、
を実現させるための署名検証用プログラム。
【請求項４】
請求項３に記載の署名検証用プログラムにおいて、
前記受信用エンティティ装置は署名算出部及び署名検証部を備えており、
前記受信用エンティティ装置のコンピュータに、
前記送信用エンティティ装置から前記受託内容管理部により受けた全て又は所定個の分散情報を用い、前記多項式に基づいて、デジタル署名の一部及び複数個の他の乱数を前記署名算出部により計算する機能、
前記送信用エンティティ装置から受けたデジタル署名の一部及び前記計算したデジタル署名の一部からデジタル署名を前記署名算出部により復元する機能、
前記公開鍵を用い、前記復元したデジタル署名の正当性を前記署名検証部により検証する機能、
前記送信用エンティティ装置から受けたデジタル署名の一部と前記計算した他の各乱数とを用い、前記各コミット値の正当性を前記署名検証部により検証する機能、
を実現させるための署名検証用プログラム。
【請求項５】
受信側エンティティ装置に提示したメッセージｍに対するデジタル署名を復元するためのｎ個（２≦ｎ）の分散情報ｓi（0≦i≦n-1）を、前記受信側エンティティ装置宛に時系列的に個別に送信する送信側エンティティ装置が前記デジタル署名を計算可能な第１装置及び前記デジタル署名を検証可能な第２装置からなり、
前記第１装置が、所定の第１素数ｑに関する乗法群Ｚｑ＊から乱数ｋを選択し、前記メッセージｍに対してハッシュ値ｈ(ｍ)を求め、前記第１素数ｑに関係した所定の第２素数ｐ（＝ｗ＊ｑ＋１、但しｗは２以上の任意の自然数）、前記乗法群Ｚp＊での位数がｑとなる所定の原始元α、公開鍵暗号方式の秘密鍵ｘ、前記乱数ｋ及び前記ハッシュ値ｈ(ｍ)に基づいて、ｒ＝αｋ（ｍｏｄ ｐ）の式及びｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）の式を満たすデジタル署名（ｒ，ｓ）を計算し、このデジタル署名（ｒ，ｓ）を前記第２装置に送信するとき、
審査内容管理部、第三者署名検証部、多項式生成部、コミット値計算部及び署名分散値生成部を有する前記第２装置に用いられる分散署名用プログラムであって、
前記第２装置のコンピュータに、
前記第１装置から前記審査内容管理部によりデジタル署名（ｒ，ｓ）を受けると、前記秘密鍵ｘに対応する公開鍵ｙを用い、当該デジタル署名（ｒ，ｓ）の正当性をｒｓ＝αh(m)ｙr  （ｍｏｄ ｐ）の関係に基づいて前記第三者署名検証部により検証する機能、
前記乗法群Ｚｑ＊からｎ−１個の乱数ｂjを前記多項式生成部により選択する機能、
前記乱数ｂjに基づいて、多項式ｆ(ｚ)＝ｓ+ｂ1・ｚ＋ｂ2・ｚ2＋…＋ｂn-1・ｚn-1 （ｍｏｄ ｑ）を前記多項式生成部により生成する機能、
前記乱数ｂj及び前記デジタル署名の一部ｒに基づいて、ｎ−１個のコミット値ｃj（＝ｒbj（ｍｏｄ ｐ））を前記コミット値計算部により計算する機能、
所定のｎ個の引数ｚi及び前記多項式ｆ(ｚ)に基づいてｎ個の署名分散値ｓi（＝ｆ(ｚi)）を前記署名分散値生成部により計算する機能、
前記受信側エンティティ装置から前記審査内容管理部により受けた１回目の要求に基づいて、前記デジタル署名の一部ｒ、１つ目の署名分散値ｓ0、及びコミット値ｃjを前記審査内容管理部により送信する機能、
前記受信側エンティティ装置から前記審査内容管理部により受けた２回目以降の要求毎に、対応する署名分散値ｓiを前記審査内容管理部により個別に送信する機能、
を実現させるための署名分散用プログラム。
【請求項６】
提示されたメッセージｍに対するデジタル署名（ｒ，ｓ）（なお、ｒ＝αｋ（ｍｏｄ ｐ）、ｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）、但しｐ，ｑはｐ＝ｗ＊ｑ＋１（但し、ｗは２以上の任意の自然数）の関係をもつ素数、αは乗法群Ｚp＊での位数がｑとなる所定の原始元、ｋは乗法群Ｚｑ＊内の乱数、ｈ（ｍ）は、ｍのハッシュ値、ｘは公開鍵暗号方式の秘密鍵）に関し、
前記デジタル署名（ｒ，ｓ）を復元するためのｎ個（２≦ｎ）の分散情報ｓi（但し、0≦i≦n-1、ｓi＝ｆ(ｚi)＝ｓ+ｂ1・ｚi＋ｂ2・ｚi2＋…＋ｂn-1・ｚin-1 （ｍｏｄ ｑ）、ｚiはｎ−１個の引数）を時系列的に個別に送信側エンティティ装置に要求し、この要求により前記送信側エンティティ装置からｎ回に渡って受けた合計ｎ個の分散情報ｓiからデジタル署名（ｒ，ｓ）を復元し、得られたデジタル署名（ｒ，ｓ）を検証可能な受信用エンティティ装置に用いられる署名検証用プログラムであって、
前記受信用エンティティ装置は受託内容管理部及び署名分散値検証部を備えており、
前記受信用エンティティ装置のコンピュータに、
前記送信用エンティティ装置から前記受託内容管理部により受けたデジタル署名の一部ｒ及びｎ−１個のコミット値ｃj（但し、1≦j≦n-1、ｃj＝ｒｂj、ｂjはｎ−１個の乱数）と、前記秘密鍵ｘに対応する公開鍵ｙと、所定の引数ｚiとを用い、前記送信用エンティティ装置から前記受託内容管理部により分散情報ｓiを受ける毎に、この分散情報ｓiの正当性を下記式の関係に基づいて前記署名分散値検証部により検証する機能、
を実現させるための署名検証用プログラム。
【数１】
0004018370.tif 000007
【請求項７】
請求項６に記載の署名検証用プログラムにおいて、
前記受信用エンティティ装置は署名算出部及び署名検証部を備えており、
前記受信用エンティティ装置のコンピュータに、
前記送信用エンティティ装置から受けた合計ｎ個の分散情報ｓiを用い、前記ｆ(ｚi)の関係に基づいて、デジタル署名の一部ｓ及びｎ−１個の乱数ｂjを前記署名算出部により計算する機能、
前記送信用エンティティ装置から受けたデジタル署名の一部ｒ及び前記計算したデジタル署名の一部ｓからデジタル署名（ｒ，ｓ）を前記署名算出部により復元する機能、
前記秘密鍵ｘに対応する公開鍵ｙを用い、前記復元したデジタル署名（ｒ，ｓ）の正当性をｒｓ＝αh(m)ｙr  （ｍｏｄ ｐ）の関係に基づいて前記署名検証部により検証する機能、
前記送信用エンティティ装置から受けたデジタル署名の一部ｒと前記計算した乱数ｂjとを用い、前記コミット値ｃjの正当性をｃj＝ｒｂiの関係に基づいて前記署名検証部により検証する機能、
を実現させるための署名検証用プログラム。
【請求項８】
提示したメッセージｍに対するデジタル署名（ｒ，ｓ）を復元するためのｎ個（２≦ｎ）の署名分散値ｓ0，…，ｓj，…，ｓn-1（1≦j≦n-1）を生成し、この署名分散値ｓ0，…，ｓj，…，ｓn-1を時系列的に個別に送信する送信側エンティティ装置に対して設けられた受信側エンティティ装置にて用いられる署名検証方法であって、
前記送信側エンティティ装置から前記受託内容管理部により受けた１番目の署名分散値ｓ0の正当性を前記署名分散値検証部により検証するステップと、
この正当性が検証された後、前記受託内容管理部により、２番目以降の署名分散値ｓjを時系列的に個別に前記送信側エンティティ装置に要求するステップと、
この個別の要求毎に送信側エンティティ装置から２番目以降の署名分散値ｓjを前記受託内容管理部により受けると、当該署名分散値ｓjの正当性を前記署名分散値検証部により検証するステップと、
ｎ番目の署名分散値ｓn-1の正当性が検証された後、全ての署名分散値ｓ0〜ｓn-1に基づいて前記デジタル署名の一部ｓを前記署名算出部により復元し、当該デジタル署名の一部ｓと予め送信側エンティティ装置から受けたデジタル署名の一部ｒとを用いることにより、前記署名算出部によって前記デジタル署名（ｒ，ｓ）を得るステップと、
当該得られたデジタル署名（ｒ，ｓ）の正当性を前記署名検証部により検証するステップと、
このデジタル署名（ｒ，ｓ）の正当性が検証された後、前記受託内容管理部により、前記送信側エンティティ装置に署名受領通知を送信するステップと、
を含んでいることを特徴とする署名検証方法。
【請求項９】
受信側エンティティ装置に提示したメッセージｍに対するデジタル署名を復元するためのｎ個（２≦ｎ）の分散情報ｓi（0≦i≦n-1）を、前記受信側エンティティ装置宛に時系列的に個別に送信する送信側エンティティ装置が前記デジタル署名を計算可能な第１装置及び前記デジタル署名を検証可能な第２装置からなり、
前記第１装置が、所定の第１素数ｑに関する乗法群Ｚｑ＊から乱数ｋを選択し、前記メッセージｍに対してハッシュ値ｈ(ｍ)を求め、前記第１素数ｑに関係した所定の第２素数ｐ（＝ｗ＊ｑ＋１、但しｗは２以上の任意の自然数）、前記乗法群Ｚp＊での位数がｑとなる所定の原始元α、公開鍵暗号方式の秘密鍵ｘ、前記乱数ｋ及び前記ハッシュ値ｈ(ｍ)に基づいて、ｒ＝αｋ（ｍｏｄ ｐ）の式及びｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）の式を満たすデジタル署名（ｒ，ｓ）を計算し、このデジタル署名（ｒ，ｓ）を前記第２装置に送信するとき、
審査内容管理部、第三者署名検証部、多項式生成部、コミット値計算部及び署名分散値生成部を有する前記第２装置に用いられる分散署名方法であって、
前記第１装置からデジタル署名（ｒ，ｓ）を前記審査内容管理部により受けると、前記秘密鍵ｘに対応する公開鍵ｙを用い、当該デジタル署名（ｒ，ｓ）の正当性をｒｓ＝αh(m)ｙr  （ｍｏｄ ｐ）の関係に基づいて前記第三者署名検証部により検証するステップと、
前記送信側エンティティ装置が前記乗法群Ｚｑ＊からｎ−１個の乱数ｂjを前記多項式生成部により選択するステップと、
前記乱数ｂjに基づいて、多項式ｆ(ｚ)＝ｓ+ｂ1・ｚ＋ｂ2・ｚ2＋…＋ｂn-1・ｚn-1 （ｍｏｄ ｑ）を前記多項式生成部により生成するステップと、
前記乱数ｂj及び前記デジタル署名の一部ｒに基づいて、ｎ−１個のコミット値ｃj（＝ｒbj（ｍｏｄ ｐ））を前記コミット値計算部により計算するステップと、
所定のｎ個の引数ｚi及び前記多項式ｆ(ｚ)に基づいてｎ個の署名分散値ｓi（＝ｆ(ｚi)）を前記署名分散値生成部により計算するステップと、
前記受信側エンティティ装置から前記審査内容管理部により受けた１回目の要求に基づいて、前記デジタル署名の一部ｒ、１つ目の署名分散値ｓ0、及びコミット値ｃjを前記審査内容管理部により前記受信側エンティティ装置に送信するステップと、
前記受信側エンティティ装置から前記審査内容管理部により受けた２回目以降の要求毎に、対応する署名分散値ｓiを個別に前記審査内容管理部により前記受信側エンティティ装置に送信するステップと、
を含んでいることを特徴とする署名分散方法。
【請求項１０】
提示されたメッセージｍに対するデジタル署名（ｒ，ｓ）（なお、ｒ＝αｋ（ｍｏｄ ｐ）、ｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）、但しｐ，ｑはｐ＝ｗ＊ｑ＋１（但し、ｗは２以上の任意の自然数）の関係をもつ素数、αは乗法群Ｚp＊での位数がｑとなる所定の原始元、ｋは乗法群Ｚｑ＊内の乱数、ｈ（ｍ）は、ｍのハッシュ値、ｘは公開鍵暗号方式の秘密鍵）に関し、
前記デジタル署名（ｒ，ｓ）を復元するためのｎ個（２≦ｎ）の分散情報ｓi（但し、0≦i≦n-1、ｓi＝ｆ(ｚi)＝ｓ+ｂ1・ｚi＋ｂ2・ｚi2＋…＋ｂn-1・ｚin-1 （ｍｏｄ ｑ）、ｚiはｎ−１個の引数）を時系列的に個別に送信側エンティティ装置に要求し、この要求により前記送信側エンティティ装置からｎ回に渡って受けた合計ｎ個の分散情報ｓiからデジタル署名（ｒ，ｓ）を復元し、得られたデジタル署名（ｒ，ｓ）を検証可能な受信用エンティティ装置に用いられる署名検証方法であって、
前記受信用エンティティ装置は受託内容管理部及び署名分散値検証部を備えており、
前記送信用エンティティ装置から前記受託内容管理部により受けたデジタル署名の一部ｒ及びｎ−１個のコミット値ｃj（但し、1≦j≦n-1、ｃj＝ｒｂj、ｂjはｎ−１個の乱数）と、前記秘密鍵ｘに対応する公開鍵ｙと、所定の引数ｚiとを用い、前記送信用エンティティ装置から前記受託内容管理部により分散情報ｓiを受ける毎に、この分散情報ｓiの正当性を下記式の関係に基づいて前記署名分散値検証部により検証するステップを含んでいることを特徴とする署名検証方法。
【数２】
0004018370.tif 000008
【請求項１１】
請求項１０に記載の署名検証方法において、
前記受信用エンティティ装置は署名算出部及び署名検証部を備えており、
前記送信用エンティティ装置から受けた合計ｎ個の分散情報ｓiを用い、前記ｆ(ｚi)の関係に基づいて、デジタル署名の一部ｓ及びｎ−１個の乱数ｂjを前記署名算出部により計算するステップと、
前記送信用エンティティ装置から受けたデジタル署名の一部ｒ及び前記計算したデジタル署名の一部ｓからデジタル署名（ｒ，ｓ）を前記署名算出部により復元するステップと、
前記秘密鍵ｘに対応する公開鍵ｙを用い、前記復元したデジタル署名（ｒ，ｓ）の正当性をｒｓ＝αh(m)ｙr  （ｍｏｄ ｐ）の関係に基づいて前記署名検証部により検証するステップと、
前記送信用エンティティ装置から受けたデジタル署名の一部ｒと前記計算した乱数ｂjとを用い、前記コミット値ｃjの正当性をｃj＝ｒｂiの関係に基づいて前記署名検証部により検証するステップと、
を含んでいることを特徴とする署名検証方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、各種の取引システムに応用可能な署名分散システム、プログラム及び方法に関する。
【０００２】
【従来の技術】
デジタル署名は、例えば電子商取引において、信頼性や証拠性を保証する重要な技術である。係るデジタル署名は、適用されるサービス毎に、電子契約書、電子小切手又は電子現金などといった様々なものに用いられる。
【０００３】
例えば電子現金に用いられる場合、デジタル署名は、サービスを委託する委託者（例、依頼者）からサービス代金に相当する電子現金のメッセージ部分に付され、電子現金に含まれた状態で受託者（例、サービス業者）に渡される。受託者は、この電子現金を金融機関により決済し、電子現金の額に相当する収入を得た旨を確認すると、所定のサービスを委託者に提供する。
なお、これは電子現金をサービス提供前に渡した場合の例であり、電子現金をサービス提供後に渡す場合も考えられる。
【０００４】
【発明が解決しようとする課題】
しかしながら、以上のようなデジタル署名は、受託者に電子現金として渡されるタイミングが、受託者からのサービス提供後か、又はサービス提供前か、でそれぞれ異なる問題を生じさせることが知られている（M. K. Franklin and M. K. Reiter, “Verifiable signature sharing”, Advances in Cryptology - EUROCRYPT ’95, LNCS 921, pp.50-63, 1995.）。
【０００５】
すなわち、前者では、電子現金が支払われない可能性がある受託者不利の状況が生じ、後者では、電子現金を持ち逃げされる可能性がある委託者不利の状況が生じる。いずれにしても、デジタル署名の授受の仕方が不公平な処理となってしまい、好ましくない。
【０００６】
本発明は上記実情に基づいてなされたもので、デジタル署名を授受する際に、各当事者をいずれも不利な状況にせず、公平な処理を実現し得る署名分散システム、プログラム及び方法を提供することを目的とする。
【０００７】
【課題を解決するための手段】
第１の発明は、提示したメッセージに対するデジタル署名を復元するための複数の分散情報を時系列的に個別に送信する送信側エンティティ装置と、前記送信側エンティティ装置から受けた分散情報に基づいて前記デジタル署名を復元する受信側エンティティ装置とを備えた署名分散システムであって、前記送信側エンティティ装置としては、前記デジタル署名に基づいて前記各分散情報を生成する署名生成手段と、前記受信側エンティティ装置から要求を受ける毎に、前記署名生成手段により生成された各分散情報を個別に受信側エンティティ装置宛に送信する分散情報送信手段とを有し、前記受信側エンティティ装置としては、前記分散情報送信手段から分散情報を受ける毎に、当該分散情報の正当性を検証する分散情報検証手段と、前記分散情報検証手段により正当性が検証された分散情報が全部又は所定の個数揃ったとき、当該各分散情報に基づいてデジタル署名を復元する署名復元手段と、を備えた署名分散システムである。
【０００９】
ここで、送信側エンティティ装置は、例えば任意の処理を委託する側の委託者側装置や、所定のサービスを提供されるクライアント側装置として実現可能となっており、単一の装置に限らず、第三者装置を含む複数の装置群としてもよい。
【００１０】
受信側エンティティ装置は、例えば委託された処理を受託して実行する側の受託者装置や、所定のサービスを提供するＡＳＰ(Application Service Provider)側装置として実現可能となっている。
【００１１】
第２の発明は、受信側エンティティ装置に提示したメッセージｍに対するデジタル署名を復元するためのｎ個（２≦ｎ）の分散情報ｓi（0≦i≦n-1）を、前記受信側エンティティ装置宛に時系列的に個別に送信する送信側エンティティ装置が前記デジタル署名を計算可能な第１装置及び前記デジタル署名を検証可能な第２装置からなり、前記第１装置が、所定の第１素数ｑに関する乗法群Ｚｑ＊から乱数ｋを選択し、前記メッセージｍに対してハッシュ値ｈ(ｍ)を求め、前記第１素数ｑに関係した所定の第２素数ｐ（＝ｗ＊ｑ＋１、但しｗは２以上の任意の自然数）、前記乗法群Ｚp＊での位数がｑとなる所定の原始元α、公開鍵暗号方式の秘密鍵ｘ、前記乱数ｋ及び前記ハッシュ値ｈ(ｍ)に基づいて、ｒ＝αｋ（ｍｏｄ ｐ）の式及びｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）の式を満たすデジタル署名（ｒ，ｓ）を計算し、このデジタル署名（ｒ，ｓ）を前記第２装置に送信するとき、審査内容管理部、第三者署名検証部、多項式生成部、コミット値計算部及び署名分散値生成部を有する前記第２装置に用いられる分散署名用プログラムであって、前記第２装置のコンピュータに、前記第１装置から前記審査内容管理部によりデジタル署名（ｒ，ｓ）を受けると、前記秘密鍵ｘに対応する公開鍵ｙを用い、当該デジタル署名（ｒ，ｓ）の正当性をｒｓ＝αh(m)ｙr  （ｍｏｄ ｐ）の関係に基づいて前記第三者署名検証部により検証する機能、前記乗法群Ｚｑ＊からｎ−１個の乱数ｂjを前記多項式生成部により選択する機能、前記乱数ｂjに基づいて、多項式ｆ(ｚ)＝ｓ+ｂ1・ｚ＋ｂ2・ｚ2＋…＋ｂn-1・ｚn-1 （ｍｏｄ ｑ）を前記多項式生成部により生成する機能、前記乱数ｂj及び前記デジタル署名の一部ｒに基づいて、ｎ−１個のコミット値ｃj（＝ｒbj（ｍｏｄ ｐ））を前記コミット値計算部により計算する機能、所定のｎ個の引数ｚi及び前記多項式ｆ(ｚ)に基づいてｎ個の署名分散値ｓi（＝ｆ(ｚi)）を前記署名分散値生成部により計算する機能、前記受信側エンティティ装置から前記審査内容管理部により受けた１回目の要求に基づいて、前記デジタル署名の一部ｒ、１つ目の署名分散値ｓ0、及びコミット値ｃjを前記審査内容管理部により送信する機能、前記受信側エンティティ装置から前記審査内容管理部により受けた２回目以降の要求毎に、対応する署名分散値ｓiを前記審査内容管理部により個別に送信する機能、を実現させるための署名分散用プログラムである。
【００１３】
第３の発明は、提示されたメッセージｍに対するデジタル署名（ｒ，ｓ）（なお、ｒ＝αｋ（ｍｏｄ ｐ）、ｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）、但しｐ，ｑはｐ＝ｗ＊ｑ＋１（但し、ｗは２以上の任意の自然数）の関係をもつ素数、αは乗法群Ｚp＊での位数がｑとなる所定の原始元、ｋは乗法群Ｚｑ＊内の乱数、ｈ（ｍ）は、ｍのハッシュ値、ｘは公開鍵暗号方式の秘密鍵）に関し、前記デジタル署名（ｒ，ｓ）を復元するためのｎ個（２≦ｎ）の分散情報ｓi（但し、0≦i≦n-1、ｓi＝ｆ(ｚi)＝ｓ+ｂ1・ｚi＋ｂ2・ｚi2＋…＋ｂn-1・ｚin-1 （ｍｏｄ ｑ）、ｚiはｎ−１個の引数）を時系列的に個別に送信側エンティティ装置に要求し、この要求により前記送信側エンティティ装置からｎ回に渡って受けた合計ｎ個の分散情報ｓiからデジタル署名（ｒ，ｓ）を復元し、得られたデジタル署名（ｒ，ｓ）を検証可能な受信用エンティティ装置に用いられる署名検証用プログラムであって、前記受信用エンティティ装置は受託内容管理部及び署名分散値検証部を備えており、前記受信用エンティティ装置のコンピュータに、前記送信用エンティティ装置から前記受託内容管理部により受けたデジタル署名の一部ｒ及びｎ−１個のコミット値ｃj（但し、1≦j≦n-1、ｃj＝ｒｂj、ｂjはｎ−１個の乱数）と、前記秘密鍵ｘに対応する公開鍵ｙと、所定の引数ｚiとを用い、前記送信用エンティティ装置から前記受託内容管理部により分散情報ｓiを受ける毎に、この分散情報ｓiの正当性を下記式の関係に基づいて前記署名分散値検証部により検証する機能、を実現させるための署名検証用プログラムである。
【００１４】
【数３】
0004018370.tif 000002
【００１５】
第４の発明は、第３の発明において、前記受信用エンティティ装置のコンピュータに、
前記送信用エンティティ装置から受けた合計ｎ個の分散情報ｓiを用い、前記ｆ(ｚi)の関係に基づいて、デジタル署名の一部ｓ及びｎ−１個の乱数ｂjを前記署名算出部により計算する機能、前記送信用エンティティ装置から受けたデジタル署名の一部ｒ及び前記計算したデジタル署名の一部ｓからデジタル署名（ｒ，ｓ）を前記署名算出部により復元する機能、前記秘密鍵ｘに対応する公開鍵ｙを用い、前記復元したデジタル署名（ｒ，ｓ）の正当性をｒｓ＝αh(m)ｙr  （ｍｏｄ ｐ）の関係に基づいて前記署名検証部により検証する機能、前記送信用エンティティ装置から受けたデジタル署名の一部ｒと前記計算した乱数ｂjとを用い、前記コミット値ｃjの正当性をｃj＝ｒｂiの関係に基づいて前記署名検証部により検証する機能、を実現させるための署名検証用プログラムである。
【００１６】
従って、以上のような各発明によれば、送信側エンティティ装置が、任意のメッセージｍを受信側エンティティ装置に提示した後に、メッセージｍに対する署名（ｒ，ｓ）自体ではなく、署名授受を保証するｎ個の分散情報ｓiを時系列的に個別に、受信側エンティティ装置に送信する。
【００１７】
一方、受信側エンティティ装置は、全て揃ったｎ個の分散情報ｓiに基づいて署名（ｒ，ｓ）を復元することにより、メッセージｍの保証を得る。
【００１８】
すなわち、デジタル署名を授受する際に、１回で署名全体を授受するのではなく、ｎ個の分散情報を段階的に授受することにより、最終的にデジタル署名（ｒ，ｓ）を授受している。従って、各当事者をいずれも不利な状況にせず、公平な処理を実現させることができる。
【００１９】
なお、以上のような各発明は「システム」又は「プログラム」として表現したが、これに限らず、「装置」、「方法」、「コンピュータ読取り可能な記憶媒体」といった他の名称やカテゴリーで表現してもよい。
【００２０】
【発明の実施の形態】
以下、本発明の各実施形態について図面を用いて説明する。なお、各実施形態の概略は、委託者側（第三者を含んでもよい）が、任意のメッセージｍを受託者に委託する際に、メッセージｍに対するデジタル署名（ｒ，ｓ）自体ではなく、署名授受を保証するｎ個の分散情報ｓiを委託内容の遂行前後で時系列的に個別に、受託者に送るというものである。また、受託者は、委託内容の遂行後、揃ったｎ個の分散情報ｓiに基づいて署名（ｒ，ｓ）を復元することにより、メッセージｍの保証を得る。
【００２１】
ここで、第１〜第１１の実施形態は、図３６に示すように、委託者側及び受託者のうち、委託者側の主な５つの機能において、委託者と第三者との機能分担を代えた内容となっている。この種の第三者は、分担した機能に関して、委託者の負荷を低減させる一方、受託者から見た信用度を高める役割をもつ。また図示するように、第三者のうち、署名発行機能をもつ者を第三者Ａとも呼び、その他の者を第三者Ｂとも呼ぶ。
【００２２】
また、第１〜第１１の実施形態では、デジタル署名（ｒ，ｓ）の一部ｓに対する分散情報（以下、署名分散値という）の個数ｎをｎ＝２としている。第１２の実施形態では、この個数ｎを任意の複数個に拡張している。
【００２３】
さて、各実施形態で使用する各種パラメータと記号は以下の通りである。
【００２４】
ｐ，ｑ：十分に大きな素数でｐ＝ｗ＊ｑ＋１の関係式を満たす（但し、ｗは２以上の任意の自然数）。
α：乗法群Ｚp＊での位数がｑとなるような原始元。
ｘ：署名用秘密鍵。
ｙ：検証用公開鍵（ｙ＝αｘ（ｍｏｄ ｐ）を満たす）。
ｍ：署名対象となるメッセージ。
（ｒ，ｓ）：メッセージｍに対するデジタル署名（以下、署名ともいう）。
ｒ：署名の一部で、ｋのコミット値（ｒ＝αｋ（ｍｏｄ ｐ）を満たす）。
ｓ：署名の一部で、ｋ-1｛ｈ(ｍ)＋ｘ・ｒ｝（ｍｏｄ ｑ）  の値。
ｋ：署名の秘密乱数。
ｈ(ｍ)：メッセージｍのハッシュ値。
ｆ(ｚ):初項ｓのｎ−１次多項式。
ｚi：多項式ｆ(ｚ)の引数（０≦ｉ≦ｎ−１）。
ｓi：署名の一部ｓの署名分散値（分散情報）で、関数値ｆ(ｚi)。
【００２５】
ここで、各パラメータのうち、素数ｐ，ｑ，原始元α，検証用公開鍵ｙは、予めシステムパラメータとして委託者、第三者及び受託者に共有されている。
引数ｚiは、受託者による最初の署名分散値ｓ0の正当性検証よりも前に受託者に配布されるが、システムパラメータと同様に委託者、第三者及び受託者で予め共有してもよい。
【００２６】
（第１の実施形態）
図１は本発明の第１の実施形態に係る署名分散システムの概略構成を示す模式図である。この署名分散システムは、委託者装置１０及び受託者装置２０からなり、図１に「署名者に限定なし」として示したように、署名（ｒ，ｓ）を発行する機能を、委託者装置１０又は第三者装置（図示せず）のいずれが有してもよい構成となっている。
【００２７】
図２は係る署名分散システムの構成を具体的に示す機能ブロック図である。この署名分散システムは、委託者装置１０及び受託者装置２０を備えており、各装置１０，２０はそれぞれハードウェア、ソフトウェア又はその組合せにより構成可能となっている。ここで、各装置１０，２０がソフトウェアにより構成される場合、後述する各機能を実現させるための署名分散／検証用プログラムが予め各装置１０，２０のコンピュータにインストールされている。なお、ハードウェア及び／又はソフトウェアにより各装置を個別に構成可能な旨の説明は、以下の各実施形態の全ての装置（第三者装置を含む）にも適用される。
【００２８】
ここで、委託者装置１０は、委託内容管理部１１、委託者署名管理部１２、署名分散値生成部１３、コミット値計算部１４及び多項式生成部１５を備えている。
【００２９】
委託内容管理部１１は、委託者が受託者に委託する内容（以下、委託内容という）を管理する機能と、委託内容を受託者装置２０に提示する機能と、受託者装置２０から受けた委託意志を確認する機能と、受託意志に従って分散署名の生成要求を委託者署名管理部１２に送出する機能と、委託の際に委託者署名管理部１２から受けた署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを受託者装置２０に送信する機能と、受託者装置２０から受けた処理の遂行結果（以下、処理結果ともいう）又は処理完了通知を審査する機能と、この審査結果に従って委託者署名管理部１２から受けた署名分散値ｓ1を受託者装置２０に送信する機能と、受託者装置２０から送信された署名受領通知を確認する機能とをもっている。
【００３０】
委託者署名管理部１２は、署名（ｒ，ｓ）を管理する機能と、委託内容管理部１１から受けた分散署名生成要求に基づいて多項式生成部１５に多項式生成要求を送出する機能と、コミット値計算部１４より受けたコミット値ｃ及び署名分散値生成部１３より受けた署名分散値ｓ0，ｓ1を保存する機能と、委託の際に署名の一部ｒ、一方の署名分散値ｓ0及びコミット値ｃを委託内容管理部１１に送信する機能と、委託内容管理部１１の審査結果に従って要求された他方の署名分散値ｓ1を委託内容管理部１１に送出する機能とをもっている。
【００３１】
署名分散値生成部１３は、多項式生成部１５から受けた多項式ｆ(ｚ)に引数ｚiを入力して関数値ｆ(ｚi)である署名分散値ｓiを生成する機能と、生成した署名分散値ｓiを委託者署名管理部１２に送出する機能とをもっている。
【００３２】
コミット値計算部１４は、多項式生成部１５から受けた乱数ｂと署名の一部ｒとに基づいてコミット値ｃ（＝ｒｂ（ｍｏｄ ｐ））を計算する機能と、計算したコミット値ｃを委託者署名管理部１２に送出する機能とをもっている。
【００３３】
多項式生成部１５は、委託者署名管理部１２から受けた多項式生成要求に従って署名（ｒ，ｓ）を用いて多項式ｆ(ｚ)（＝ｓ＋ｂ・ｚ（ｍｏｄ ｑ））を生成する機能と、多項式生成の際に選択した乱数ｂと署名の一部ｒをコミット値計算部１４に送出する機能と、生成した多項式ｆ(ｚ)を署名分散値生成部１３に送出する機能とをもっている。
【００３４】
受託者装置２０は、受託内容処理部２１、受託内容管理部２２、受託者署名管理部２３、署名分散値検証部２４、署名算出部２５及び署名検証部２６を備えている。
【００３５】
受託内容処理部２１は、受託内容管理部２２より受けた受託内容に従って処理を遂行する機能と、その処理の遂行結果（処理結果）を受託内容管理部２２に送出する機能とをもっている。
【００３６】
受託内容管理部２２は、委託者装置１０より受けた受託内容に対して受託意志を委託者装置１０に送信する機能と、受託内容を受託内容処理部２１に送出する機能と、委託者装置１０から受けた署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを受託者署名管理部２３に送出する機能と、受託者署名管理部２３から受けた署名分散値ｓ0の検証結果に基づいて受託内容処理部２１に委託内容の処理を要求する機能と、受託内容処理部２１より受けた処理結果に基づいて受託内容に対する処理結果又は処理完了通知を委託者装置１０に送信する機能と、委託者装置１０から受けた署名分散値ｓ1を受託者署名管理部２３に送出する機能と、受託者署名管理部２３より受けた署名（ｒ，ｓ）及びコミット値ｃの各々の検証結果に応じて署名受領通知を委託者装置１０に送信する機能とをもっている。
【００３７】
受託者署名管理部２３は、受託内容管理部２２から受けた署名の一部ｒ、署名分散値ｓ0，ｓ1及びコミット値ｃを保存する機能と、保存する署名の一部ｒ、署名分散値ｓ0（又はｓ1）及びコミット値ｃを署名分散値検証部２４に送出して検証を要求する機能と、署名分散値検証部２４から受けた署名分散値ｓ0（又はｓ1）の検証結果を受託内容管理部２２に通知する機能と、保存する署名の一部ｒ、署名分散値ｓ0，ｓ1及びコミット値ｃを署名算出部２５に送出する機能と、署名検証部２６から受けた署名（ｒ，ｓ）及びコミット値ｃの各々の検証結果を受託内容管理部２２に通知する機能とをもっている。
【００３８】
署名分散値検証部２４は、受託者署名管理部２３から受けた署名の一部ｒ、署名分散値ｓ0（又はｓ1）及びコミット値ｃを用いて署名分散値ｓ0（又はｓ1）の正当性を検証する機能と、署名分散値ｓ0（又はｓ1）の検証結果を受託者署名管理部２３に通知する機能とをもっている。
【００３９】
署名算出部２５は、受託者署名管理部２３から受けた署名の一部ｒ、署名分散値ｓ0，ｓ1及びコミット値ｃから署名の一部ｓ及び乱数ｂを算出する機能と、算出により得られた署名（ｒ，ｓ）及びコミット値ｃを署名検証部２６に送信する機能と、算出により得られた署名（ｒ，ｓ）を受託者署名管理部２３に送信する機能とをもっている。
【００４０】
署名検証部２６は、署名算出部２５から受けた署名（ｒ，ｓ）及びコミット値ｃの正当性を検証する機能と、この検証結果を受託者署名管理部２３に通知する機能とをもっている。
【００４１】
次に、以上のように構成された署名分散システムの動作を図３のフローチャートを用いて説明する。
【００４２】
まず、委託者装置１０は、署名対象メッセージｍと、メッセージｍへの署名（ｒ，ｓ）とを持っている。各パラメータは以下のような関係式（１），（２）を満たしている。
【００４３】
ｒ＝αｋ（ｍｏｄ ｐ）      …（１）
ｓ＝ｋ-1｛ｈ（ｍ）＋ｘ・ｒ｝（ｍｏｄ ｑ）      …（２）
ここで、署名（ｒ，ｓ）は、関係式（１），（２）を満たすものであれば、メッセージｍの内容や署名者が誰であるのかに制限が無い。例えば、このメッセージｍと署名（ｒ，ｓ）の対が電子現金を表してもよく、又は土地の権利書や免許証を表してもよい。なお、メッセージｍと署名（ｒ，ｓ）の対が電子現金の場合には、署名分散システムが適用された電子商取引システムが実現され、メッセージｍと署名（ｒ，ｓ）の対が権利書や免許証の場合には、署名分散システムが電子契約システムや電子政府システムが実現される。これら各電子処理システムは一例であり、任意のメッセージｍの内容に対応して任意の電子処理システムを実現可能となっている。
【００４４】
また、署名（ｒ，ｓ）の発行者は、委託者装置１０としてもよく、図示しない第三者装置としてもよい。委託者装置１０が発行者の場合、ｘが委託者装置１０の署名用秘密鍵となり、ｙが委託者装置１０の検証用公開鍵となる。また、引数ｚ0及びｚ1は、委託者装置１０と受託者装置２０とで共有された情報とするが、次のステップＳＴ１にて送信するようにしてもよい。
【００４５】
図３に示すように、委託者装置１０では、委託者の操作により、委託者内容管理部１１が委託内容を受託者装置２０に送信する（ＳＴ１）。なお、委託内容はメッセージｍを含んでもよく、また、署名の一部ｒを含んでもよい。
【００４６】
受託者装置２０では、受けた委託内容を受託するか否かの受託意志（肯定又は否定）を受託内容管理部２２から委託者装置１０に送信する（ＳＴ２）。ここで、受託意志は、受託者によりその都度判断された内容で送信されてもよいし、エラーやビジー等の異常の無い限りは全件受託する旨の設定により人間系の判断を介さずに送信されてもよい。
【００４７】
委託者装置１０では、委託内容管理部１１がこの受託意志を確認し（ＳＴ３）、受託意志が否定であると処理を終了し、受託意志が肯定であると、分散署名の生成要求を委託者署名管理部１２に送出する。
【００４８】
委託者署名管理部１２は、この生成要求を受けると、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５に送出する。
【００４９】
多項式生成部１５は、この多項式生成要求に従い、乗法群Ｚｑ＊から任意の乱数ｂを選択し（ｂ∈Ｚｑ＊）、次式（３）に示すように多項式ｆ(ｚ)を生成する（ＳＴ４）。
【００５０】
ｆ(ｚ)＝ｓ+ ｂ・ｚ（ｍｏｄ ｑ）      …（３）
しかる後、多項式生成部１５は、生成の際に、選択した乱数ｂと署名の一部ｒをコミット値計算部１４に送出すると共に、生成した多項式ｆ(ｚ)を署名分散値生成部１３に送出する。
【００５１】
コミット値計算部１４は、この乱数ｂと署名の一部ｒを用いて次式（４）に示すようにコミット値ｃを計算し（ＳＴ５）、このコミット値ｃを委託者署名管理部１２に送出する。
【００５２】
ｃ＝ｒｂ（ｍｏｄ ｐ）      …（４）
一方、署名分散値生成部１３は、前述した式（３）に対し、予め各装置１０，２０間で共有された引数ｚ0，ｚ1を用いて、次式（３−０），（３−１）に示すように２つの署名分散値ｓ0，ｓ1を計算し（ＳＴ６）、得られた署名分散値ｓ0，ｓ1を委託者署名管理部１２に送出する。
【００５３】
ｓ0＝ｆ(ｚ0)＝ｓ+ ｂ・ｚ0  （ｍｏｄ ｑ）    …（３−０）
ｓ1＝ｆ(ｚ1)＝ｓ+ ｂ・ｚ1  （ｍｏｄ ｑ）    …（３−１）
委託者署名管理部１２は、署名の一部ｒ、一方の署名分散値ｓ0及びコミット値ｃを委託内容管理部１１に送出し、委託内容管理部１１は、これらの各データｒ，ｓ0，ｃを受託者装置２０に送信する。
【００５４】
受託者装置２０においては、受託内容管理部２２が、受信した署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを受託者署名管理部２３に送出する。受託者署名管理部２３は、これらを保存し、署名分散値検証部２４にコミット値ｃと署名分散値ｓ0を送信して、署名分散値ｓ0の正当性検証を要求する。
【００５５】
署名分散値検証部２４は、署名分散値ｓ0、コミット値ｃ及び署名の一部ｒを用いて、署名分散値ｓ0の正当性を次の検証式（５−０）により検証し（ＳＴ７）、検証結果を受託者署名管理部２３を介して受託内容管理部２２に通知する。
【００５６】
【数４】
0004018370.tif 000003
【００５７】
受託内容管理部２２は、通知された署名分散値ｓ0の検証結果が正当性を示すとき、受託内容及びその処理要求を受託内容処理部２１に送出する。
【００５８】
受託内容処理部２１は、受託内容及びその処理要求に基づいて、受託内容の遂行処理を実行し（ＳＴ８）、処理結果を受託内容管理部２２に送出する。
【００５９】
受託内容管理部２２は、処理結果の内容に基づいて、処理結果（例、補足説明を要するとき）又は処理完了通知（例、成功／失敗など）を委託者装置１０に送信するための送信処理を実行する。
【００６０】
処理結果又は処理完了通知の送信処理としては、郵便、宅配便又は定期便（例、社内便）等で配布される紙媒体（例、葉書、封書等）の印字出力処理、インターネットのメール送信処理、ＦＡＸ送信処理、電話通信処理（音声案内処理又は制御コード送信など）、あるいはそれら各処理の組合せ処理のいずれでもよい。また、インターネット、ＦＡＸ又は電話等を用いる場合の通信方式は有線又は無線のいずれでもよい。また、処理結果を事前審査する第三者機関装置を介在させてもよく、この場合、処理結果や処理完了通知を同装置経由で送信してもよい。
【００６１】
委託者装置１０においては、委託内容管理部１１が、受けた処理結果又は委託内容完了通知を審査し（ＳＴ９）、正当と判断した場合のみ、他方の署名分散値ｓ1を委託者署名管理部１２に要求し、得られた署名分散値ｓ1を受託者装置２０に送信する。
【００６２】
ここで、審査は、委託者によりその都度判断された内容で実行されてもよいし（例、送信処理が紙媒体、ＦＡＸ又は電話を用いる場合）、予め設定された内容に基づいて人間系の判断を介さずに実行されてもよい（例、送信処理がメール、ＦＡＸ又は電話を用いる場合）。
【００６３】
なお、ＦＡＸ及び電話は、いずれにも該当するが、例えばＦＡＸの紙出力又は電話の音声案内の場合には委託者により判断され、ＦＡＸ又は電話の通信内容が文字コードや制御コード等で蓄積保存される場合には委託者又は設定内容により判断される。
【００６４】
一方、受託者装置２０においては、受託内容管理部２２が、受けた署名分散値ｓ1を受託者署名管理部２３に送出する。受託者署名管理部２３は、この署名分散値ｓ1を署名分散値検証部２４に送出し、署名分散値ｓ1の正当性の検証を要求する。
【００６５】
署名分散値検証部２４は、署名分散値ｓ1の正当性を次の検証式（５−１）により検証し（ＳＴ１０）、検証結果を受託者署名管理部２３に返信する。
【００６６】
【数５】
0004018370.tif 000004
【００６７】
受託者署名管理部２３は、受けた署名分散値の検証結果が正当である場合に、コミット値ｃ、署名の一部ｒ、署名分散値ｓ0，ｓ1を署名算出部２５に送信する。
【００６８】
署名算出部２５は、２つの署名分散値ｓ0，ｓ1から２つの式（３−０），（３−１）を用いて署名の一部ｓ及び乱数ｂを計算し（ＳＴ１１）、署名の一部ｓ及び乱数ｂを受託者署名管理部２３及び署名検証部２６に送出する。
【００６９】
署名検証部２６は、署名の一部ｓ及び乱数ｂを受けると、次の検証式（６）により署名（ｒ，ｓ）の正当性を検証すると共に、前述した式（４）によりコミット値ｃの正当性を検証し（ＳＴ１２）、各々の検証結果を受託者署名管理部２３に送出する。
【００７０】
ｒs＝αh(m)ｙr  （ｍｏｄ ｐ）      …（６）
なお、署名（ｒ，ｓ）の検証の際に、検証式（６）に代えて、（ｒ，ｓ，ｈ（ｍ））を用いたＤＳＡ（digital signature algorithm）の次の検証式（７）を適用してもよい。
【００７１】
【数６】
0004018370.tif 000005
【００７２】
受託者署名管理部２３は、署名（ｒ，ｓ）とコミット値ｃの各々の検証結果を受託内容管理部２２に送出する。受託内容管理部２２は、これらの検証結果に基づいて、署名受領通知を委託者装置１０に送信する。
【００７３】
委託者装置１０では、委託内容管理部１１がこの署名受領通知を確認し（ＳＴ１３）、署名授受に関する処理を終了する。
【００７４】
上述したように本実施形態によれば、委託者装置１０が、任意のメッセージｍを受託者装置２０に提示した後に、メッセージｍに対する署名（ｒ，ｓ）自体ではなく、署名授受を保証するｎ個の分散情報ｓiを時系列的に個別に、受託者装置２０に送信する。
【００７５】
一方、受託者装置２０は、全て揃ったｎ個の分散情報ｓiに基づいて署名（ｒ，ｓ）を復元することにより、メッセージｍの保証を得る。
【００７６】
すなわち、デジタル署名を授受する際に、１回で署名全体を授受するのではなく、ｎ個の分散情報を段階的に授受することにより、最終的にデジタル署名（ｒ，ｓ）を授受している。従って、各当事者をいずれも不利な状況にせず、公平な処理を実現させることができる。
【００７７】
（第２の実施形態）
図４は本発明の第２の実施形態に係る署名分散システムの概略構成を示す模式図であり、図５は同システムの構成を具体的に示す機能ブロック図であって、図１及び図２と同一又はほぼ同一機能の部分には同一符号を付し、機能を変更した部分にはアルファベットの添字を付して重複する機能の説明を省略し、ここでは異なる機能について主に述べる。なお、以下の各実施形態も同様にして重複した説明を省略する。
【００７８】
すなわち、本実施形態は、署名者に限定が無い第１の実施形態の変形例であり、図３６にも示したように、署名（ｒ，ｓ）を発行する機能を委託者装置１０が有する構成となっている。
【００７９】
具体的には図５に示すように、委託者装置１０ａは、前述した各部１１〜１５に加え、署名生成部１６を備えている。
これに伴い、委託者署名管理部１２ａは、前述した同部１２の機能に加え、委託内容管理部１１から受けた分散署名の生成要求に基づいて、署名生成部１６に署名生成要求を送出する機能と、署名生成部１６から受けた署名（ｒ，ｓ）を管理する機能とが付加されている。
【００８０】
署名生成部１６は、委託者署名管理部１２ａから受けた署名生成要求に基づいて署名（ｒ，ｓ）を生成する機能と、生成した署名（ｒ，ｓ）を委託者署名管理部１２に送出する機能とをもっている。
【００８１】
次に、以上のように構成された署名分散システムの動作を図６のフローチャートを用いて説明する。
【００８２】
始めに、署名（ｒ，ｓ）は未だ生成されていない状態にある。
ここで、委託内容を受託者装置２０に送信するステップＳＴ１から、受託意志を確認するＳＴ３までの処理は、前述同様に実行される。
【００８３】
すなわち、委託内容管理部１１は、ステップＳＴ３にて受託意志を確認し、受託意志が否定であると処理を終了し、受託意志が肯定であると、分散署名の生成要求を委託者署名管理部１２ａに送出する。
【００８４】
次に、委託者署名管理部１２ａは、分散署名の生成要求を受けると、前述とは異なり、署名生成部１６に署名生成要求を送出する。
【００８５】
署名生成部１６は、この署名生成要求に従い、乗法群Ｚｑ＊から任意の乱数ｋを選択し（ｋ∈Ｚｑ＊）、メッセージｍに対して、前述した式（１），（２）を満たす署名（ｒ，ｓ）を計算し（ＳＴ３−２）、この署名（ｒ，ｓ）を委託者署名管理部１２ａに送出する。
委託者署名管理部１２ａは、この署名（ｒ，ｓ）を保存した後、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５に送出する。
【００８６】
以下、前述同様に、ステップＳＴ４の多項式生成からステップＳＴ１３の署名受領通知の確認までの処理が実行される。
【００８７】
上述したように本実施形態によれば、第１の実施形態の効果に加え、委託者装置１０が委託側の全ての処理を実行するので、委託者が委託側の全ての処理を管理することができる。
また、受託意志を受けてから署名（ｒ，ｓ）を生成するので、第１の実施形態よりもメッセージｍの内容を自由に決めることができる。これは以下の各実施形態も同様である。
【００８８】
（第３の実施形態）
図７は本発明の第３の実施形態に係る署名分散システムの概略構成を示す模式図であり、図８は同システムの構成を具体的に示す機能ブロック図である。
【００８９】
本実施形態は、署名者を委託者に限定した第２の実施形態の変形例であり、委託者側に第三者装置３０ｂを設け、図３６にも示したように、委託者側の主な５つの機能のうち、受託者の遂行内容の審査機能と、署名分散値ｓ1の配布機能とを第三者装置３０ｂに委託した構成となっている。
【００９０】
これに伴い、委託者装置１０ｂは、委託内容管理部１１ｂが第三者装置３０ｂ宛の送信機能が付加されたものとなっている。
【００９１】
具体的には、委託内容管理部１１ｂは、前述した同部１１の機能に関し、委託の際に委託者署名管理部１２ｂから署名の一部ｒ、署名分散値ｓ1及びコミット値ｃを受けてこれらを委託内容と併せて第三者装置３０ｂに送信する機能が付加される一方、処理結果又は処理完了通知を審査する機能と審査結果に従って署名分散値ｓ1を受託者装置２０に送信する機能とが省略されている。
【００９２】
また、委託者署名管理部１２ｂは、前述した同部１２ａの機能に関し、委託内容管理部１１の審査結果に従って署名分散値ｓ1を送出する機能が省略される一方、この署名分散値ｓ1を委託の際に各データｒ，ｓ0，ｃと共に委託内容管理部１１ｂに送出する機能を有するものとなっている。
【００９３】
一方、受託者装置２０ｂは、第三者装置３０ｂの付加に伴い、受託内容管理部２２ｂが、第三者装置３０ｂに対する送受信機能が付加されたものとなっている。
【００９４】
具体的には、受託内容管理部２２ｂは、前述した同部２２の機能に関し、処理結果又は処理完了通知の送信機能と署名分散値ｓ1の受信機能とが第三者装置３０ｂを通信相手として実行される構成になっている。
【００９５】
また一方、第三者装置３０ｂは、審査内容管理部３１、第三者署名管理部３２及び第三者署名分散値検証部３３を備えている。
【００９６】
審査内容管理部３１は、委託者装置１０ｂから受けた委託内容を管理する機能と、委託者装置１０ｂから受けた署名の一部ｒ、署名分散値ｓ1及びコミット値ｃを第三者署名管理部３２に送出する機能と、受託者装置２０ｂから受けた処理結果又は処理完了通知を審査する機能と、この審査結果に従って第三者署名管理部３２から受けた署名分散値ｓ1を受託者装置２０ｂに送信する機能とをもっている。
【００９７】
第三者署名管理部３２は、審査内容管理部３１から受けた署名の一部ｒ、署名分散値ｓ1及びコミット値ｃを管理する機能と、署名の一部ｒ、署名分散値ｓ1及びコミット値ｃを第三者署名分散値検証部３３に送出して検証を要求する機能と、第三者署名分散値検証部３３から受けた署名分散値ｓ1の検証結果を管理する機能と、審査内容管理部３１の審査結果に従って要求された署名分散値ｓ1を審査内容管理部３１に送出する機能とをもっている。
【００９８】
第三者署名分散値検証部３３は、第三者署名管理部３２から受けた署名の一部ｒ、署名分散値ｓ1及びコミット値ｃに基づいて署名分散値ｓ1の正当性を検証する機能と、検証結果を第三者署名管理部３２に送出する機能とをもっている。
【００９９】
次に、以上のように構成された署名分散システムの動作を図９のフローチャートを用いて説明する。
【０１００】
始めに、委託内容を受託者装置に送信するステップＳＴ１から、署名分散値ｓ0，ｓ1を算出するステップＳＴ６までは、第２の実施形態と同様に実行される。なお、引数ｚ0，ｚ1等は各装置１０ｂ，２０ｂ及び３０ｂで共有されている。
【０１０１】
次に、委託者装置１０ｂにおいては、ステップＳＴ６を実行した委託者署名管理部１２ｂが、署名の一部ｒ、２つの署名分散値ｓ0，ｓ1及びコミット値ｃを委託内容管理部１１ｂに送出する。
【０１０２】
委託内容管理部１１ｂは、各データｒ，ｓ0，ｓ1，ｃを受けると、署名の一部ｒ、他方の署名分散値ｓ1及びコミット値ｃを第三者装置３０ｂに送信する。
【０１０３】
第三者装置３０ｂでは、審査内容管理部３１が署名の一部ｒ、署名分散値ｓ1及びコミット値ｃを第三者署名管理部３２に送出し、委託内容を保存する。
【０１０４】
第三者署名管理部３２は、署名の一部ｒ、署名分散値ｓ1及びコミット値ｃを第三者署名分散値検証部３３に送出して検証を要求する。
【０１０５】
第三者署名分散値検証部３３は、署名の一部ｒ、署名分散値ｓ1及びコミット値ｃに基づいて署名分散値ｓ1の正当性を検証し（ＳＴ１０ｔ）、検証結果を第三者署名管理部３２に送出する。
【０１０６】
三者署名管理部３２は、この検証結果を管理する。
【０１０７】
続いて、委託者装置１０ｂでは、委託内容管理部１１ｂが前述同様に各データｒ，ｓ0，ｃを受託者装置２０ｂに送信する。
【０１０８】
受託者装置２０ｂでは、前述同様にステップＳＴ７〜ＳＴ８が実行された後、前述とは異なり、処理結果又は処理完了通知が第三者装置３０ｂに送信される。
【０１０９】
第三者装置３０ｂでは、審査内容管理部３１が、受けた処理結果又は処理完了通知を審査し（ＳＴ９ｔ）、正当と判断した場合のみ、他方の署名分散値ｓ1を第三者署名管理部３２に要求し、得られた署名分散値ｓ1を受託者装置２０ｂに送信する。
【０１１０】
以下、前述同様に、ステップＳＴ１０の署名分散値ｓ1の正当性検証からステップＳＴ１３の署名受領通知の確認までの処理が実行される。
【０１１１】
上述したように本実施形態によれば、第２の実施形態の効果に加え、第三者装置３０ｂが分担した審査機能と署名分散値ｓ1の配布機能とに関して、委託者装置１０ｂの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０１１２】
（第４の実施形態）
図１０は本発明の第４の実施形態に係る署名分散システムの概略構成を示す模式図であり、図１１は同システムの構成を具体的に示す機能ブロック図である。
【０１１３】
本実施形態は、第３の実施形態の変形例であり、第三者装置３０ｂの権限を拡張した第三者装置３０ｃを設け、図３６にも示したように、委託者側の主な５つの機能のうち、前述した審査機能とｓ１の配布機能とに加え、署名分散値ｓ0，ｓ1を算出する機能と、署名分散値ｓ0を配布する機能とをも第三者装置３０ｃに委託した構成となっている。
【０１１４】
これに伴い、委託者装置１０ｃは、委託者署名管理部１２ｂが省略されると共に、他の各部１３〜１５が第三者装置３０ｃに配置され、機能が若干変形された委託内容管理部１１ｃ及び署名生成部１６ｃを備えた構成となっている。
【０１１５】
ここで、委託内容管理部１１ｃは、委託する内容を管理する機能と、委託内容を受託者装置２０ｃに提示する機能と、受託者装置２０ｃから受けた委託意志を確認する機能と、受託意志に従って署名生成部１ｃに署名の生成要求を行う機能と、署名生成部１６ｃから受けた署名（ｒ，ｓ）を保存する一方、委託内容と署名（ｒ，ｓ）とを第三者装置３０ｃに送信する機能と、受託者装置２０ｃから送られた署名受領通知を確認する機能とをもっている。
【０１１６】
署名生成部１６ｃは、委託内容管理部１１ｃからの署名生成要求に従い、署名（ｒ，ｓ）を生成する機能と、生成した署名（ｒ，ｓ）を委託内容管理部１１ｃに送信する機能とをもっている。
【０１１７】
一方、受託者装置２０ｃは、前述した受託内容管理部２２ｂに代えて、この受託内容管理部２２ｂの機能に関し、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを第三者装置３０ｃから受信するようにした受託内容管理部２２ｂを備えている。
【０１１８】
また一方、第三者装置３０ｃは、審査内容管理部３１ｃ、第三者署名管理部３２ｃ、署名分散値生成部１３ｔｃ、コミット値計算部１４ｔｃ、多項式生成部１５ｔｃ及び第三者署名検証部３４を備えている。
【０１１９】
審査内容管理部３１ｃは、委託者装置１０ｃから受けた委託内容を管理する機能と、委託者装置１０ｃから受けた署名を第三者署名管理部３２ｃに送出して署名分散値ｓ0，ｓ1の生成を要求する機能と、第三者署名管理部３２ｃから受けた署名の一部ｒ、署名分散値ｓ0（又はｓ1）及びコミット値ｃを受託者装置２０ｃに送信する機能と、受託者装置２０ｃから受けた処理結果又は処理完了通知を審査する機能と、この審査結果に従って第三者署名管理部３２ｃから受けた署名分散値ｓ１を受託者装置２０ｃに送信する機能とをもっている。
【０１２０】
第三者署名管理部３２ｃは、審査内容管理部３１ｃから受けた署名（ｒ，ｓ）を管理する機能と、署名（ｒ，ｓ）を第三者署名検証部３４に送出して検証を要求する機能と、審査内容管理部３１ｃから受けた署名分散値の生成要求に基づいて多項式生成部１５ｔｃに多項式の生成を要求する機能と、コミット値計算部１４ｔｃから受けたコミット値ｃ及び署名分散値生成部１３ｔｃから受けた署名分散値ｓ0，ｓ1を保存する機能と、管理する署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを審査内容管理部３１ｃに送出する機能と、審査内容管理部３１ｃの審査結果に従って要求された署名分散値ｓ1を審査内容管理部に送出する機能とをもっている。
【０１２１】
署名分散値生成部１３ｔｃは、前述した同部１３が第三者装置３０ｃに配置されたものであり、同部１３の機能に関し、生成した署名分散値ｓiの送出先を第三者署名管理部３２ｃとしたものである。
【０１２２】
コミット値計算部１４ｔｃは、前述した同部１４が第三者装置３０ｃに配置されたものであり、同部１４の機能に関し、計算したコミット値ｃの送出先を第三者署名管理部３２ｃとしたものである。
【０１２３】
多項式生成部１５ｔｃは、前述した同部１５が第三者装置３０ｃに配置されたものであり、同部１５の機能に関し、多項式生成の要求元を第三者署名管理部３２ｃとしたものである。
【０１２４】
第三者署名検証部３４は、第三者署名管理部３２ｃから受けた署名（ｒ，ｓ）の正当性を検証する機能と、検証結果を第三者署名管理部３２ｃに送出する機能とをもっている。
【０１２５】
次に、以上のように構成された署名分散システムの動作を図１２のフローチャートを用いて説明する。
【０１２６】
始めに、委託内容を受託者装置に送信するステップＳＴ１から、署名（ｒ，ｓ）を算出するステップＳＴ３−２までは、第３（又は第２）の実施形態と同様に実行される。
【０１２７】
続いて、委託内容管理部１１ｃは、署名生成部１６ｃから受けた署名（ｒ，ｓ）を保存する一方、委託内容と署名（ｒ，ｓ）とを第三者装置３０ｃに送信する。
【０１２８】
第三者装置３０ｃでは、審査内容管理部３１ｃがこの署名（ｒ，ｓ）を第三者署名管理部３２ｃに送出して署名分散値ｓ0，ｓ1の生成を要求し、委託内容を管理する。
【０１２９】
第三者署名管理部３２ｃは、署名（ｒ，ｓ）を第三者署名検証部３４へ送信し、署名（ｒ，ｓ）の検証を要求する。
【０１３０】
第三者署名検証部３４は、署名（ｒ，ｓ）の正当性を検証し、検証結果を第三者署名管理部３２ｃに送出する。
【０１３１】
第三者署名管理部３２ｃは、検証結果が署名（ｒ，ｓ）の正当性を示す場合に限り、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５ｔｃに送出する。
【０１３２】
ここで、前述したステップＳＴ４〜ＳＴ６と同様に、多項式を生成するステップＳＴ４ｔから、署名分散値ｓ0，ｓ1を算出するステップＳＴ６ｔまでが実行される。
【０１３３】
しかる後、第三者署名管理部３２ｃは、署名の一部ｒ、一方の署名分散値ｓ0及びコミット値ｃを審査内容管理部３１ｃに送出し、審査内容管理部３１ｃは、これらの各データｒ，ｓ0，ｃを受託者装置２０ｃに送信する。
【０１３４】
以下、ステップＳＴ７の署名分散値ｓ0の正当性検証からステップＳＴ１３の署名受領通知の確認までの処理が第３の実施形態と同様に実行される。
【０１３５】
上述したように本実施形態によれば、第３の実施形態の効果に加え、第三者装置３０ｃが分担した署名分散値ｓ0の算出機能と配布機能とに関して、委託者装置１０ｃの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０１３６】
（第５の実施形態）
図１３は本発明の第５の実施形態に係る署名分散システムの概略構成を示す模式図であり、図１４は同システムの構成を具体的に示す機能ブロック図である。
【０１３７】
本実施形態は、第１又は第２の実施形態の変形例であり、図３６にも示したように、署名（ｒ，ｓ）を発行する機能を第三者（署名）装置４０ｄが有する構成となっている。
【０１３８】
これに伴い、委託者装置１０ｄは、前述した各部１３〜１５に加え、第三者装置４０ｄによる署名を検証するための委託者署名検証部１７が付加され、また、機能が変形された委託内容管理部１１ｄ及び委託者署名管理部１２ｄを備えた構成となっている。
【０１３９】
ここで、委託者内容管理部１１ｄは、前述した同部１１の機能に加え、第三者装置４０ｄに署名生成要求を送信する機能と、第三者装置４０ｄから受けた署名（ｒ，ｓ）を保存する機能と、この署名（ｒ，ｓ）を委託者署名管理部１２ｄに送出する機能とが付加されている。
【０１４０】
委託者署名管理部１２ｄは、前述した同部１２の機能に加え、委託者内容管理部１１ｄから受けた署名（ｒ，ｓ）を委託者署名検証部１７に送出して検証を要求する機能と、委託者署名検証部１７から受けた検証結果を保存する機能とをもっている。
【０１４１】
委託者署名検証部１７は、委託者署名管理部１２ｄから受けた署名（ｒ，ｓ）を検証する機能と、検証結果を委託者署名管理部１２ｄに送出する機能とをもっている。
【０１４２】
第三者装置４０ｄは、第三者署名生成部１６ｔｄを備えている。
第三者署名生成部１６ｔｄは、前述した署名生成部１６が第三者装置４０ｄに配置されたものであり、同部１６の機能に関し、通信相手を委託者装置１０ｄとしたものである。
【０１４３】
次に、以上のように構成された署名分散システムの動作を図１５のフローチャートを用いて説明する。
【０１４４】
始めに、委託内容を受託者装置２０に送信するステップＳＴ１から、受託意志を確認するＳＴ３までの処理は、第２の実施形態と同様に実行される。
【０１４５】
すなわち、委託内容管理部１１ｄは、ステップＳＴ３にて受託意志を確認し、受託意志が否定であると処理を終了し、受託意志が肯定であると、署名の生成要求（発行依頼）を第三者装置４０ｄに送信する（ＳＴ３−１）。
【０１４６】
次に、第三者装置４０ｄでは、第三者署名生成部１６ｔｄが署名生成要求を受けると、前述同様に署名（ｒ，ｓ）を計算し（ＳＴ３−２ｔ）、この署名（ｒ，ｓ）を委託者装置１０ｄに送信する。
【０１４７】
委託者装置１０ｄでは、委託内容管理部１１ｄが、受信した署名（ｒ，ｓ）を保存すると共に、この署名（ｒ，ｓ）を委託者署名管理部１２ｄに送出する。
【０１４８】
委託者署名管理部１２ｄは、この署名（ｒ，ｓ）を保存の上、委託者署名検証部１７に署名（ｒ，ｓ）を送出し、署名（ｒ，ｓ）の検証を要求する。
【０１４９】
委託者署名検証部１７は、前述した式（７）により署名（ｒ，ｓ）の正当性を検証し、検証結果を委託者署名管理部１２ｄに送出する。
【０１５０】
委託者署名管理部１２ｄは、検証結果が正当である場合に限り、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５に送出する。
【０１５１】
以下、ステップＳＴ４の多項式生成からステップＳＴ１３の署名受領通知の確認までの処理が第１の実施形態と同様に実行される。
【０１５２】
上述したように本実施形態によれば、第１の実施形態の効果に加え、第三者装置４０ｄが分担した署名（ｒ，ｓ）の算出機能に関して、委託者装置１０ｄの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０１５３】
（第６の実施形態）
図１６は本発明の第６の実施形態に係る署名分散システムの概略構成を示す模式図であり、図１７は同システムの構成を具体的に示す機能ブロック図である。
【０１５４】
本実施形態は、第５の実施形態の変形例であり、図３６にも示したように、署名を発行する機能から署名分散値ｓ0，ｓ1を算出する機能までを第三者（署名）装置４０ｅが有する構成となっている。
【０１５５】
これに伴い、委託者装置１０ｅは、委託内容管理部１１ｅ及び委託者署名分散値検証部１８を備えている。
【０１５６】
委託内容管理部１１ｅは、委託者の委託内容を管理する機能と、委託内容を受託者装置２０に提示する機能と、受託者装置２０から受けた委託意志を確認する機能と、受託意志に従って第三者装置４０ｅに署名生成を依頼する機能と、第三者装置４０ｅから受けた署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを保存する機能と、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを委託者署名分散値検証部１８に送信して署名分散値ｓ0の検証を要求する機能と、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを受託者装置２０に送信する機能と、受託者装置２０から受けた処理結果又は処理完了通知を審査する機能と、委託処理結果又は処理完了通知の審査結果に従って第三者装置４０ｅに署名分散値ｓ1の送付を要求する機能と、第三者装置４０ｅから受けた署名分散値ｓ1を受託者装置２０に送信する機能と、受託者装置２０から受信した署名受領通知を確認する機能とをもっている。
【０１５７】
委託者署名分散値検証部１８は、委託内容管理部１１ｅから署名の一部ｒ、署名分散値ｓ0（又はｓ1）及びコミット値ｃを受けると、この署名分散値ｓ0（又はｓ1）の正当性を検証する機能と、検証結果を委託内容管理部１１ｅに送出する機能とをもっている。
【０１５８】
第三者装置４０ｅは、第三者署名生成部１６ｔｅ、第三者署名管理部１２ｔｅ、署名分散値生成部１３ｔｅ、コミット値計算部１４ｔｅ及び多項式生成部１５ｔｅを備えている。
【０１５９】
第三者署名管理部１２ｔｅは、委託者装置１０ｅから受けた署名生成要求（発行依頼）に基づいて、第三者署名生成部１６ｔｅに署名の生成を要求する機能と、第三者署名生成部１６ｔｅから受けた署名（ｒ，ｓ）を管理する機能と、多項式生成部１５ｔｅに多項式の生成を要求する機能と、コミット値計算部１４ｔｅから受けたコミット値ｃ及び署名分散値生成部１３ｔｅから受けた署名分散値ｓ0，ｓ1を保存する機能と、委託者装置１０から受けた１回目の署名分散値送付要求に基づいて、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを委託者装置１０に送信する機能と、委託者装置１０から受けた２回目の署名分散値送付要求に基づいて署名分散値ｓ1を委託者装置１０に送信する機能とををもっている。
【０１６０】
署名分散値生成部１３ｔｅは、前述した同部１３が第三者装置４０ｅに配置されたものであり、同部１３の機能に関し、生成した署名分散値ｓiの送出先を第三者署名管理部１２ｔｅとしたものである。
【０１６１】
コミット値計算部１４ｔｅは、前述した同部１４が第三者装置４０ｅに配置されたものであり、同部１４の機能に関し、計算したコミット値ｃの送出先を第三者署名管理部１２ｔｅとしたものである。
【０１６２】
多項式生成部１５ｔｅは、前述した同部１５が第三者装置４０ｅに配置されたものであり、同部１５の機能に関し、多項式生成の要求元を第三者署名管理部１２ｔｅとしたものである。
【０１６３】
第三者署名生成部１６ｔｅは、前述した署名生成部１６が第三者装置４０ｅに配置されたものであり、同部１６の機能に関し、通信相手を第三者署名管理部１２ｔｅとしたものである。
【０１６４】
次に、以上のように構成された署名分散システムの動作を図１８のフローチャートを用いて説明する。
【０１６５】
始めに、委託内容を受託者装置２０に送信するステップＳＴ１から、第三者装置４０ｅが署名（ｒ，ｓ）を計算するステップＳＴ３−２までの処理は、第５の実施形態と同様に実行される。
【０１６６】
但し、第三者署名部１６ｔｅは、第三者署名管理部１２ｔｅを介して署名生成要求を受ける。また、第三者署名部１６ｔｅは、この署名生成要求に基づいて、前述同様に署名（ｒ，ｓ）を計算すると（ＳＴ３−２ｔ）、前述とは異なり、この署名（ｒ，ｓ）を第三者署名管理部１２ｔｅに送出する。
【０１６７】
第三者署名管理部１２ｔｅは、この署名（ｒ，ｓ）を保存の上、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５ｔｅに送出する。
【０１６８】
ここで、前述したステップＳＴ４〜ＳＴ６と同様に、多項式を生成するステップＳＴ４ｔから、署名分散値ｓ0，ｓ1を算出するステップＳＴ６ｔまでが実行される。
【０１６９】
しかる後、第三者署名管理部１２ｔｅは、署名の一部ｒ、署名分散値ｓ0，ｓ1及びコミット値ｃを保存する。また、第三者署名管理部１２ｔｅは、委託者装置１０から署名分散値送付要求を受けると、この要求に基づいて、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを委託者装置１０ｅに送信する。
【０１７０】
委託者装置１０ｅでは、委託内容管理部１１ｅがこの署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを委託者署名分散値検証部１８に送出し、署名分散値ｓ0の検証を要求する。
【０１７１】
委託者署名分散値検証部１８は、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃに基づいて、署名分散値ｓ0の正当性を前述した検証式（５−０）により検証し（ＳＴ７ｃ）、検証結果を委託内容管理部１１ｅに返信する。
【０１７２】
委託内容管理部１１ｅは、受けた署名分散値ｓ0の検証結果が正当性を示すとき、署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを受託者装置２０に送信する。
【０１７３】
次に、前述したステップＳＴ７〜ＳＴ９と同様に、署名分散値ｓ0の正当性を検証するステップＳＴ７から、遂行内容を審査するステップＳＴ９までが実行される。
【０１７４】
但し、委託者装置１０では、委託内容管理部１１が、処理結果又は委託内容完了通知を審査し（ＳＴ９）、正当と判断した場合のみ、他方の署名分散値ｓ1を第三者装置４０ｅに要求する。
【０１７５】
第三者装置４０ｅは、この要求により、第三者署名管理部１２ｔｅが署名分散値ｓ1を委託者装置１０ｅに送信する（ＳＴ９−１ｔ）。
【０１７６】
委託者装置１０ｅは、委託内容管理部１１ｅがこの署名分散値ｓ1を委託者署名分散値検証部１８に送出し、署名分散値ｓ1の検証を要求する。
【０１７７】
委託者署名分散値検証部１８は、前述同様に、署名分散値ｓ1の正当性を検証し、検証結果を委託内容管理部１１ｅに送出する。
【０１７８】
委託内容管理部１１ｅは、受けた署名分散値ｓ0の検証結果が正当性を示すとき、署名分散値ｓ1を受託者装置２０に送信する（ＳＴ９−２ｃ）。
【０１７９】
以下、前述同様に、ステップＳＴ１０の署名分散値ｓ1の正当性検証からステップＳＴ１３の署名受領通知の確認までの処理が実行される。
【０１８０】
上述したように本実施形態によれば、第５の実施形態の効果に加え、第三者装置４０ｅが分担した署名分散値ｓ0，ｓ1の算出機能に関して、委託者装置１０ｃの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０１８１】
（第７の実施形態）
図１９は本発明の第７の実施形態に係る署名分散システムの概略構成を示す模式図であり、図２０は同システムの構成を具体的に示す機能ブロック図である。
【０１８２】
本実施形態は、第６の実施形態の変形例であり、図３６にも示したように、委託者装置１０ｆによる遂行内容の審査後、要求により第三者装置４０ｆが署名分散値ｓ1を受託者装置２０ｆに配布する構成となっている。
【０１８３】
これに伴い、委託者装置１０ｆでは、委託内容管理部１１ｆが、前述した同部１１ｅの機能に関し、第三者装置４０ｆから受けた署名分散値ｓ1を受託者装置２０ｆに送信する機能が省略されている。
【０１８４】
受託者装置２０ｆでは、受託内容管理部２２ｆが、前述した同部２２の機能に関し、署名分散値ｓ1の送信元を第三者装置４０ｆに代えた構成となっている。
【０１８５】
第三者装置４０ｆでは、第三者署名管理部１２ｔｆが、前述した同部１２ｔｅの機能に関し、署名分散値ｓ1の送信先が受託者装置２０ｆに変更されている。
【０１８６】
次に、以上のように構成された署名分散システムの動作を図２１のフローチャートを用いて説明する。
【０１８７】
始めに、委託内容を受託者装置２０に送信するステップＳＴ１から、第三者装置４０ｅが署名分散値ｓ1を送信するステップＳＴ９−１までの処理は、第６の実施形態と同様に実行される。
【０１８８】
但し、ステップＳＴ９−１の処理において、署名分散値ｓ1の送信先は、前述とは異なり、受託者装置２０ｆとなっている。すなわち、署名分散値ｓ1は、第三者装置４０ｆから直接的に受託者装置２０ｆに送信される。
【０１８９】
以下、前述同様に、ステップＳＴ１０の署名分散値ｓ1の正当性検証からステップＳＴ１３の署名受領通知の確認までの処理が実行される。
【０１９０】
上述したように本実施形態によれば、第６の実施形態の効果に加え、第三者装置４０ｆが分担した署名分散値ｓ1の配布機能に関して、委託者装置１０ｆの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０１９１】
（第８の実施形態）
図２２は本発明の第８の実施形態に係る署名分散システムの概略構成を示す模式図であり、図２３は同システムの構成を具体的に示す機能ブロック図である。
【０１９２】
本実施形態は、第７の実施形態の変形例であり、図３６にも示したように、委託者側の主な５つの機能のうち、署名分散値ｓ0を配布する機能を委託者装置１０ｇが有し、他の４つの機能を第三者装置４０ｇが有する構成となっている。
【０１９３】
これに伴い、委託者装置１０ｇは、委託内容管理部１１ｇの機能が若干変形されている。
【０１９４】
委託内容管理部１１ｇは、前述した同部１１ｆの機能に関し、処理結果等を審査する機能からその審査結果に基づいて署名分散値ｓ1を受託者装置２０ｇに送信するまでの機能が省略されたものとなっている。
【０１９５】
受託者装置２０ｇは、受託内容管理部２２ｇの機能が若干変形されている。
受託内容管理部２２ｇは、前述した同部２２ｆの機能に関し、処理結果又は処理完了通知の送信先を第三者装置４０ｇに代えた構成となっている。
【０１９６】
第三者装置４０ｇは、前述した同装置４０ｆに関し、審査内容管理部４１ｇが付加された構成となっている。
【０１９７】
審査内容管理部４１ｇは、委託者装置１０ｇから受けた署名生成要求（発行依頼）に基づいて第三者署名管理部１２ｔｇに署名生成を要求する機能と、委託者装置１０ｇから受けた委託内容を管理する機能と、第三者署名管理部１２ｔｇから受けた署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを委託者装置１０ｇに送信する機能と、受託者装置２０ｇから受けた処理結果又は処理完了通知を審査する機能と、委託処理結果又は処理完了通知の審査結果に従って第三者署名管理部１２ｔｇから受けた署名分散値ｓ1を受託者装置２０ｇに送信する機能とをもっている。但し、受託者装置２０ｇへ署名分散値ｓ1を送信する時、コミット値ｃや署名の一部ｒを含む関連情報を一緒に送信してもよい。
【０１９８】
第三者署名管理部１２ｔｇは、前述した同部１２ｔｆの機能に関し、通信相手が委託者装置１０ｆに代えて審査内容管理部４１ｇに変更されたものである。
【０１９９】
次に、以上のように構成された署名分散システムの動作を図２４のフローチャートを用いて説明する。
【０２００】
始めに、委託内容を受託者装置２０ｇに送信するステップＳＴ１から、受託者装置２０ｇが委託内容を遂行するステップＳＴ８までの処理は、第７の実施形態と同様に実行される。
【０２０１】
但し、受託者装置２０ｇでは、受託内容管理部２２ｇが、前述とは異なり、第三者装置４０ｇに処理結果又は処理完了通知を送信するための送信処理を実行する。
【０２０２】
第三者装置４０ｇでは、審査内容管理部４１ｇが、受けた処理結果又は委託内容完了通知を審査し（ＳＴ９ｔ）、正当と判断した場合のみ、他方の署名分散値ｓ1を委託者署名管理部１２ｔｇに要求し、得られた署名分散値ｓ1を受託者装置２０ｇに送信する（ＳＴ９−１ｔ）。
【０２０３】
以下、前述同様に、ステップＳＴ１０の署名分散値ｓ1の正当性検証からステップＳＴ１３の署名受領通知の確認までの処理が実行される。
【０２０４】
上述したように本実施形態によれば、第７の実施形態の効果に加え、第三者装置４０ｇが分担した遂行内容の審査機能に関して、委託者装置１０ｇの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０２０５】
（第９の実施形態）
図２５は本発明の第９の実施形態に係る署名分散システムの概略構成を示す模式図であり、図２６は同システムの構成を具体的に示す機能ブロック図である。
【０２０６】
本実施形態は、第７の実施形態の変形例であり、図３６にも示したように、委託者側の主な５つの機能のうち、遂行内容を審査する機能を委託者装置１０ｈが有し、他の４つの機能を第三者装置４０ｈが有する構成となっている。
【０２０７】
これに伴い、委託者装置１０ｈは、委託者署名分散値検証部１８が省略され、機能が若干変形された委託内容管理部１１ｈを備えている。
【０２０８】
委託内容管理部１１ｈは、前述した同部１１ｆの機能に関し、第三者装置４０ｈから署名の一部ｒ、署名分散値ｓ0，ｓ1及びコミット値ｃを受ける機能及びその関連機能（検証機能、送信機能等）が省略されたものとなっている。
【０２０９】
受託者装置２０ｈでは、前述した同部２２ｆの機能に関し、署名分散値ｓ0の送信元をも第三者装置４０ｈに代えた構成となっている。
【０２１０】
第三者装置４０ｈでは、第三者署名管理部１２ｔｈが、前述した同部１２ｔｅの機能に関し、署名分散値ｓ0の送信先が受託者装置２０ｈに変更されている。
【０２１１】
次に、以上のように構成された署名分散システムの動作を図２７のフローチャートを用いて説明する。
【０２１２】
始めに、委託内容を受託者装置２０に送信するステップＳＴ１から、第三者装置４０ｈが署名分散値ｓ0，ｓ1を算出するステップＳＴ６ｔまでの処理は、第７の実施形態と同様に実行される。
【０２１３】
ステップＳＴ６ｔの後、第三者署名管理部１２ｔｈは、署名の一部ｒ、署名分散値ｓ0，ｓ1及びコミット値ｃを保存するが、委託者装置１０ｈから署名分散値送付要求を受けると、前述とは異なり、受託者装置２０ｈに署名の一部ｒ、署名分散値ｓ0及びコミット値ｃを送信する。すなわち、乱数の一部ｒ、署名分散値ｓ0及びコミット値ｃは、第三者装置４０ｈから直接的に受託者装置２０ｆに送信される。
【０２１４】
以下、ステップＳＴ７の署名分散値ｓ0の正当性検証からステップＳＴ１３の署名受領通知の確認までの処理は、第７の実施形態と同様に実行される。
【０２１５】
上述したように本実施形態によれば、第７の実施形態の効果に加え、第三者装置４０ｈが分担した署名分散値ｓ0の配布機能に関して、委託者装置１０ｈの負荷を低減させる一方、受託者から見た信用度を高めることができる。
【０２１６】
（第１０の実施形態）
図２８は本発明の第１０の実施形態に係る署名分散システムの概略構成を示す模式図であり、図２９は同システムの構成を具体的に示す機能ブロック図である。
【０２１７】
本実施形態は、第７の実施形態の変形例であり、図３６にも示したように、前述した第三者装置４０ｆの機能を、２つの第三者装置３０ｉ，４０ｉに分割した構成となっている。
【０２１８】
ここで、第三者装置３０ｉは、前述した第三者装置４０ｆの各部のうち、第三者署名管理部１２ｔｆ、署名分散値生成部１３ｔｅ、コミット値計算部１４ｔｅ及び多項式生成部１５ｔｅを有し、さらに、第三者署名検証部１９が付加されたものである。
【０２１９】
これに伴い、第三者署名管理部１２ｔｆは、前述した機能に加え、他方の第三者装置４０ｉから受けた署名（ｒ，ｓ）を管理する機能と、署名（ｒ，ｓ）を第三者署名検証部１９に送出して検証を要求する機能とが付加されている。
【０２２０】
第三者署名検証部１９は、第三者署名管理部１２ｔｆから受けた署名（ｒ，ｓ）の正当性を検証する機能と、検証結果を第三者署名管理部１２ｔｆに送出する機能とをもっている。
【０２２１】
第三者装置４０ｉは、前述した第三者装置４０ｆの各部のうち、第三者署名生成部１６ｔｅを備えたものである。なお、第三者署名生成部１６ｔｅは、第三者署名管理部１２ｔｆから受けた署名生成要求に基づいて署名（ｒ，ｓ）を生成する機能と、生成した署名（ｒ，ｓ）を第三者署名管理部１２ｔｆに送信する機能とをもつものである。
【０２２２】
次に、以上のように構成された署名分散システムの動作を図３０のフローチャートを用いて説明する。
【０２２３】
始めに、委託内容を受託者装置２０に送信するステップＳＴ１から、署名の生成要求を第三者装置３０ｉに送信するステップ３−１までの処理は、第７の実施形態と同様に実行される。
【０２２４】
第三者装置３０ｉでは、第三者署名管理部１６ｔｅがこの署名生成要求を署名用の第三者装置４０ｉに転送する。
【０２２５】
署名用の第三者装置４０ｉでは、第三者署名生成部１６ｔｅが署名生成要求を受けると、前述同様に署名（ｒ，ｓ）を計算し（ＳＴ３−２ｔ）、この署名（ｒ，ｓ）を要求元の第三者装置３０ｉに送信する。
【０２２６】
第三者装置３０ｉでは、第三者署名管理部１２ｔｆが、受信した署名（ｒ，ｓ）を保存すると共に、この署名（ｒ，ｓ）を第三者署名検証部１９に送出し、署名（ｒ，ｓ）の検証を要求する。
【０２２７】
第三者署名検証部１９は、署名（ｒ，ｓ）の正当性を検証し、検証結果を第三者署名管理部１２ｔｆに送出する。
【０２２８】
第三者署名管理部１２ｔｆは、検証結果が正当である場合に限り、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５ｔｅに送出する。
【０２２９】
以下、ステップＳＴ４ｔの多項式生成からステップＳＴ１３の署名受領通知の確認までの処理が第７の実施形態と同様に実行される。
【０２３０】
上述したように本実施形態によれば、第７の実施形態の効果に加え、２台の第三者装置３０ｉ，４０ｉが互いに機能を分担するので、個々の第三者装置３０ｉ，４０ｉの負荷を低減させることができる。
【０２３１】
（第１１の実施形態）
図３１は本発明の第１１の実施形態に係る署名分散システムの概略構成を示す模式図であり、図３２は同システムの構成を具体的に示す機能ブロック図である。
【０２３２】
本実施形態は、第９の実施形態の変形例であり、図３６にも示したように、前述した第三者装置４０ｈの機能を、２つの第三者装置３０ｊ，４０ｊに分割した構成となっている。
【０２３３】
ここで、第三者装置３０ｊは、前述した第三者装置４０ｈの各部のうち、第三者署名管理部１２ｔｈ、署名分散値生成部１３ｔｅ、コミット値計算部１４ｔｅ及び多項式生成部１５ｔｅを有し、さらに、第三者署名検証部１９ｊが付加されたものである。
【０２３４】
第三者署名管理部１２ｔｈは、前述した機能に加え、他方の第三者装置４０ｊから受けた署名（ｒ，ｓ）を管理する機能と、署名（ｒ，ｓ）を第三者署名検証部１９ｊに送出して検証を要求する機能とが付加されている。
【０２３５】
第三者署名検証部１９ｊは、前述同様に、第三者署名管理部１２ｔｈから受けた署名（ｒ，ｓ）の正当性を検証し、検証結果を第三者署名管理部１２ｔｈに送出するものである。
【０２３６】
第三者装置４０ｊは、前述した第三者装置４０ｈの各部のうち、第三者署名生成部１６ｔｅを備えたものである。第三者署名生成部１６ｔｅは、前述同様に、第三者署名管理部１２ｔｆから受けた署名生成要求に基づいて署名（ｒ，ｓ）を生成し、得られた署名（ｒ，ｓ）を第三者署名管理部１２ｔｈに送信するものである。
【０２３７】
次に、以上のように構成された署名分散システムの動作を図３３のフローチャートを用いて説明する。
【０２３８】
始めに、委託内容を受託者装置２０に送信するステップＳＴ１から、署名の生成要求を第三者装置３０ｊに送信するステップ３−１までの処理は、第９の実施形態と同様に実行される。
【０２３９】
第三者装置３０ｊでは、第三者署名管理部１６ｔｅがこの署名生成要求を署名用の第三者装置４０ｊに転送する。
【０２４０】
署名用の第三者装置４０ｊでは、第三者署名生成部１６ｔｅが署名生成要求を受けると、前述同様に署名（ｒ，ｓ）を計算し（ＳＴ３−２ｔ）、この署名（ｒ，ｓ）を要求元の第三者装置３０ｊに送信する。
【０２４１】
第三者装置３０ｊでは、第三者署名管理部１２ｔｈが、受信した署名（ｒ，ｓ）を保存すると共に、この署名（ｒ，ｓ）を第三者署名検証部１９ｊに送出し、署名（ｒ，ｓ）の検証を要求する。
【０２４２】
第三者署名検証部１９ｊは、署名（ｒ，ｓ）の正当性を検証し、検証結果を第三者署名管理部１２ｔｊに送出する。
【０２４３】
第三者署名管理部１２ｔｈは、検証結果が正当である場合に限り、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５ｔｅに送出する。
【０２４４】
以下、ステップＳＴ４ｔの多項式生成からステップＳＴ１３の署名受領通知の確認までの処理が第９の実施形態と同様に実行される。
【０２４５】
上述したように本実施形態によれば、第９の実施形態の効果に加え、２台の第三者装置３０ｊ，４０ｊが互いに機能を分担するので、個々の第三者装置３０ｊ，４０ｊの負荷を低減させることができる。
【０２４６】
なお、上記第２〜第１１の実施形態は、図３６に示すように委託者と第三者との機能分担を代えた場合を説明したが、これに限らず、図３６に示した機能分担とは異なる機能分担としてもよい。
【０２４７】
具体的には、第２〜第１１の実施形態に対応する「署名（ｒ，ｓ）を発行」から「署名分散値ｓ1を配布」までの５つの機能に関し、委託者と第三者との機能分担が図３６に無い組合せであっても、本発明を同様に実施することができる。
【０２４８】
換言すると、５つの機能に関する委託者と第三者との機能分担は、全て第三者で処理する１通りを除き、全部で２5−１（＝３１）通りがある。このうち、第２〜第９の実施形態の８通りを除く２３（＝３１−８）通りのいずれの組合せであっても、本発明を同様に実施して同様の効果を得ることができる。
【０２４９】
同様に、第１０〜第１１の実施形態に対応する「署名（ｒ，ｓ）を発行」を第三者Ａ（署名者）が行なう場合の残りの「署名分散値ｓ0，ｓ1を算出」から「署名分散値ｓ1を配布」までの４つの機能に関し、委託者と第三者Ｂとの機能分担が図３６に無い組合せであっても、同様に実施することができる。
【０２５０】
換言すると、残り４つの機能に関する委託者と第三者Ｂとの機能分担は、全て委託者又は第三者Ｂで処理する２通りを除き、全部で２4−２（＝１４）通りがある。このうち、第１０〜第１１の実施形態と重複する２通りを除く１２（＝１４−２）通りのいずれの組合せであっても、本発明を同様に実施して同様の効果を得ることができる。
【０２５１】
また、残り４つの機能を、委託者と第三者Ｂとの機能分担に限らず、委託者、第三者Ａ及び第三者Ｂの機能分担とするように変形しても、本発明を同様に実施できることは言うまでもない。
【０２５２】
（第１２の実施形態）
図３４は本発明の第１２の実施形態に係る署名分散システムの概略構成を示す模式図である。
【０２５３】
すなわち、本実施形態は、２個の署名分散値ｓ0，ｓ1を用いる第１〜第１１の実施形態の変形例であり、図３６にも示したように、署名分散値の個数を２個以上の複数ｎ個に拡張したものである。
【０２５４】
本実施形態は具体的には、第１〜第１１の実施形態のうち、任意の実施形態に用いた委託者装置１０ｘ、第三者装置３０ｘ及び第三者（署名）装置４０ｘに適用される委託者側装置５０と、委託者側と同一の実施形態に用いた受託者装置２０ｘに適用される受託者装置２０ｋとを備えている。但し、以下の説明は、第１の実施形態に適用した場合を代表例に挙げて述べる。
【０２５５】
委託者側装置５０では、署名分散値ｓiの個数をｎ個に拡張したことに伴い、前述した機能に関し、図２に示す多項式生成部１５がｎ−１個の乱数ｂjとｎ項の多項式ｆ(ｚ)とを生成可能となっており、署名分散値生成部１３がｎ個の署名分散値ｓiを生成可能となっており、コミット値計算部１４がｎ−１個のコミット値ｃjを生成可能となっている。
【０２５６】
なお、０≦ｉ≦ｎ−１、１≦ｊ≦ｎ−１である。また、ｎ−１個の引数ｚiは、委託者側装置５０及び受託者装置２０ｋとで共有されている。
【０２５７】
一方、受託者装置２０ｋは、署名分散値ｓiの個数をｎ個に拡張したことに伴い、前述した機能に関し、図２に示す署名分散値検証部２４が後述する検証式（１１）を用いるものとなっており、また、署名算出部２５が署名の一部ｒ、ｎ個の署名分散値ｓi及びｎ−１個のコミット値ｃjから署名の一部ｓ及び乱数ｂjを算出可能となっている。
【０２５８】
次に、以上のように構成された署名分散システムの動作を図３５のフローチャートと前述した図２を参照して説明する。
【０２５９】
始めに、委託内容を受託者装置２０ｋに送信するステップＳＴ１から、受託意志を確認するＳＴ３までの処理は、第１の実施形態と同様に実行される。
【０２６０】
すなわち、委託者側装置５０では、委託内容管理部１１がステップＳＴ３にて受託意志を確認し、受託意志が肯定であるときのみ、分散署名の生成要求を委託者署名管理部１２に送出する。
【０２６１】
委託者署名管理部１２は、この生成要求を受けると、多項式生成要求及び署名（ｒ，ｓ）を多項式生成部１５に送出する。
【０２６２】
多項式生成部１５は、この多項式生成要求に従い、乗法群Ｚｑ＊からｎ−１個の任意の乱数ｂjを選択し（ｂj∈Ｚｑ＊）、次式（８）に示すように多項式ｆ(ｚ)を生成する（ＳＴ４）。
【０２６３】
ｆ(ｚ)＝ｓ+ｂ1・ｚ＋ｂ2・ｚ2＋…＋ｂn-1・ｚn-1 （ｍｏｄ ｑ）…（８）
しかる後、多項式生成部１５は、生成の際に、選択した乱数ｂjと署名の一部ｒをコミット値計算部１４に送出すると共に、生成した多項式ｆ(ｚ)を署名分散値生成部１３に送出する。
【０２６４】
コミット値計算部１４は、この乱数ｂjと署名の一部ｒを用いて次式（９）に示すようにｎ−１個のコミット値ｃjを計算し（ＳＴ５）、このコミット値ｃjを委託者署名管理部１２に送出する。
【０２６５】
ｃj＝ｒbj（ｍｏｄ ｐ）      …（９）
一方、署名分散値生成部１３は、前述した式（８）に対し、予め各装置５０，２０ｋ間で共有された引数ｚ0，…，ｚn-1を個別に代入して、次式（１０）に示すようにｎ個の署名分散値ｓ0，…，ｓn-1を計算し（ＳＴ６）、得られた署名分散値ｓ0，…，ｓn-1を委託者署名管理部１２に送出する。
【０２６６】
ｓi＝ｆ(ｚi)＝ｓ+ｂ1・ｚi＋ｂ2・ｚi2＋…＋ｂn-1・ｚin-1 （ｍｏｄ ｑ）…（１０）
委託者署名管理部１２は、署名の一部ｒ、１つ目の署名分散値ｓ0及びコミット値ｃを委託内容管理部１１に送出し、委託内容管理部１１は、これらの各データｒ，ｓ0，ｃを受託者装置２０ｋに送信する。
【０２６７】
受託者装置２０ｋは、前述同様に、ステップＳＴ７の署名分散値ｓ0の正当性から、ステップＳＴ１０の署名分散値ｓ1の正当性検証までの処理を実行する。
【０２６８】
但し、ステップＳＴ８〜ＳＴ１０の処理は、署名分散値ｓiの個数がｎ個あることに基づき、合計ｎ−１回繰り返される。
【０２６９】
また、ステップＳＴ１０1〜１０n-1における署名分散値ｓ1，…，ｓn-1の検証処理は、署名分散値検証部２４により次の検証式（１１）を用いて実行される。
【０２７０】
【数７】
0004018370.tif 000006
【０２７１】
また、署名分散値検証部２４は、各々の署名分散値ｓiの検証結果をその都度、受託者署名管理部２３に返信する。
【０２７２】
ここで、以上のようなｎ−１回の繰返し処理について具体的に説明する。
【０２７３】
例えば、委託者側装置５０は、委託内容のうち、受託者装置２０ｋが遂行した委託部分に応じて署名分散値ｓ1，…，ｓn-1を渡していく場合を考える。この例では、委託内容は、９章で成る英文書物の翻訳であるとする。また、署名（ｒ，ｓ）は、翻訳料金に相当する電子マネーへの署名、又は翻訳料の支払契約書への署名とする。
【０２７４】
委託者側装置５０は、式（７）〜（９）により、１０個の署名分散値ｓ0，ｓ1，…，ｓ9を計算する。受託者装置２０ｋは、翻訳前に契約の証明用として、署名分散値ｓ0を受ける。その後、受託者装置２０ｋは、１章の翻訳を終える毎に、対応した署名分散値ｓ1，…，ｓn-1のいずれかを送信してもらう。
【０２７５】
これにより、受託者装置２０ｋは、その都度、署名分散値ｓiの正当性を検証することで、一章分の報酬又は完了の証拠を確認及び取得しながら、次章の翻訳へと処理を進めることができる。すなわち、各署名分散値ｓ0，ｓ1〜ｓn-1が、口論時に、受託者の仕事量を示す確かな証拠として機能する。
【０２７６】
さて、以上のような繰返し処理が完了すると、受託者署名管理部２３は、署名分散値検証部２４から受けた全ての署名分散値ｓ0，…，ｓn-1の検証結果が正当である場合に、コミット値ｃj、署名の一部ｒ、署名分散値ｓ0，…，ｓn-1を署名算出部２５に送信する。
【０２７７】
署名算出部２５は、ｎ個の署名分散値ｓ0，…，ｓn-1と、各署名分散値ｓi毎に前述した式（１０）を用いて署名の一部ｓ及びｎ−１個の乱数ｂjを計算し（ＳＴ１１）、署名の一部ｓ及び乱数ｂjを受託者署名管理部２３及び署名検証部２６に送出する。
【０２７８】
以下、ステップＳＴ１２の署名（ｒ，ｓ）及びコミット値ｃjの正当性検証からステップＳＴ１３の署名受領通知の確認までの処理が、第１の実施形態と同様に実行される。
【０２７９】
上述したように本実施形態によれば、第１〜第１１の実施形態の効果に加え、署名分散値ｓiの個数を任意のｎ個に拡張したことから、ｎ−１回の各段階毎に遂行可能な任意の委託内容に対しても適用を図ることができる。
【０２８０】
なお、本実施形態は、第１の実施形態に適用した場合を代表例として述べたが、これに限らず、第２〜第１１の実施形態又は第１１の実施形態で述べた変形例のいずれに適用しても、同様の作用効果を得ることができる。
【０２８１】
また、本実施形態は、委託者側装置５０を構成する各装置の数を最大でｎ個まで増やしても良い。この場合、例えばサーバのメンテナンスを円滑に行なうことができる。また、契約の段階によって異なる第三者装置から分散情報ｓiを配布するといった形態も実施できる。
【０２８２】
なお、上記第１〜第１２の実施形態では、ｎ個の分散情報のうちの全て（ｎ個）が揃うと、デジタル署名が復元可能となる（ｎ，ｎ）しきい値秘密分散方式として動作させる場合について説明したが、これに限らず、ｎ個の分散情報のうちの任意のｋ個が揃うと、デジタル署名が復元可能となる（ｋ，ｎ）しきい値秘密分散方式として動作させる構成に変形しても、本発明を同様に実施して同様の効果を得ることができ、さらに信頼性の向上を図ることができる。
【０２８３】
例えば（ｎ，ｎ）しきい値秘密分散方式の場合、受託者装置では、ｎ個の分散情報を全て揃える必要があるので、委託者側装置内の複数台の配布装置（合計で複数台の、委託者装置及び／又は１台以上の第三者装置）から分散情報が配布される場合には、各配布装置が１台でも異常になると、分散情報が揃わず、署名を復元できなくなってしまう。
【０２８４】
一方、（ｋ，ｎ）しきい値秘密分散方式の場合には、受託者装置では、ｎ個の分散情報のうちのｋ個を揃えればよいので、委託者側装置内の各配布装置から分散情報が配布される場合に、各配布装置の分散情報の配分にもよるが、各配布装置が数台異常になっても、ｋ個の分散情報を揃えることができ、署名を復元できる。
【０２８５】
このため、委託者側装置の複数の配布装置から分散情報を配布する場合などには、（ｋ，ｎ）しきい値秘密分散方式を用いることにより、一層、信頼性を向上させることができる。
【０２８６】
補足すると、しきい値ｋとは、分散情報の総数ｎよりも小さい値（ｋ＜ｎ）であり、且つ秘密情報を復元可能となる分散情報の個数ｋのことである。例えば、ｎ＝３、ｋ＝２の場合、しきい値ｋは、３つの分散情報のうち、２つの分散情報が揃えば、署名の一部ｓが復元可能となることを意味している。
【０２８７】
用途としては、例えば第１〜第３の第三者装置（サーバ）Ａ，Ｂ，Ｃがあり、プロセス＃１、＃２がある場合を考える。また、この場合、プロセス＃１が完了すると、第１の第三者装置Ａから１つの分散情報を送り、プロセス＃２が完了すると、第２の第三者装置Ｂから他の１つの分散情報を送る予定である、とする。
【０２８８】
このとき、（ｋ，ｎ）しきい値秘密分散方式によれば、途中で第２の第三者装置Ｂが故障しても、Ｂの代わりに第３の第三者装置Ｃが１つの分散情報を送るので、受託者装置では、ｃから受けた分散情報により、合計２つの分散情報が揃って、秘密情報（署名）を復元できる。この場合、第三者装置Ｃは、異常時の保険（フェイルセーフ）用の装置として機能する。
【０２８９】
また、上記各実施形態に記載した手法は、コンピュータに実行させることのできるプログラムとして、磁気ディスク（フロッピー（登録商標）ディスク、ハードディスクなど）、光ディスク（ＣＤ−ＲＯＭ、ＤＶＤなど）、光磁気ディスク（ＭＯ）、半導体メモリなどの記憶媒体に格納して頒布することもできる。
【０２９０】
また、この記憶媒体としては、プログラムを記憶でき、かつコンピュータが読み取り可能な記憶媒体であれば、その記憶形式は何れの形態であっても良い。
【０２９１】
また、記憶媒体からコンピュータにインストールされたプログラムの指示に基づきコンピュータ上で稼働しているＯＳ（オペレーティングシステム）や、データベース管理ソフト、ネットワークソフト等のＭＷ（ミドルウェア）等が本実施形態を実現するための各処理の一部を実行しても良い。
【０２９２】
さらに、本発明における記憶媒体は、コンピュータと独立した媒体に限らず、ＬＡＮやインターネット等により伝送されたプログラムをダウンロードして記憶または一時記憶した記憶媒体も含まれる。
【０２９３】
また、記憶媒体は１つに限らず、複数の媒体から本実施形態における処理が実行される場合も本発明における記憶媒体に含まれ、媒体構成は何れの構成であっても良い。
【０２９４】
尚、本発明におけるコンピュータは、記憶媒体に記憶されたプログラムに基づき、本実施形態における各処理を実行するものであって、パソコン等の１つからなる装置、複数の装置がネットワーク接続されたシステム等の何れの構成であっても良い。
【０２９５】
また、本発明におけるコンピュータとは、パソコンに限らず、情報処理機器に含まれる演算処理装置、マイコン等も含み、プログラムによって本発明の機能を実現することが可能な機器、装置を総称している。
【０２９６】
なお、本願発明は、上記各実施形態に限定されるものでなく、実施段階ではその要旨を逸脱しない範囲で種々に変形することが可能である。また、各実施形態は可能な限り適宜組合せて実施してもよく、その場合、組み合わされた効果が得られる。さらに、上記各実施形態には種々の段階の発明が含まれており、開示される複数の構成用件における適宜な組合せにより種々の発明が抽出され得る。例えば実施形態に示される全構成要件から幾つかの構成要件が省略されることで発明が抽出された場合には、その抽出された発明を実施する場合には省略部分が周知慣用技術で適宜補われるものである。
【０２９７】
その他、本発明はその要旨を逸脱しない範囲で種々変形して実施できる。
【０２９８】
【発明の効果】
以上説明したように本発明によれば、デジタル署名を授受する際に、各当事者をいずれも不利な状況にせず、公平な処理を実現できる。
【図面の簡単な説明】
【図１】本発明の第１の実施形態に係る署名分散システムの概略構成を示す模式図
【図２】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図３】同実施形態における動作を説明するためのフローチャート
【図４】本発明の第２の実施形態に係る署名分散システムの概略構成を示す模式図
【図５】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図６】同実施形態における動作を説明するためのフローチャート
【図７】本発明の第３の実施形態に係る署名分散システムの概略構成を示す模式図
【図８】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図９】同実施形態における動作を説明するためのフローチャート
【図１０】本発明の第４の実施形態に係る署名分散システムの概略構成を示す模式図
【図１１】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図１２】同実施形態における動作を説明するためのフローチャート
【図１３】本発明の第５の実施形態に係る署名分散システムの概略構成を示す模式図
【図１４】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図１５】同実施形態における動作を説明するためのフローチャート
【図１６】本発明の第６の実施形態に係る署名分散システムの概略構成を示す模式図
【図１７】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図１８】同実施形態における動作を説明するためのフローチャート
【図１９】本発明の第７の実施形態に係る署名分散システムの概略構成を示す模式図
【図２０】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図２１】同実施形態における動作を説明するためのフローチャート
【図２２】本発明の第８の実施形態に係る署名分散システムの概略構成を示す模式図
【図２３】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図２４】同実施形態における動作を説明するためのフローチャート
【図２５】本発明の第９の実施形態に係る署名分散システムの概略構成を示す模式図
【図２６】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図２７】同実施形態における動作を説明するためのフローチャート
【図２８】本発明の第１０の実施形態に係る署名分散システムの概略構成を示す模式図
【図２９】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図３０】同実施形態における動作を説明するためのフローチャート
【図３１】本発明の第１１の実施形態に係る署名分散システムの概略構成を示す模式図
【図３２】同実施形態における署名分散システムの構成を具体的に示す機能ブロック図
【図３３】同実施形態における動作を説明するためのフローチャート
【図３４】本発明の第１２の実施形態に係る署名分散システムの概略構成を示す模式図
【図３５】同実施形態における動作を説明するためのフローチャート
【図３６】本発明の各実施形態の概要を示す模式図
【符号の説明】
１０，１０ａ〜１０ｇ…委託者装置
１１，１１ｂ〜１１ｈ…委託内容管理部
１２，１２ａ，１２ｄ，１２ｔｅ〜１２ｔｈ…委託者署名管理部
１３，１３ｔｃ，１３ｔｅ…署名分散値生成部
１４，１４ｔｃ，１４ｔｅ…コミット値計算部
１５，１５ｔｃ，１５ｔｅ…多項式生成部
１６，１６ｃ…署名生成部
１６ｔｄ…第三者署名生成部
１７…委託者署名検証部
１８…委託者署名分散値検証部
２０，２０ｂ，２０ｃ，２０ｆ〜２０ｈ，２０ｋ…受託者装置
２１…受託内容処理部
２２，２２ｂ，２２ｃ，２２ｆ〜２２ｈ…受託内容管理部
２３…受託者署名管理部
２４…署名分散値検証部
２５…署名算出部
２６…署名検証部
３０ｂ，３０ｃ，３０ｉ，３０ｊ…第三者装置
３１…審査内容管理部
３２，３２ｃ…第三者署名管理部
３３…第三者署名分散値検証部
３４…第三者署名検証部
４０ｄ〜４０ｊ…第三者（署名）装置
５０…委託者側装置
【図１】
0004018370.tif 000009
【図２】
0004018370.tif 000010
【図３】
0004018370.tif 000011
【図４】
0004018370.tif 000012
【図５】
0004018370.tif 000013
【図６】
0004018370.tif 000014
【図７】
0004018370.tif 000015
【図８】
0004018370.tif 000016
【図９】
0004018370.tif 000017
【図１０】
0004018370.tif 000018
【図１１】
0004018370.tif 000019
【図１２】
0004018370.tif 000020
【図１３】
0004018370.tif 000021
【図１４】
0004018370.tif 000022
【図１５】
0004018370.tif 000023
【図１６】
0004018370.tif 000024
【図１７】
0004018370.tif 000025
【図１８】
0004018370.tif 000026
【図１９】
0004018370.tif 000027
【図２０】
0004018370.tif 000028
【図２１】
0004018370.tif 000029
【図２２】
0004018370.tif 000030
【図２３】
0004018370.tif 000031
【図２４】
0004018370.tif 000032
【図２５】
0004018370.tif 000033
【図２６】
0004018370.tif 000034
【図２７】
0004018370.tif 000035
【図２８】
0004018370.tif 000036
【図２９】
0004018370.tif 000037
【図３０】
0004018370.tif 000038
【図３１】
0004018370.tif 000039
【図３２】
0004018370.tif 000040
【図３３】
0004018370.tif 000041
【図３４】
0004018370.tif 000042
【図３５】
0004018370.tif 000043
【図３６】
0004018370.tif 000044