(57)【特許請求の範囲】
【請求項１】
通信ネットワークを介して寄託者装置、運営者装置および受託者装置がそれぞれ相互に通信可能に接続され、
上記寄託者装置は、
分散保持の対象である所定のデータ（寄託データ）を記憶する記憶手段と、
寄託データを用いて生成された、寄託データ量に依存しないデータ量を有する情報（検証情報）を生成する検証情報生成手段と、
寄託データを受託者装置に送信する対受託者装置送信手段と、
検証情報生成手段によって生成された検証情報を運営者装置に送信する対運営者装置送信手段と
を備え、
上記運営者装置は、
所定の値（識別子）を記憶する記憶手段と、
寄託者装置の対運営者装置送信手段によって送信された検証情報を受信する対寄託者装置受信手段と、
認証情報を生成するための認証情報生成因子を、上記識別子を用いて生成する認証情報生成因子生成手段と、
認証情報生成手段によって生成された認証情報生成因子を受託者装置に送信する対受託者装置送信手段と、
受託者装置の対運営者装置送信手段によって送信された認証情報を受信する対受託者装置受信手段と、
対受託者装置受信手段によって受信した認証情報と、対寄託者装置受信手段によって受信した検証情報との間において、所定の関係が成立するか否かを判定する判定手段と
を備え、
上記受託者装置は、
寄託者装置の対受託者装置送信手段によって送信された寄託データを受信する対寄託者装置受信手段と、
運営者装置の対受託者装置送信手段によって送信された認証情報生成因子を受信する対運営者装置受信手段と、
対運営者装置受信手段によって受信した認証情報生成因子および対寄託者装置受信手段によって受信した寄託データを用いて、寄託データ量に依存しないデータ量を有する認証情報を生成する認証情報生成手段と、
認証情報生成手段によって生成された認証情報を運営者装置に送信する対運営者装置送信手段と
を備えた
ことを特徴とするデータ分散保持システム。
【請求項２】
通信ネットワークを介して寄託者装置、運営者装置、受託者装置および紹介者装置がそれぞれ相互に通信可能に接続され、
上記寄託者装置は、
分散保持の対象である所定のデータ（寄託データ）を記憶する記憶手段と、
寄託データを用いて生成された、寄託データ量に依存しないデータ量を有する情報（検証情報）を生成する検証情報生成手段と、
寄託データを受託者装置に送信する対受託者装置送信手段と、
検証情報生成手段によって生成された検証情報を運営者装置に送信する対運営者装置送信手段と
を備え、
上記運営者装置は、
所定の値（識別子）を記憶する記憶手段と、
寄託者装置の対運営者装置送信手段によって送信された検証情報を受信する対寄託者装置受信手段と、
認証情報を生成するための認証情報生成因子を、上記識別子を用いて生成する認証情報生成因子生成手段と、
認証情報生成手段によって生成された認証情報生成因子を受託者装置に送信する対受託者装置送信手段と、
受託者装置の対運営者装置送信手段によって送信された認証情報を受信する対受託者装置受信手段と、
対受託者装置受信手段によって受信した認証情報と、対寄託者装置受信手段によって受信した検証情報との間において、所定の関係が成立するか否かを判定する判定手段と、
対寄託者装置受信手段によって受信した検証情報および判定手段によって所定の関係が成立すると判定された認証情報を運営者装置に送信した受託者装置の識別番号を紹介者装置に送信する対紹介者装置送信手段と
を備え、
上記紹介者装置は、
運営者装置の対紹介者装置送信手段によって送信された、寄託データから生成された検証情報および、当該寄託データを用いて生成され、かつ、運営者装置の判定手段によって所定の関係が成立すると判定された認証情報を受信する受託者リスト生成情報受信手段と、
受託者リスト生成情報受信手段によって受信した、寄託データから生成された検証情報と、当該寄託データを用いて生成され、かつ、運営者装置の判定手段によって所定の関係が成立すると判定された認証情報を運営者装置に送信した受託者装置の識別番号とを対応付けた受託者リストを生成して、受託者リストを受託者装置の記憶手段に記憶させる受託者リスト生成手段と、
受託者装置に対して、受託者リストを送信する受託者リスト送信手段と
を備え
上記受託者装置は、
寄託者装置の対受託者装置送信手段によって送信された寄託データを受信する対寄託者装置受信手段と、
運営者装置の対受託者装置送信手段によって送信された認証情報生成因子を受信する対運営者装置受信手段と、
対運営者装置受信手段によって受信した認証情報生成因子および対寄託者装置受信手段によって受信した寄託データを用いて、寄託データ量に依存しないデータ量を有する認証情報を生成する認証情報生成手段と、
認証情報生成手段によって生成された認証情報を運営者装置に送信する対運営者装置送信手段と、
紹介者装置の受託者リスト送信手段によって送信された受託者リストを受信する受託者リスト受信手段と、
受託者リスト受信手段によって受信した受託者リストを参照して、寄託データを保持する他の受託者装置から当該寄託データの取得を行う寄託データ取得手段と
を備えた
ことを特徴とするデータ分散保持システム。
【請求項３】
通信ネットワークを介して寄託者装置、運営者装置および受託者装置がそれぞれ相互に通信可能に接続されており、
寄託者装置の記憶手段には、分散保持の対象である所定のデータ（寄託データ）が記憶され、
運営者装置の記憶手段には、所定の値（識別子）が記憶され、
寄託者装置の検証情報生成手段が、寄託者装置の記憶手段に記憶される寄託データを用いて生成された、寄託データ量に依存しないデータ量を有する情報（検証情報）を生成する検証情報生成ステップと、
寄託者装置の対受託者装置送信手段が、寄託者装置の記憶手段に記憶される寄託データを受託者装置に送信する第１対受託者装置送信ステップと、
寄託者装置の対運営者装置送信手段が、検証情報生成ステップにおいて生成された検証情報を運営者装置に送信する第１対運営者装置送信ステップと、
運営者装置の対寄託者装置受信手段が、寄託者装置の対運営者装置送信手段によって送信された検証情報を受信する第１対寄託者装置受信ステップと、
運営者装置の認証情報生成因子生成手段が、認証情報を生成するための認証情報生成因子を、運営者装置の記憶手段に記憶される識別子を用いて生成する認証情報生成因子生成ステップと、
運営者装置の対受託者装置送信手段が、認証情報生成ステップにおいて生成された認証情報生成因子を受託者装置に送信する第２対受託者装置送信ステップと、
受託者装置の対寄託者装置受信手段が、寄託者装置の対受託者装置送信手段によって送信された寄託データを受信する第２対寄託者装置受信ステップと、
受託者装置の対運営者装置受信手段が、運営者装置の対受託者装置送信手段によって送信された認証情報生成因子を受信する第２対運営者装置受信ステップと、
受託者装置の認証情報生成手段が、受託者装置の対運営者装置受信手段によって受信した認証情報生成因子および受託者装置の対寄託者装置受信手段によって受信した寄託データを用いて、寄託データ量に依存しないデータ量を有する認証情報を生成する認証情報生成ステップと、
受託者装置の対運営者装置送信手段が、認証情報生成ステップにおいて生成された認証情報を運営者装置に送信する第２対運営者装置送信ステップと、
運営者装置の対受託者装置受信手段が、受託者装置の対運営者装置送信手段によって送信された認証情報を受信する第２対受託者装置受信ステップと、
運営者装置の判定手段が、運営者装置の対受託者装置受信手段によって受信した認証情報と、運営者装置の対寄託者装置受信手段によって受信した検証情報との間において、所定の関係が成立するか否かを判定する判定ステップとを有する
ことを特徴とするデータ保持認証方法。
【請求項４】
運営者装置の記憶手段あるいは寄託者装置の記憶手段には、寄託データの保持によって受けることのできる報酬額を明記した報酬ポリシが記憶され、
運営者装置の対受託者装置送信手段が、運営者装置の記憶手段に記憶される報酬ポリシを受託者装置に送信する第１報酬ポリシ送信ステップおよび受託者装置の対運営者装置受信手段が、運営者装置の対受託者装置送信手段によって送信された報酬ポリシを受信する第１報酬ポリシ受信ステップ
あるいは、
寄託者装置の対受託者装置送信手段が、寄託者装置の記憶手段に記憶される報酬ポリシを受託者装置に送信する第２報酬ポリシ送信ステップおよび受託者装置の対寄託者装置受信手段が、寄託者装置の対受託者装置送信手段によって送信された報酬ポリシを受信する第２報酬ポリシ受信ステップ
のいずかを有することを特徴とする請求項３に記載のデータ保持認証方法。
【請求項５】
通信ネットワークを介して紹介者装置も通信可能に接続されており、
運営者装置の対紹介者装置送信手段が、対寄託者装置受信手段によって受信した検証情報および判定手段によって所定の関係が成立すると判定された認証情報を運営者装置に送信した受託者装置の識別番号を紹介者装置に送信する対紹介者装置送信ステップと、
紹介者装置の受託者リスト生成情報受信手段が、運営者装置の対紹介者装置送信手段によって送信された、寄託データから生成された検証情報および、当該寄託データを用いて生成され、かつ、運営者装置の判定手段によって所定の関係が成立すると判定された認証情報を受信する受託者リスト生成情報受信ステップと、
紹介者装置の記憶手段が、受託者リスト生成情報受信ステップによって受信した、寄託データから生成された検証情報と、当該寄託データを用いて生成され、かつ、運営者装置の判定手段によって所定の関係が成立すると判定された認証情報を運営者装置に送信した受託者装置の識別番号とを対応付けた受託者リストを記憶する記憶ステップと、
紹介者装置の受託者リスト送信手段が、受託者装置に対して、受託者リストを送信する受託者リスト送信ステップと、
受託者装置の受託者リスト受信手段が、紹介者装置の受託者リスト送信手段によって送信された受託者リストを受信する受託者リスト受信ステップと、
受託者装置の寄託データ取得手段が、受託者リスト受信手段によって受信した受託者リストを参照して、寄託データを保持する他の受託者装置から当該寄託データの取得を行う寄託データ取得ステップと
を有することを特徴とする請求項３または請求項４のいずれかに記載のデータ分散保持方法。
【請求項６】
請求項１または請求項２に記載のシステムにおいて用いられる寄託者装置。
【請求項７】
請求項１または請求項２に記載のシステムにおいて用いられる運営者装置。
【請求項８】
請求項１または請求項２に記載のシステムにおいて用いられる受託者装置。
【請求項９】
請求項２に記載のシステムにおいて用いられる紹介者装置。
【請求項１０】
請求項６に記載された寄託者装置としてコンピュータを機能させるためのプログラム。
【請求項１１】
請求項７に記載された運営者装置としてコンピュータを機能させるためのプログラム。
【請求項１２】
請求項８に記載された受託者装置としてコンピュータを機能させるためのプログラム。
【請求項１３】
請求項９に記載された紹介者装置としてコンピュータを機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザのデータをユーザ間で分散保持する技術に関する。
【背景技術】
【０００２】
現在、インターネットなどの通信ネットワークに接続されたユーザ間でデータを共有することは一般的に行われている（先行技術文献を挙げるまでもない。）。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
このような技術において共有されるデータは、多くのユーザにとって価値のあるものである。逆に、多くのユーザにとって価値の無いデータは共有の対象とならない（ストレージは有限のハードウェア資源であるから、好んで不要のデータを保持しようとするユーザは通常存在しない。）。
【０００４】
あるユーザが、他の多くのユーザにとっては無価値のデータを保持してもらうためには、有償でデータの寄託をする必要がある（有償なら無価値のデータでも保持しようという者が現われる。言うなれば、ストレージの空き部分をレンタルするようなものである。）。
【０００５】
そして、寄託したユーザ（寄託者）は、データを保持しているユーザ（受託者）に対して定期ないし不定期に報酬を支払うことになる。
通常の寄託業の商取引形態では、寄託物の返還に際して一括して寄託料を支払うことが考えられるが、データの寄託のような場合には、そのような支払は一般的ではない。なぜなら、データは複製することが可能であり、返還という概念が成り立たないからである。従って、継続的なデータの保持に対して報酬が支払われることになる。
【０００６】
報酬の支払に当たっては、受託者が真正なデータ（つまり、改変などがされていない、寄託したデータと同一内容のデータである。）を保持していることを認証する必要がある。また、寄託者は、ひとたびデータを他者に寄託すると、自己のコンピュータのストレージから当該データを消除する場合がある。従って、前記認証は、データが寄託者のコンピュータに残っていない場合においても、認証可能なものでなければならない。
【０００７】
そこで、本発明は、データが寄託者のコンピュータに残っていない場合でも、ある受託者が当該データを保持していることの認証を行うことのできるデータ分散保持システム、データ保持認証方法、データ分散保持システムを構成する装置、この装置を機能させるためのプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記課題を解決するために、本発明では、寄託者装置は、分散保持の対象である所定のデータ（寄託データ）を記憶する記憶手段と、寄託データを用いて生成された、寄託データ量に依存しないデータ量を有する情報（検証情報）を生成する検証情報生成手段と、寄託データを受託者装置に送信する対受託者装置送信手段と、検証情報生成手段によって生成された検証情報を運営者装置に送信する対運営者装置送信手段とを備える。また、運営者装置は、所定の値（識別子）を記憶する記憶手段と、寄託者装置の対運営者装置送信手段によって送信された検証情報を受信する対寄託者装置受信手段と、認証情報を生成するための認証情報生成因子を、上記識別子を用いて生成する認証情報生成因子生成手段と、認証情報生成手段によって生成された認証情報生成因子を受託者装置に送信する対受託者装置送信手段と、受託者装置の対運営者装置送信手段によって送信された認証情報を受信する対受託者装置受信手段と、対受託者装置受信手段によって受信した認証情報と、対寄託者装置受信手段によって受信した検証情報との間において、所定の関係が成立するか否かを判定する判定手段とを備える。そして、受託者装置は、寄託者装置の対受託者装置送信手段によって送信された寄託データを受信する対寄託者装置受信手段と、運営者装置の対受託者装置送信手段によって送信された認証情報生成因子を受信する対運営者装置受信手段と、対運営者装置受信手段によって受信した認証情報生成因子および対寄託者装置受信手段によって受信した寄託データを用いて、寄託データ量に依存しないデータ量を有する認証情報を生成する認証情報生成手段と、認証情報生成手段によって生成された認証情報を運営者装置に送信する対運営者装置送信手段とを備える。そして、これらの運営者装置、寄託者装置、受託者装置がそれぞれ相互に通信可能に接続されることで、データ分散保持システムを構成する。
【０００９】
寄託者装置は寄託データを受託者装置に受託し、受託者装置は、当該寄託データを保持していることを証明する。この証明は次のような本発明のデータ保持認証方法で行う。
即ち、寄託者装置は寄託データからデータ保持の認証に用いる検証情報を生成し、この検証情報を運営者装置に送信する。運営者装置は、所定の値（識別子）を用いて、受託者装置において認証情報を生成するための認証情報生成因子を生成し、この認証情報生成因子を受託者装置に送る。認証情報生成因子を受信した受託者装置は、寄託データおよび認証情報生成因子を用いて寄託データ量に依存しないデータ量を有する認証情報を生成し、この認証情報を運営者装置に送る。認証情報を受信した運営者装置は、認証情報と検証情報との間において、所定の関係が成立するか否かを判定することで、受託者装置に寄託データが保持されていることを認証する。
【００１０】
運営者装置の記憶手段あるいは寄託者装置の記憶手段には、寄託データの保持によって受けることのできる報酬額を明記した報酬ポリシを記憶しておき、この報酬ポリシを受託者装置に送信するとしてもよい。
このことによって、受託者は寄託データを保持することによって受ける報酬額を知ることができる。
【００１１】
また、寄託データから生成された検証情報と、当該寄託データを用いて生成され、かつ、運営者装置の判定手段によって所定の関係が成立すると判定された認証情報を運営者装置に送信した受託者装置の識別番号とを対応付けた受託者リストを記憶する記憶手段と、受託者装置に対して、受託者リストを送信する受託者リスト送信手段とを備えた紹介者装置をデータ分散保持システムに介在させるようにしてもよい。
受託者は、紹介者から受託者リストの提供を受けることで、所望の寄託データを保持している受託者を知ることができ、ひいては、その受託者が保持している寄託データを取得することが可能になる。
【発明の効果】
【００１２】
本発明によれば、運営者装置は、寄託者装置で生成された検証情報（寄託データ量に依存しないデータ量〔定数〕である。）と、受託者装置で生成された認証情報（寄託データ量に依存しないデータ量〔定数〕である。）を用いて、受託者装置が寄託データを保持していることを認証できるから、寄託データが寄託者装置に残っていない場合でも、ある受託者装置が当該寄託データを保持していることの認証を行うことができる。
【００１３】
また、寄託データが寄託者装置に残っていない場合でもデータ保持の認証ができるので、有償のデータ寄託事業が可能になる。
【発明を実施するための最良の形態】
【００１４】
《第１実施形態》
第１実施形態におけるデータ分散保持システムは、当該システムを運営する運営者のコンピュータである運営者装置、データ（以下、「寄託データ」と云う。）の寄託者であるユーザのコンピュータである寄託者装置、寄託者装置から受託した寄託データをストレージに保持することとなる受託者のコンピュータである受託者装置から構成される。
そこで、運営者装置、寄託者装置、受託者装置について説明してから、第１実施形態におけるデータ分散保持システムのシステム構成を説明する。その上で、当該データ分散保持システムにおけるデータ保持認証方法の処理手順について叙述的に説明する。
【００１５】
［データ分散保持システム］
＜運営者装置＞
第１実施形態における運営者装置について説明する。
図１は、第１実施形態に係わる運営者装置（１）のハードウェア構成を例示した構成ブロック図である。
【００１６】
図１に例示するように、運営者装置（１）は、キーボードやポインティングデバイスなどの入力装置が接続可能な入力部（１１）、液晶ディスプレイなどの出力装置が接続可能な出力部（１２）、運営者装置（１）外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部（１３）、ＣＰＵ（Central Processing Unit）（１４）〔キャッシュメモリなどを備えていてもよい。〕、メモリであるＲＡＭ（１５）、ＲＯＭ（１６）やハードディスクである外部記憶装置（１７）並びにこれらの入力部（１１）、出力部（１２）、通信部（１３）、ＣＰＵ（１４）、ＲＡＭ（１５）、ＲＯＭ（１６）、外部記憶装置（１７）間のデータのやり取りが可能なように接続するバス（１８）を有している。また必要に応じて、運営者装置（１）に、ＣＤ−ＲＯＭなどの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【００１７】
運営者装置（１）の外部記憶装置（１７）には、受託者装置が寄託データを保持していることを認証するのに必要となるプログラムおよびこのプログラムの処理において必要となるデータなどが保存記憶される。また、このプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に保存記憶される。
【００１８】
より具体的には、運営者装置（１）の外部記憶装置（１７）には、合成数Ｎを生成するためのプログラム、合成数Ｎ未満の整数ｇを生成するためのプログラム、乱数を生成するためのプログラム、認証情報生成因子を生成するためのプログラム、受託者装置から取得した情報と寄託者装置から取得した情報との一致性を判定するためのプログラムなどが保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存しておく。
また、プログラムの処理において必要となるデータとして、予め定められた自然数νが、運営者装置（１）の外部記憶装置（１７）に保存記憶されている。
【００１９】
運営者装置（１）では、外部記憶装置（１７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（１５）に読み込まれて、ＣＰＵ（１４）で解釈実行・処理される。その結果、ＣＰＵ（１４）が所定の機能（Ｎ生成部、ｇ生成部、乱数生成部、認証情報生成因子生成部、判定部、制御部）を実現する。
【００２０】
＜寄託者装置＞
第１実施形態における寄託者装置について説明する。
図２は、第１実施形態に係わる寄託者装置（２）のハードウェア構成を例示した構成ブロック図である。
【００２１】
図２に例示するように、寄託者装置（２）は、キーボードやポインティングデバイスなどの入力装置が接続可能な入力部（２１）、液晶ディスプレイなどの出力装置が接続可能な出力部（２２）、寄託者装置（２）外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部（２３）、ＣＰＵ（Central Processing Unit）（２４）〔キャッシュメモリなどを備えていてもよい。〕、メモリであるＲＡＭ（２５）、ＲＯＭ（２６）やハードディスクである外部記憶装置（２７）並びにこれらの入力部（２１）、出力部（２２）、通信部（２３）、ＣＰＵ（２４）、ＲＡＭ（２５）、ＲＯＭ（２６）、外部記憶装置（２７）間のデータのやり取りが可能なように接続するバス（２８）を有している。また必要に応じて、寄託者装置（２）に、ＣＤ−ＲＯＭなどの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【００２２】
寄託者装置（２）の外部記憶装置（２７）には、運営者装置（１）が認証に用いる情報を寄託データから生成するためのプログラムおよびこのプログラムの処理において必要となるデータなどが保存記憶されている。また、このプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に保存記憶される。
【００２３】
より具体的には、寄託者装置（２）の外部記憶装置（２７）〔あるいはＲＯＭなど〕には、検証情報を生成するためのプログラムなどが保存記憶される。その他、このプログラムに基づく処理を制御するための制御プログラムも適宜に保存しておく。
また、このプログラムの処理において必要となるデータとして、寄託データｓが寄託者装置（２）の外部記憶装置（２７）に保存記憶されているとする。
本明細書において認証対象となる寄託データｓは、説明の便宜上、ビット列からなるものとする。特に、運営者装置、寄託者装置、受託者装置をコンピュータによって実現する場合には、いかなる情報（例えば人間が意味理解可能なテキスト形式の情報などがある。）であっても、２進数表記されるビット列として外部記憶装置に保存記憶されることはいうまでもない。また、寄託データｓは、必要に応じて公知の方法で暗号化されたデータとしてもよい。
【００２４】
寄託者装置（２）では、外部記憶装置（２７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（２５）に読み込まれて、ＣＰＵ（２４）で解釈実行・処理される。その結果、ＣＰＵ（２４）が所定の機能（検証情報生成部、制御部）を実現する。
【００２５】
＜受託者装置＞
第１実施形態における受託者装置について説明する。
図３は、第１実施形態に係わる受託者装置（３）のハードウェア構成を例示した構成ブロック図である。
【００２６】
図３に例示するように、受託者装置（３）は、キーボードやポインティングデバイスなどの入力装置が接続可能な入力部（３１）、液晶ディスプレイなどの出力装置が接続可能な出力部（３２）、受託者装置（３）外部に通信可能な通信装置（例えば通信ケーブル）が接続可能な通信部（３３）、ＣＰＵ（Central Processing Unit）（３４）〔キャッシュメモリなどを備えていてもよい。〕、メモリであるＲＡＭ（３５）、ＲＯＭ（３６）やハードディスクである外部記憶装置（３７）並びにこれらの入力部（３１）、出力部（３２）、通信部（３３）、ＣＰＵ（３４）、ＲＡＭ（３５）、ＲＯＭ（３６）、外部記憶装置（３７）間のデータのやり取りが可能なように接続するバス（３８）を有している。また必要に応じて、受託者装置（３）に、ＣＤ−ＲＯＭなどの記憶媒体を読み書きできる装置（ドライブ）などを設けるとしてもよい。このようなハードウェア資源を備えた物理的実体としては、汎用コンピュータなどがある。
【００２７】
受託者装置（３）の外部記憶装置（３７）には、運営者装置（１）が認証に用いる情報を寄託データから生成するためのプログラムおよびこのプログラムの処理において必要となるデータなどが保存記憶されている。また、このプログラムの処理によって得られるデータなどは、ＲＡＭや外部記憶装置などに適宜に保存記憶される。
【００２８】
より具体的には、受託者装置（３）の外部記憶装置（３７）〔あるいはＲＯＭなど〕には、認証情報を生成するためのプログラムなどが保存記憶されている。その他、このプログラムに基づく処理を制御するための制御プログラムも適宜に保存記憶しておく。
【００２９】
受託者装置（３）では、外部記憶装置（３７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（３５）に読み込まれて、ＣＰＵ（３４）で解釈実行・処理される。その結果、ＣＰＵ（３４）が所定の機能（認証情報生成部、制御部）を実現する。
【００３０】
＜システム構成＞
第１実施形態におけるデータ分散保持システム（５）のシステム構成について説明する。
図４は、データ分散保持システム（５）のシステム構成を示す図である。
【００３１】
第１実施形態では、１個の運営者装置（１）と、複数の寄託者装置（２）と、複数の受託者装置（３）とが、インターネットなどの通信ネットワーク（６）を介して相互に通信可能に接続されている。
【００３２】
運営者装置（１）は受託者装置（３）を兼ねることが可能であるが、公正なストレージサービスを担保するためには、運営者装置（１）は受託者装置（３）を兼ねない方が好ましい。
【００３３】
また、本発明では寄託者装置（２）は複数存在するのが通常であるが、説明の便宜上、寄託者装置（２）は１個とする〔図４は、この場合を表している。〕。
【００３４】
そこで、以下の説明では、複数の受託者装置を区別するために、ｆ個の受託者装置をハイフン（hyphen）付きの符号（３−１）、（３−２）、・・・、（３−ｆ）をもって表記する。また、同様にして、各装置のハードウェア資源や機能などもハイフン付きの符号を当てて区別する。具体例として、後述の認証情報生成部（１４１−ｆ）は、ｆ番目の受託者装置（３−ｆ）の認証情報生成部を表す。
【００３５】
データ分散保持システム（５）には、ネットワーク型電子マネーなどの公知の価値流通基盤が組み合わされる。この価値流通基盤との組み合わせは公知技術で達成されるから詳細な説明を略する。以下の説明では報酬の支払いに係わる記載があるが、この報酬支払いは、価値流通基盤の利用によって公知の方法でなされる。
【００３６】
[データ保持認証方法の処理手順]
続いて、データ保持分散システム（５）におけるデータ保持認証方法の処理手順について叙述的に説明する。
第１実施形態は、基本的な実施形態を示しており、本発明の趣旨を逸脱するものでないならば、種々の実施の形態に拡張可能である。以下、図５〜図１０を参照しながら説明する。なお、各装置の機能ブロック図を示す図では、同じ符号が与えられた機能部が示されているが、各別のものを示すものではなく、説明の便宜から各別に示しているに過ぎない。このことは各実施形態における図でも同様である。
【００３７】
運営者装置（１）のＮ生成部（１４０）は、素因数分解が困難な合成数Ｎを生成し、この合成数ＮをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ１）〔図５参照〕。以後、「ＲＡＭから○○を読み込む」旨の説明をした場合は、「ＲＡＭにおいて○○が格納されている所定の格納領域から○○を読み込む」ことを意味するとする。
【００３８】
素因数分解が困難な合成数Ｎの生成方法としては、例えば、次の方法がよく知られている。即ち、素数の組ｐ、ｑで、（ｐ−１）／２，（ｑ−１）／２もまた素数になるものを求め、Ｎ＝ｐ×ｑを演算する。このようなｐ、ｑは無限に存在して、合成数Ｎは確率的アルゴリズムによって効率的に計算可能である。
【００３９】
運営者装置を用いて合成数Ｎを定めることによらず、例えば、受託者装置あるいは寄託者装置におけるプログラムモジュールによって合成数Ｎを定めることでもよい。このような場合の一例として、マルチパーティープロトコルを用いることができる（参考文献１参照）。この方法によれば、合成数Ｎを定める計算に参加する装置のいずれもが合成数Ｎの素因数分解をできることはなく、上記の要件を充たす任意の合成数Ｎを生成することが可能である。
（参考文献１）  J.Algesheimer, J.Camenish and V.Shoup, "Efficient Computation Modulo a Shared Secret with Application to the Generation of Shared Safe-Prime Products", CRYPTO 2002, LNCS 2442, pp.417-432, 2002, Springer-Verlag.
【００４０】
また、素因数分解が困難な合成数Ｎとして、２のべき乗に近い数、例えば２ｍ−１の形で表せる合成数Ｎを生成するようにしてもよい。このような合成数Ｎにおいては、合成数Ｎによる剰余計算は、例えば２ｍを１に置換することで計算ができ、このような演算は通常のＣＰＵにおいてシフト演算またはビットの並び替えで実現することができる。従って高速な剰余演算を実現することができる。そのような合成数Ｎを確率的アルゴリズムによって効率的に生成することもできるし、素因数分解が困難な数の表は公知であるから、そのような表から２のべき乗に近い合成数Ｎを選択するようにしてもよい。
【００４１】
次に、運営者装置（１）のｇ生成部（１４１）は、ＲＡＭ（１５）から合成数Ｎを読み込み、Ｎ未満の正整数ｇを生成し、この正整数ｇをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ２）〔図５参照〕。
【００４２】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだＮ、ｇを寄託者装置（２）に対して送信し、Ｎをｆ個の受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して送信する（ステップＳ３）〔図５参照〕。
【００４３】
寄託者装置（２）の制御部（２９０）は、通信部（２３）を制御して、ステップＳ３において送信されたＮ、ｇを受信し、これらＮ、ｇを外部記憶装置（２７）に保存記憶する（ステップＳ４）〔図６参照〕。この際、ユーザから運営者に対して報酬の支払いが行われる。但し、この報酬は、ユーザがストレージサービスの利用に対して支払う対価であるから、通常の商取引に照らして、適宜の段階で報酬の支払いを行えば良く、このステップにおける報酬支払いに限定するものではない。
【００４４】
また、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）のそれぞれの制御部（３９０−１）、（３９０−２）、・・・、（３９０−ｆ）は、それぞれの通信部（３３−１）、（３３−２）、・・・、（３３−ｆ）を制御して、ステップＳ３において送信されたＮを受信し、このＮをそれぞれの外部記憶装置（３７−１）、（３７−２）、・・・、（３７−ｆ）に保存記憶する（ステップＳ５）〔図８参照〕。
【００４５】
次いで、寄託者装置（２）の検証情報生成部（２４１）は、ＲＡＭ（２５）からｇ、Ｎ、寄託データｓを読み込み、式（１）に従った演算を行い、この演算結果Ｃ（ｓ）〔検証情報〕をＲＡＭ（２５）の所定の格納領域に格納する（ステップＳ６）〔図６参照〕。ここでは、ビット列の寄託データｓを自然数の２進数表記と同一視した。なお、寄託者装置（２）の制御部（２９０）は、予め外部記憶装置（２７）から寄託データｓを読み込み、これをＲＡＭ（２５）の所定の格納領域に格納しておくとする。
【数１】
0004718335.tif 000002
【００４６】
次に、寄託者装置（２）の制御部（２９０）は、通信部（２３）を制御して、適宜にＲＡＭ（２５）から読み込んだ寄託データｓを何れかの受託者装置に対して送信する（ステップＳ７）〔図６参照〕。
ここでは、説明の便宜から受託者装置（３−１）に送信するものとする。なお、送信先を１つの受託者装置に限定する趣旨ではなく、複数の受託者装置に対して寄託データｓを送信するとしてもよい。このことは、以下の実施形態でも同様である。
【００４７】
受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ７において送信された寄託データｓを受信し、この寄託データｓを外部記憶装置（３７−１）に保存記憶する（ステップＳ８）。
【００４８】
次に、寄託者装置（２）の制御部（２９０）は、外部記憶装置（２７）に保存記憶される寄託データｓを必要に応じて消除する（ステップＳ９）。ここで消除とは、対象となる情報が格納される格納領域を開放することであり、例えば格納領域を上書き（つまり、新たな情報を格納する。）可能な状態したり、あるいはＮｕｌｌ値で格納領域を上書きしたりすることである。
【００４９】
次に、寄託者装置（２）の制御部（２９０）は、通信部（２３）を制御して、適宜にＲＡＭ（２５）から読み込んだ検証情報Ｃ（ｓ）を運営者装置（１）に対して送信する（ステップＳ１０）〔図６参照〕。
【００５０】
運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ１０において送信された検証情報Ｃ（ｓ）を受信し、検証情報Ｃ（ｓ）を外部記憶装置（１７）に保存記憶する（ステップＳ１１）〔図７参照〕。
【００５１】
以下の処理は、定期ないし不定期（例えばユーザからの要求があった場合である。）に行われる。
【００５２】
運営者装置（１）の乱数生成部（１４２）は、ＲＡＭ（１５）から自然数νを読み込み、高々２２ν程度の大きさの乱数ｒ〔識別子〕を生成し、乱数ｒをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ１２）〔図７参照〕。なお、運営者装置（１）の制御部（１９０）は、予め外部記憶装置（１７）から自然数ν、ｇ、Ｎを読み込み、これをＲＡＭ（１５）の所定の格納領域に格納しておくとする。
第１実施形態では乱数生成部（１４２）が、識別子である乱数ｒを生成するとしたが、予め所定の値を識別子として外部記憶装置（１７）に保存記憶しておき、この値を外部記憶装置（１７）から読み込むとしてもよい。この場合には、安全性の見地から、所定の値を運営者装置（１）の外部から秘匿しておかなければならない。
【００５３】
運営者装置（１）の認証情報生成因子生成部（１４３）は、ＲＡＭ（１５）からｇ、Ｎ、ｒを読み込み、式（２）に従った演算を行い、この演算結果Ｒ〔認証情報生成因子〕をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ１３）〔図７参照〕。
【数２】
0004718335.tif 000003
【００５４】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだ認証情報生成因子Ｒを受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して送信する（ステップＳ１４）〔図７参照〕。
【００５５】
なお、ステップＳ１２、Ｓ１３で得られた乱数ｒ、認証情報生成因子Ｒは、運営者装置（１）の制御部（１９０）の制御によって、外部記憶装置（１７）に保存記憶される。
【００５６】
次に、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）のそれぞれの制御部（３９０−１）、（３９０−２）、・・・、（３９０−ｆ）は、それぞれの通信部（３３−１）、（３３−２）、・・・、（３３−ｆ）を制御して、ステップＳ１４において送信された認証情報生成因子Ｒを受信し、この認証情報生成因子Ｒをそれぞれの外部記憶装置（３７−１）、（３７−２）、・・・、（３７−ｆ）に保存記憶する（ステップＳ１５）〔図８参照〕。なお、図８は、受託者装置（３−１）について例示している。
【００５７】
次に、寄託データを保持している受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）からＮ、寄託データｓ、認証情報生成因子Ｒを読み込み、それぞれをＲＡＭ（３５−１）の所定の格納領域に格納しておく〔図８参照〕。
【００５８】
次に、受託者装置（３−１）の認証情報生成部（３４１−１）は、ＲＡＭ（３５−１）からＮ、寄託データｓ、認証情報生成因子Ｒを読み込み、式（３）に従った演算を行い、この演算結果Ｒ（ｓ）〔認証情報〕をＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ１６）〔図８参照〕。
【数３】
0004718335.tif 000004
【００５９】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、適宜にＲＡＭ（３５−１）から読み込んだ認証情報Ｒ（ｓ）を運営者装置（１）に対して送信する（ステップＳ１７）〔図８参照〕。
【００６０】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ１７において送信された認証情報Ｒ（ｓ）を受信し、この認証情報Ｒ（ｓ）を外部記憶装置（１７）に保存記憶する（ステップＳ１８）〔図９参照〕。
【００６１】
次に、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）からＮ、乱数ｒ、認証情報Ｒ（ｓ）、検証情報Ｃ（ｓ）を読み込み、それぞれをＲＡＭ（１５）の所定の格納領域に格納する〔図９参照〕。
【００６２】
次に、運営者装置（１）の判定部（１４４）は、ＲＡＭ（１５）からＮ、乱数ｒ、認証情報Ｒ（ｓ）、検証情報Ｃ（ｓ）を読み込み、式（４）に示す関係が成立するか否かの判定を行う（ステップＳ１９）〔図９参照〕。この判定結果が関係成立の場合には、関係成立を示す予め定めた情報α（例えば値α＝１）をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ２０）。また、この判定結果が関係不成立の場合には、関係不成立を示す予め定めた情報α（例えば値α＝０）をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ２１）。この際、運営者から、寄託データｓの保持の認証に成功した受託者に対して報酬の支払いが行われる。この報酬は、ユーザが運営者に対して支払った報酬の一部が当てられる。但し、この報酬は、受託者の寄託業務成功報酬として支払われるものであるから、通常の商取引に照らして、適宜の段階で報酬の支払いを行えば良く、このステップにおける報酬支払いに限定するものではない。
【数４】
0004718335.tif 000005
【００６３】
ここで、式（４）に示す関係が成立する場合は、受託者装置が寄託データｓを保持していることを表し、式（４）に示す関係が成立しない場合は、受託者装置が寄託データｓを保持しているとは限らないことを表すことに留意しなければならない。
従って、寄託データを保持していない受託者装置−この場合は受託者装置（３−２）、・・・、（３７−ｆ）である−が、ステップＳ１６の処理において他の寄託データを基に認証情報Ｒ（ｓ）を生成してこれを運営者装置（１）に送信したとしても、ステップＳ１９の処理において、寄託データｓを保持しているとは判定されないことになる。このため、成功報酬の詐取を防止できる。
【００６４】
以上のとおり、運営者装置（１）は、寄託データｓを保持していなくても、受託者装置（３−１）が寄託データｓを保持していることの認証を行うことができる。
【００６５】
以下の各実施形態においてもデータ保持の認証処理の過程で報酬の支払いが行われるが、第１実施形態と同様にして行われるから、その説明を略する。
【００６６】
《第２実施形態》
次に、本発明の第２実施形態について、図１１〜図１５を参照しながら説明する。
第２実施形態は、第１実施形態における計算効率の向上を図るものである。
計算効率の向上のために、寄託データｓを適宜に複数の情報に分割する。第２実施形態ではその一例を示すことにする。ビット列で表される寄託データｓを、ｋ個の分割寄託データｓ０、ｓ１、…、ｓｋ−１に分割し、寄託データｓは、ｋ個の分割寄託データｓ０、ｓ１、…、ｓｋ−１のビット列の結合として表されるとする。即ち、ｓ＝ｓ０‖ｓ１‖…‖ｓｋ−１とする。
第２実施形態では、効率のために、分割数ｋを予め定めた固定値とし、分割寄託データｓｉのビット長は寄託データｓのビット長に対して分割数ｋで均等に割り付けるとする（寄託データｓのビット長が分割数ｋで割り切れない場合は、先頭の分割寄託データｓ０の先頭にゼロのビット値を付加する。）。勿論、例えば運営者装置（１）において任意にこれらを決定し、寄託者装置（２）、受託者装置（３）へ送信するようにしてもよく、適宜に設計変更可能である。
第２実施形態では、第１実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。また、以下では、単に寄託データｓと云えば、ｋ個の分割寄託データｓ０、ｓ１、…、ｓｋ−１を意味するとする。
【００６７】
［データ分散保持システム］
［運営者装置］
第２実施形態における運営者装置（１）は、第１実施形態で説明した運営者装置と同様であるから説明を略する。
【００６８】
［寄託者装置］
第２実施形態における寄託者装置（２）は、第１実施形態で説明した寄託者装置と同様であるから説明を略する。
【００６９】
［受託者装置］
第２実施形態における受託者装置（３）は、第１実施形態で説明した受託者装置と同様であるから説明を略する。
【００７０】
［システム構成］
第２実施形態におけるシステム構成は、第１実施形態で説明したシステム構成と同様であるから説明を略する。
【００７１】
［準備］
Ｈ（ｉ，ｕ，Ｒ）を予め定められた関数とする。例として、Ｈ（ｉ，ｕ，Ｒ）＝ｕｉとおくこともできるし、その他にＳＨＡ−２５６（Secure Hash Algorithm 256）などのハッシュ関数を用いることができ、適宜に設定変更可能である。
【００７２】
［データ保持認証方法の処理手順］
寄託者装置（２）の外部記憶装置（２７）には、寄託データｓが保存記憶されているとする。
【００７３】
ステップＳ１〜Ｓ５は、第１実施形態における処理と同じであるから説明を略する。
【００７４】
ステップＳ５に続いて、寄託者装置（２）の検証情報生成部（２４１）は、ＲＡＭ（２５）からｇ、Ｎ、寄託データｓを読み込み〔予め外部記憶装置（２７）から読み込まれているとする。〕、式（５）に従った演算を行い、この演算結果Ｃ（ｓ）＝｛Ｃｉ（ｓ）｝ｉ＝０，１，２，…，ｋ−１〔検証情報〕をＲＡＭ（２５）の所定の格納領域に格納する（ステップＳ６ａ）〔図１１参照〕。ただし、ビット列ｓｉを自然数の２進数表記と同一視した。
【数５】
0004718335.tif 000006
【００７５】
以下、ステップＳ７〜Ｓ１３は、第１実施形態における処理と同様であるから説明を略する。
【００７６】
ステップＳ１３に続き、運営者装置（１）の乱数生成部（１４２）は、ＲＡＭ（１５）からνを読み込み（予め外部記憶装置（１７）から読み込まれているとする。）、高々νビット程度の大きさの乱数ｕを生成し、乱数ｕをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ１３ａ）〔図１２参照〕。なお、予め所定の値を乱数ｕに相当する値として外部記憶装置（１７）に保存記憶しておき、この値を外部記憶装置（１７）から読み込むとしてもよい。この場合には、安全性の見地から、乱数ｕに相当する所定の値を運営者装置（１）の外部から秘匿しておかなければならない。
【００７７】
第１実施形態におけるステップＳ１４の処理では、認証情報生成因子Ｒを受託者装置（３−１）に送信したが、第２実施形態では、認証情報生成因子Ｒに加え、乱数ｕも受託者装置（３−１）に送信する（ステップＳ１４ａ）〔図１２参照〕。
【００７８】
第１実施形態におけるステップＳ１５の処理では、受託者装置（３−１）は、認証情報生成因子Ｒを運営者装置（１）から受信したが、第２実施形態では、認証情報生成因子Ｒに加え、乱数ｕも運営者装置（１）から受信する（ステップＳ１５ａ）〔図１３参照〕。
【００７９】
第１実施形態におけるステップＳ１６の処理では、式（３）に従って認証情報Ｒ（ｓ）を生成したが、第２実施形態では、次の処理を行う。即ち、受託者装置（３−１）の認証情報生成部（３４１−１）は、ＲＡＭ（３５−１）からＮ、寄託データｓ、認証情報生成因子Ｒ、乱数ｕを読み込み（予め外部記憶装置（３７−１）から読み込まれているとする。）、式（６）に従った演算を行い、この演算結果Ｒ（ｓ）〔認証情報〕をＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ１６ａ）〔図１３参照〕。
【数６】
0004718335.tif 000007
【００８０】
ステップＳ１６ａに続くステップＳ１７、Ｓ１８は、第１実施形態における処理と同じであるから説明を略する。
【００８１】
第１実施形態におけるステップＳ１９の処理では、式（４）に従って判定を行ったが、第２実施形態では、次の判定処理を行う。即ち、運営者装置（１）の判定部（１４４）は、ＲＡＭ（１５）からＮ、乱数ｒ、乱数ｕ、認証情報生成子Ｒ、認証情報Ｒ（ｓ）、検証情報Ｃ（ｓ）を読み込み（予め外部記憶装置（１７）から読み込まれているとする。）、式（７）に示す関係が成立するか否かの判定を行う（ステップＳ１９ａ）〔図１４参照〕。
【数７】
0004718335.tif 000008
【００８２】
ステップＳ１９ａに続くステップＳ２０、Ｓ２１の処理は、第１実施形態における処理と同じであるから説明を略する。
【００８３】
《第３実施形態》
次に、本発明の第３実施形態について、図１６から図２２を参照しながら説明する。
第３実施形態は、第１実施形態、第２実施形態における安全性の向上を図るものである。第１実施形態に対する揚合と、第２実施形態に対する場合とで、安全性向上のための適用形態は同じなので、ここでは説明の便宜から、第２実施形態における安全性向上を第３実施形態とする。
【００８４】
第１実施形態、第２実施形態では、認証情報生成因子Ｒを送信した運営者装置を、信頼のおける運営者装置と看做していた。しかし、運営者装置が不正な方法で認証情報生成因子Ｒを生成する場合があることを否定できない。このような場合に対処するために、受託者装置は、運営者装置が確かに所定の処理に基づいて認証情報生成因子Ｒを生成したものであることを、対話証明によって認証する。第３実施形態では、その一例として乱数ｒに関するゼロ知識対話証明を利用した運営者装置の認証について説明する。なお、知識のゼロ知識証明の構成方法はさまざまなものが公知であり、第３実施形態に示す構成はその一例であることに留意しなければならない。例えば、第３実施形態で説明するゼロ知識証明の構成に代え、楕円曲線上のスカラー倍演算を用いたものによって構成することも可能である。また、安全性の観点からは知識の証明はゼロ知職証明であることが望ましいが、効率のために、現時点ではゼロ知識性の数学的証明が完全になされていない手段、たとえば後述するｃ＾をハッシュ関数を用いたビットコミットメントで代替することもできる。
第３実施形態では、第２実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。
【００８５】
［データ分散保持システム］
［運営者装置］
第３実施形態における運営者装置（１）の外部記憶装置（１７）〔あるいはＲＯＭなど〕には、合成数Ｎを生成するためのプログラム、合成数Ｎ未満の整数ｇを生成するためのプログラム、認証情報生成因子を生成するためのプログラム、乱数を生成するためのプログラム、後述するＷ、ｚを生成するためのプログラム、認証情報生成因子が運営者装置において正当に生成されたことを対話証明によって証明するためのプログラム、受託者装置から受信した情報と運営者装置に保持される情報との一致を判定するためのプログラム、およびこれらのプログラムの処理において必要となるデータなどが保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存しておく。
【００８６】
運営者装置（１）では、外部記憶装置（１７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（１５）に読み込まれて、ＣＰＵ（１４）で解釈実行・処理される。その結果、ＣＰＵ（１４）が所定の機能（Ｎ生成部、ｇ生成部、認証情報生成因子生成部、乱数生成部、Ｗ生成部、ｚ生成部、対話判定部、判定部、制御部）を実現する。
【００８７】
［寄託者装置］
第３実施形態における寄託者装置（２）は、第２実施形態で説明した寄託者装置と同様であるから説明を略する。
【００８８】
［受託者装置］
第３実施形態における受託者装置（３）の外部記憶装置（３７）〔あるいはＲＯＭなど〕には、認証情報を生成するためのプログラム、後述するｃ＾を生成するためのプログラム、認証情報生成因子が運営者装置において正当に生成されたことを対話証明によって認証するためのプログラムおよびこれらのプログラムの処理において必要となるデータなどが保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存記憶しておく。
【００８９】
第３実施形態における受託者装置（３）では、外部記憶装置（３７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（３５）に読み込まれて、ＣＰＵ（３４）で解釈実行・処理される。その結果、ＣＰＵ（３４）が所定の機能（ｃ＾生成部、認証判定部、認証情報生成部、制御部）を実現する。
【００９０】
［システム構成］
第３実施形態におけるシステム構成は、第１実施形態で説明したシステム構成と同様であるから説明を略する。
【００９１】
［準備］
ｔを予め定められた自然数（但し、Ｎよりも小さいとする。）とする。ｔは、運営者装置（１）の外部記憶装置（１７）に保存記憶されているとする。また、Ｈ（ｉ，ｕ，Ｒ）を予め定められた関数とする。例として、Ｈ（ｉ，ｕ，Ｒ）＝ｕｉとおくこともできるし、その他にＳＨＡ−２５６などのハッシュ関数を用いることができる。
【００９２】
［データ保持認証方法の処理手順］
第３実施形態における対話証明の処理は、第２実施形態で説明したステップＳ１５ａの処理とステップＳ１６ａの処理との間に行われる。
そこで、ステップＳ１〜ステップＳ１５ａ、ステップＳ１６ａ〜ステップＳ２１の説明を略し、この対話証明の処理について説明を加えることにする。
【００９３】
なお、第３実施形態では上記ステップＳ３の処理とは異なり、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだＮ、ｇを寄託者装置（２）に対して送信し、Ｎ、ｇ、ｔをｆ個の受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して送信する（ステップＳ３ｂ）。
【００９４】
また、第３実施形態では上記ステップＳ５の処理とは異なり、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）のそれぞれの制御部（３９０−１）、（３９０−２）、・・・、（３９０−ｆ）は、それぞれの通信部（３３−１）、（３３−２）、・・・、（３３−ｆ）を制御して、ステップＳ３ｂにおいて送信されたＮ、ｇ、ｔを受信し、このＮ、ｇ、ｔをそれぞれの外部記憶装置（３７−１）、（３７−２）、・・・、（３７−ｆ）に保存記憶する（ステップＳ５ｂ）。
【００９５】
以下、対話証明の処理について説明する。
ステップＳ１５ａの処理の後、受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）からｇ、ｔ、Ｎを読み込み、これをＲＡＭ（３５−１）の所定の格納領域に格納しておく。
【００９６】
受託者装置（３−１）の乱数生成部（３４３−１）は、ＲＡＭ（３５−１）からｔを読み込み、０以上ｔ未満の乱数ｃおよび０以上Ｎ未満のＮと互いに素な乱数でξを生成し、この乱数ｃおよび乱数ξをＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ６１１）〔図１６参照〕。
【００９７】
次に、受託者装置（３−１）のｃ＾生成部（３４２−１）は、ＲＡＭ（３５−１）からＮ、ｇ、ｔ、乱数ｃ、乱数ξを読み込み、式（８）に従った演算を行い、この演算結果ｃ＾をＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ６１２）〔図１６参照〕。
【数８】
0004718335.tif 000009
【００９８】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、適宜にＲＡＭ（３５−１）から読み込んだｃ＾を運営者装置（１）に対して送信する（ステップＳ６１３）〔図１６参照〕。
【００９９】
なお、ステップＳ６１１で得られた乱数ｃ、乱数ξは、受託者装置（３−１）の制御部（３９０−１）の制御によって、外部記憶装置（３７−１）に保存記憶される。
【０１００】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ６１３において送信されたｃ＾を受信し、このｃ＾を外部記憶装置（１７）に保存記憶する（ステップＳ６１４）〔図１７参照〕。
【０１０１】
次に、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）からＮ、ｇを読み込み、それぞれをＲＡＭ（１５）の所定の格納領域に格納する〔図１７参照〕。
【０１０２】
次に、運営者装置（１）の乱数生成部（１４２）は、ＲＡＭ（１５）からＮを読み込み、０以上Ｎ未満の乱数ｗを生成し、この乱数ｗをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ６１５）〔図１７参照〕。
【０１０３】
次に、運営者装置（１）のＷ生成部（１４７）は、ＲＡＭ（１５）からＮ、ｇ、乱数ｗを読み込み、式（９）に従った演算を行い、この演算結果ＷをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ６１６）〔図１７参照〕。
【数９】
0004718335.tif 000010
【０１０４】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだＷを受託者装置（３−１）に対して送信する（ステップＳ６１７）〔図１７参照〕。
【０１０５】
なお、ステップＳ６１５で得られた乱数ｗは、運営者装置（１）の制御部（１９０）の制御によって、外部記憶装置（１７）に保存記憶される。
【０１０６】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ６１７において送信されたＷを受信し、このＷを外部記憶装置（３７−１）に保存記憶する（ステップＳ６１８）〔図１８参照〕。
【０１０７】
次に、受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）から乱数ｃおよび乱数ξを読み込み、それぞれをＲＡＭ（３５−１）の所定の格納領域に格納する。そして、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、適宜にＲＡＭ（３５−１）から読み込んだ乱数ｃおよび乱数ξを運営者装置（１）に対して送信する（ステップＳ６１９）〔図１８参照〕。
【０１０８】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ６１９において送信された乱数ｃおよび乱数ξを受信し、この乱数ｃおよび乱数ξを外部記憶装置（１７）に保存記憶する（ステップＳ６２０）〔図１９参照〕。
【０１０９】
次に、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）から乱数ｃ、乱数ξ、ｇ、ｔ、Ｎ、乱数ｒ、乱数ｗ、ｃ＾を読み込み、それぞれをＲＡＭ（１５）の所定の格納領域に格納する〔図１９参照〕。
【０１１０】
次に、運営者装置（１）の対話判定部（１５０）は、ＲＡＭ（１５）からｇ、ｃ、ｔ、Ｎ、乱数ξ、ｃ＾を読み込み、式（８）に示す関係が成立するか否かの判定を行う（ステップＳ６２１）〔図１９参照〕。この判定結果が関係不成立の場合には、運営者装置（１）の制御部（１９０）の制御の下、以下の処理を実行せずに終了する（ステップＳ６２２）。この判定結果が関係成立の場合には、運営者装置（１）の制御部（１９０）の制御の下、続くステップＳ６２３が実行される。
【０１１１】
運営者装置（１）のｚ生成部（１４８）は、ＲＡＭ（１５）から乱数ｃ、乱数ｒ、乱数ｗを読み込み、式（１０）に従った演算を行い、この演算結果ｚをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ６２３）〔図１９参照〕。
【数１０】
0004718335.tif 000011
【０１１２】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだｚを受託者装置（３−１）に対して送信する（ステップＳ６２４）〔図１９参照〕。
【０１１３】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ６２４において送信されたｚを受信し、このｚを外部記憶装置（３７−１）に保存記憶する（ステップＳ６２５）〔図２０参照〕。
【０１１４】
次に、受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）から、ｇ、Ｎ、認証情報生成因子Ｒ、ｚ、乱数ｃ、乱数ｕ、寄託データｓ、Ｗを読み込み、それぞれをＲＡＭ（３５−１）の所定の格納領域に格納する〔図２０参照〕。
【０１１５】
次に、受託者装置（３−１）の認証判定部（３４５−１）は、ＲＡＭ（３５−１）からｇ、ｚ、Ｎ、乱数ｃ、Ｗ、認証情報生成因子Ｒを読み込み、式（１１）に示す関係が成立するか否かの判定を行う（ステップＳ６２６）〔図２０参照〕。この判定結果が関係不成立の場合には、受託者装置（３−１）の制御部（３９０−１）の制御の下、以下の処理を実行せずに終了する（ステップＳ６２７）。この判定結果が関係成立の場合には、受託者装置（３−１）の制御部（３９０−１）の制御の下、続くステップＳ１６ａが実行される。ステップＳ１６ａ以降の処理は第２実施形態におけるのと同じ処理である。
【数１１】
0004718335.tif 000012
【０１１６】
《第４実施形態》
次に、本発明の第４実施形態について、図２３〜図２８を参照しながら説明する。
第４実施形態は、第１実施形態における認証効率と第３実施形態における安全性向上の折衷的な形態である。
第４実施形態では、第１実施形態および第３実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。
【０１１７】
［データ分散保持システム］
［運営者装置］
第４実施形態における運営者装置（１）の外部記憶装置（１７）〔あるいはＲＯＭなど〕には、合成数Ｎを生成するためのプログラム、合成数Ｎ未満の整数ｇを生成するためのプログラム、認証情報生成因子を生成するためのプログラム、乱数を生成するためのプログラム、後述するＢを生成するためのプログラム、受託者装置が正しく後述のＡを生成したかを判定するためのプログラム、受託者装置から受信した情報と運営者装置に保持される情報との一致を判定するためのプログラムおよびこれらのプログラムの処理において必要となるデータなどが保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存しておく。
【０１１８】
運営者装置（１）では、外部記憶装置（１７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（１５）に読み込まれて、ＣＰＵ（１４）で解釈実行・処理される。その結果、ＣＰＵ（１４）が所定の機能（Ｎ生成部、ｇ生成部、認証情報生成因子生成部、Ｂ生成部、乱数生成部、第２判定部、判定部、制御部）を実現する。
【０１１９】
［寄託者装置］
第４実施形態における寄託者装置（２）は、第１実施形態で説明した寄託者装置と同様であるから説明を略する。
【０１２０】
［受託者装置］
第４実施形態における受託者装置（３）の外部記憶装置（３７）〔あるいはＲＯＭなど〕には、認証情報を生成するためのプログラム、後述するＡを生成するためのプログラム、乱数を生成するためのプログラム、運営者装置が識別子を正しく用いて認証情報生成因子を生成したかを判定するためのプログラムおよびこれらのプログラムの処理において必要となるデータなどが保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存記憶しておく。
【０１２１】
受託者装置（３）では、外部記憶装置（３７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（３５）に読み込まれて、ＣＰＵ（３４）で解釈実行・処理される。その結果、ＣＰＵ（３４）が所定の機能（Ａ生成部、乱数生成部、第１判定部、認証情報生成部、制御部）を実現する。
【０１２２】
［システム構成］
第４実施形態におけるシステム構成は、第１実施形態で説明したシステム構成と同様であるから説明を略する。
【０１２３】
［データ保持認証方法の処理手順］
ステップ３およびステップ５を除き、ステップＳ１〜ステップＳ１１までは第１実施形態と同様である。
第４実施形態では上記ステップＳ３の処理とは異なり、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだＮ、ｇを寄託者装置（２）およびｆ個の受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して送信する（ステップＳ３ｃ）。
【０１２４】
また、第４実施形態では上記ステップＳ５の処理とは異なり、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）のそれぞれの制御部（３９０−１）、（３９０−２）、・・・、（３９０−ｆ）は、それぞれの通信部（３３−１）、（３３−２）、・・・、（３３−ｆ）を制御して、ステップＳ３ｃにおいて送信されたＮ、ｇを受信し、このＮ、ｇをそれぞれの外部記憶装置（３７−１）、（３７−２）、・・・、（３７−ｆ）に保存記憶する（ステップＳ５ｃ）。
【０１２５】
ステップＳ１１に続いて、次のような処理が順次行われる。
運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、認証開始情報βを受託者装置（３−１）に対して送信する（ステップＳ７０１）。認証開始情報βは、データ保持認証処理を開始することを明らかにする情報であり、格別の限定はない。
【０１２６】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ７０１において送信された認証開始情報βを受信し、この認証開始情報βを外部記憶装置（３７−１）に保存記憶する。次に、受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）からＮ、ｇ、νを読み込み、それぞれをＲＡＭ（３５−１）の所定の格納領域に格納する。そして、受託者装置（３−１）の乱数生成部（３４３−１）は、ＲＡＭ（３５−１）からνを読み込み、高々２２ν程度の大きさの乱数ａを生成し、この乱数ａをＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ７０２）〔図２３参照〕。
【０１２７】
次に、受託者装置（３−１）のＡ生成部（３４８−１）は、ＲＡＭ（３５−１）からＮ、ｇ、乱数ａを読み込み、式（１２）に従った演算を行い、この演算結果ＡをＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ７０３）〔図２３参照〕。
【数１２】
0004718335.tif 000013
【０１２８】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、適宜にＲＡＭ（３５−１）から読み込んだＡを運営者装置（１）に対して送信する（ステップＳ７０４）〔図２３参照〕。
【０１２９】
なお、ステップＳ７０３、Ｓ７０４で得られた乱数ａ、Ａは、受託者装置（３−１）の制御部（３９０−１）の制御によって、外部記憶装置（３７−１）に保存記憶される。
【０１３０】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ７０４において送信されたＡを受信し、このＡを外部記憶装置（１７）に保存記憶する（ステップＳ７０５）〔図２４参照〕。
【０１３１】
次に、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）からＮ、ｇ、ν、Ａを読み込み、それぞれをＲＡＭ（１５）の所定の格納領域に格納する〔図２４参照〕。
【０１３２】
次に、運営者装置（１）の乱数生成部（１４２）は、ＲＡＭ（１５）からνを読み込み、高々２２ν程度の大きさの乱数ｒを生成し、この乱数ｒをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ７０６）〔図２４参照〕。
【０１３３】
次に、運営者装置（１）の認証情報生成因子生成部（１４３）は、ＲＡＭ（１５）からＮ、ｇ、乱数ｒを読み込み、上記の式（２）に従った演算を行い、この演算結果Ｒ〔認証情報生成因子〕をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ７０７）〔図２４参照〕。
【０１３４】
次に、運営者装置（１）のＢ生成部（１４９）は、ＲＡＭ（１５）からＮ、乱数ｒ、Ａを読み込み、式（１３）に従った演算を行い、この演算結果ＢをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ７０８）〔図２４参照〕。
【数１３】
0004718335.tif 000014
【０１３５】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだ認証情報生成因子Ｒ、Ｂを受託者装置（３−１）に対して送信する（ステップＳ７０９）〔図２４参照〕。
【０１３６】
なお、ステップＳ７０６、Ｓ７０７、Ｓ７０８で得られた乱数ｒ、認証情報生成因子Ｒ、Ｂは、運営者装置（１）の制御部（１９０）の制御によって、外部記憶装置（１７）に保存記憶される。
【０１３７】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ７０９において送信された認証情報生成因子Ｒ、Ｂを受信し、この認証情報生成因子Ｒ、Ｂを外部記憶装置（３７−１）に保存記憶する（ステップＳ７１０）〔図２５参照〕。
【０１３８】
次に、受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）からＢ、認証情報生成因子Ｒ、乱数ａ、寄託データｓ、Ｎを読み込み、それぞれをＲＡＭ（３５−１）の所定の格納領域に格納する。
【０１３９】
次に、受託者装置（３−１）の第１判定部（３６０−１）は、ＲＡＭ（３５−１）からＢ、認証情報生成因子Ｒ、乱数ａ、Ｎを読み込み、式（１４）に示す関係が成立するか否かの判定を行う（ステップＳ７１１）〔図２５参照〕。この判定結果が関係不成立の場合には、受託者装置（３−１）の制御部（３９０−１）の制御の下、以下の処理を実行せずに終了する（ステップＳ７１２）。この判定結果が関係成立の場合には、受託者装置（３−１）の制御部（３９０−１）の制御の下、続くステップＳ７１３が実行される。
【数１４】
0004718335.tif 000015
【０１４０】
次に、受託者装置（３−１）の認証情報生成部（３４１−１）は、ＲＡＭ（３５−１）からＮ、寄託データｓ、認証情報生成因子Ｒを読み込み、上記の式（３）に従った演算を行い、この演算結果Ｒ（ｓ）〔認証情報〕をＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ７１３）〔図２５参照〕。
【０１４１】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、適宜にＲＡＭ（３５−１）から読み込んだ認証情報Ｒ（ｓ）および乱数ａを運営者装置（１）に対して送信する（ステップＳ７１４）〔図２５参照〕。
【０１４２】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ７１４において送信された認証情報Ｒ（ｓ）および乱数ａを受信し、この認証情報Ｒ（ｓ）および乱数ａを外部記憶装置（１７）に保存記憶する（ステップＳ７１５）〔図２６参照〕。
【０１４３】
次に、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）からＮ、乱数ｒ、認証情報Ｒ（ｓ）、検証情報Ｃ（ｓ）、Ａ、乱数ａ、ｇを読み込み、それぞれをＲＡＭ（１５）の所定の格納領域に格納する〔図２６参照〕。
【０１４４】
次に、運営者装置（１）の第２判定部（１６０）は、ＲＡＭ（１５）からＡ、ｇ、乱数ａ、Ｎを読み込み、式（１５）に示す関係が成立するか否かの判定を行う（ステップＳ７１６）〔図２６参照〕。この判定結果が関係不成立の場合には、運営者装置（１）の制御部（１９０）の制御の下、以下の処理を実行せずに終了する（ステップＳ７１７）。この判定結果が関係成立の場合には、運営者装置（１）の制御部（１９０）の制御の下、続くステップＳ１９以降の処理が実行される。ステップＳ１９以降の処理は既に説明したので略する。
【数１５】
0004718335.tif 000016
【０１４５】
第４実施形態では、上記ステップＳ７０１およびＳ７０２の処理で、運営者装置が認証開始情報βを受託者装置に送信し、受託者装置が認証開始情報βを受信するとしたが、ステップＳ７０１およびＳ７０２の処理を省略することも可能である。具体的には、ステップＳ７０４の処理で、受託者装置が運営者装置にＡとともに認証開始情報βを送信し、ステップＳ７０５の処理で、運営者装置が、Ａおよび認証開始情報βを受信する。つまり、受託者装置が認証開始の主導権を有する。但し、受託者が報酬を徒に得ようとする場合も考えられるので、運営者装置の外部記憶装置に前回の認証開始情報βを受信した時刻を記録しておき、前回の認証開始情報βの受信から一定時間が経過しないと再度の認証開始情報βを受け付けても認証を開始しないようにすることが望ましい。
【０１４６】
《第５実施形態》
次に、本発明の第５実施形態について、図２９から図３４を参照しながら説明する。
第５実施形態は、第４実施形態における計算効率の向上を図る形態である。計算効率の向上は、第２実施形態と同様にして行う。ここでは説明の便宜から、第４実施形態を基に第５実施形態の説明を行う。
第５実施形態では、第２実施形態および第４実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。また、以下では、単に寄託データｓと云えば、ｋ個の分割寄託データｓ０、ｓ１、…、ｓｋ−１を意味するとする。
【０１４７】
［運営者装置］
第５実施形態における運営者装置（１）は、第４実施形態で説明した運営者装置と同様であるから説明を略する。
【０１４８】
［寄託者装置］
第５実施形態における寄託者装置（２）は、第４実施形態で説明した寄託者装置と同様であるから説明を略する。
【０１４９】
［受託者装置］
第５実施形態における受託者装置（３）は、第４実施形態で説明した受託者装置と同様であるから説明を略する。
【０１５０】
［システム構成］
第５実施形態におけるシステム構成は、第１実施形態で説明したシステム構成と同様であるから説明を略する。
【０１５１】
［準備］
νを予め定められた自然数とする。νは、受託者装置（３）の外部記憶装置（３７）および運営者装置（１）の外部記憶装置（１７）に保存記憶されているとする。
【０１５２】
［データ保持認証方法の処理手順］
ステップＳ１からステップＳ１１までの処理は、第４実施形態における処理と同じであるから説明を略する。但し、ステップＳ６の処理は既述の第２実施形態のステップＳ６ａの処理とする。
【０１５３】
ステップＳ１１に続いて、定期または不定期に次のような処理が順次行われる。
まず、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）からνを読み込み、それぞれをＲＡＭ（１５）の所定の格納領域に格納する〔図２９参照〕。
【０１５４】
次に、運営者装置（１）の乱数生成部（１４２）は、ＲＡＭ（１５）からνを読み込み、高々νビット程度の大きさの乱数ｕを生成し、この乱数ｕをＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ８００）〔図２９参照〕。
【０１５５】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだ乱数ｕを受託者装置（３−１）に対して送信する（ステップＳ８０１）〔図２９参照〕。
【０１５６】
なお、ステップＳ８００で得られた乱数ｕは、運営者装置（１）の制御部（１９０）の制御によって、外部記憶装置（１７）に保存記憶される。
【０１５７】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ８０１において送信された乱数ｕを受信し、この乱数ｕを外部記憶装置（３７−１）に保存記憶する（ステップＳ８０２）〔図３０参照〕。
【０１５８】
ステップＳ８０２に続いてステップＳ７０２からＳ７１２が処理されるが、第４実施形態において説明したとおりであるから、説明を略する。
【０１５９】
ステップＳ７１１に続いて（つまり、ステップＳ７１２の終了処理をしない場合である。）、次のステップＳ８０３が処理される。即ち、受託者装置（３−１）の認証情報生成部（３４１−１）は、ＲＡＭ（３５−１）からＮ、寄託データｓ、認証情報生成因子Ｒ、乱数ｕ、Ａ、Ｂを読み込み（予め外部記憶装置（３７−１）から読み込まれているとする。）、式（１６）に従った演算を行い、この演算結果Ｒ（ｓ）〔認証情報〕をＲＡＭ（３５−１）の所定の格納領域に格納する（ステップＳ８０３）〔図３１参照〕。
【数１６】
0004718335.tif 000017
【０１６０】
ステップＳ８０３に続き、ステップＳ７１４〜Ｓ７１６が順次処理されるが、第４実施形態において説明したとおりであるから、説明を略する。
【０１６１】
ステップＳ７１６に続いて（つまり、ステップＳ７１７の終了処理をしない場合である。）、次のステップＳ８０４が処理される。即ち、運営者装置（１）の判定部（１４４）は、ＲＡＭ（１５）からＮ、乱数ｒ、乱数ｕ、認証情報生成子Ｒ、認証情報Ｒ（ｓ）、検証情報Ｃ（ｓ）、Ａ、Ｂを読み込み（予め外部記憶装置（１７）から読み込まれているとする。）、式（１７）に示す関係が成立するか否かの判定を行う（ステップＳ８０４）〔図３２参照〕。
【数１７】
0004718335.tif 000018
【０１６２】
ステップＳ８０４に続くステップＳ２０、Ｓ２１の処理は、第４実施形態における処理と同じであるから説明を略する。
【０１６３】
《第６実施形態》
次に、本発明の第６実施形態について、図３５から図３９を参照しながら説明する。
第６実施形態は、第１実施形態において受託者装置間で結託して不正を行う可能性を低減した形態である（第１実施形態において、寄託データｓを保持する受託者装置Ｐが、寄託データｓを保持しない受託者装置Ｐ’に対して対価を伴って寄託データｓの保持を証明することが考えられる。受託者装置Ｐ’は、寄託データｓの保持を不正に証明することで報酬を得ることができる。受託者装置Ｐは、寄託データｓを保持していることの報酬に加えて、受託者装置Ｐ’が受け取る報酬の一部を受け取ることで利益を得ることができる。）。
第６実施形態では、第１実施形態と同一の機能・処理については同一の符号を与えるなどして説明を省略する。
【０１６４】
第６実施形態における運営者装置（１）の外部記憶装置（１７）〔あるいはＲＯＭなど〕には、後述のＸ（ｓ）を生成するためのプログラム、受託者装置ごとに識別符号θを生成するためのプログラム、受託者装置ごとに合成数Ｎを生成するためのプログラム、受託者装置ごとに合成数Ｎ未満の整数ｇを生成するためのプログラム、乱数を生成するためのプログラム、検証情報を生成するためのプログラム、認証情報生成因子を生成するためのプログラム、受託者装置から取得した情報と寄託者装置から取得した情報との一致性を判定するためのプログラムなどが保存記憶されている。その他、これらのプログラムに基づく処理を制御するための制御プログラムも適宜に保存しておく。
また、プログラムの処理において必要となるデータとして、予め定められた自然数νが、運営者装置（１）の外部記憶装置（１７）に保存記憶されている。
【０１６５】
運営者装置（１）では、外部記憶装置（１７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（１５）に読み込まれて、ＣＰＵ（１４）で解釈実行・処理される。その結果、ＣＰＵ（１４）が所定の機能（Ｘ（ｓ）生成部、θ生成部、Ｎ生成部、ｇ生成部、乱数生成部、検証情報生成部、認証情報生成因子生成部、判定部、制御部）を実現する。
【０１６６】
［寄託者装置］
第６実施形態における寄託者装置（２）は、第１実施形態で説明した寄託者装置と同様であるから説明を略する（但し、検証情報などを生成しない。）。
【０１６７】
［受託者装置］
第６実施形態における受託者装置（３）の外部記憶装置（３７）〔あるいはＲＯＭなど〕には、認証情報を生成するためのプログラムなどが保存記憶されている。その他、このプログラムに基づく処理を制御するための制御プログラムも適宜に保存記憶しておく。
【０１６８】
受託者装置（３）では、外部記憶装置（３７）〔あるいはＲＯＭなど〕に記憶された各プログラムとこの各プログラムの処理に必要なデータが必要に応じてＲＡＭ（３５）に読み込まれて、ＣＰＵ（３４）で解釈実行・処理される。その結果、ＣＰＵ（３４）が所定の機能（認証情報生成部、制御部）を実現する。
【０１６９】
［システム構成］
第６実施形態におけるシステム構成は、第１実施形態で説明したシステム構成と同様であるから説明を略する。
【０１７０】
［準備］
Ｘ（ｓ）を予め定められた関数とする。例として、Ｘ（ｓ）＝ｇｓ  ｍｏｄ  Ｎ〔但し、ｇとＮとは互いに素とする。〕とおくこともできるし、その他にＳＨＡ−２５６などのハッシュ関数を用いることができ、適宜に設定変更可能である。
【０１７１】
［データ保持認証方法の処理手順］
寄託者装置（２）の制御部（２９０）は、通信部（２３）を制御して、適宜にＲＡＭ（２５）から読み込んだ寄託データｓを運営者装置（１）およびｆ個の受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して送信する（ステップＳ９０）〔図３５参照〕。
【０１７２】
各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）のそれぞれの制御部（３９０−１）、（３９０−２）、・・・、（３９０−ｆ）は、それぞれの通信部（３３−１）、（３３−２）、・・・、（３３−ｆ）を制御して、ステップＳ９０において送信された寄託データｓを受信し、この寄託データｓをそれぞれの外部記憶装置（３７−１）、（３７−２）、・・・、（３７−ｆ）に保存記憶する（ステップＳ９１）。図３７は、受託者装置（３−１）について例示している。
【０１７３】
また、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ９０において送信された寄託データｓを受信し、この寄託データｓを外部記憶装置（１７）に保存記憶する（ステップＳ９２）〔図３６参照〕。この際、ユーザから運営者に対して報酬の支払いが行われる。但し、この報酬は、ユーザがストレージサービスの利用に対して支払う対価であるから、通常の商取引に照らして、適宜の段階で報酬の支払いを行えば良く、このステップにおける報酬支払いに限定するものではない。
【０１７４】
寄託者装置（２）の制御部（２９０）は、外部記憶装置（２７）に保存記憶される寄託データｓを必要に応じて消除する（ステップＳ９３）。
【０１７５】
運営者装置（１）のＸ（ｓ）生成部（１４１０）は、ＲＡＭ（１５）から寄託データｓを読み込み（予め外部記憶装置（１７）から読み込まれているとする。）、寄託データｓを入力とした演算結果Ｘ（ｓ）〔寄託データ識別情報〕をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ９４）〔図３６参照〕。
【０１７６】
次に、運営者装置（１）のθ生成部（１４１１）は、受託者装置ごとに識別符号を決定し、識別符号θｊ（ｊ＝１，２，…，ｆ）をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ９５）〔図３６参照〕。
【０１７７】
運営者装置（１）のＮ生成部（１４０）は、ＲＡＭ（１５）から識別符号θｊ（ｊ＝１，２，…，ｆ）を読み込み、受託者装置ごとに異なる素因数分解が困難な合成数Ｎｊ（ｊ＝１，２，…，ｆ）を生成し、この合成数Ｎｊ（ｊ＝１，２，…，ｆ）をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ９６）〔図３６参照〕。
【０１７８】
素因数分解が困難な合成数Ｎｊ（ｊ＝１，２，…，ｆ）の生成方法としては、例えば、既述の確率的アルゴリズムによって効率的に計算可能である。なお、素数を生成するための擬似乱数の初期値として、識別符号θｊ（ｊ＝１，２，…，ｆ）を用いる。
【０１７９】
次に、運営者装置（１）のｇ生成部（１４１）は、ＲＡＭ（１５）から合成数Ｎｊ（ｊ＝１，２，…，ｆ）および識別符号θｊ（ｊ＝１，２，…，ｆ）を読み込み、Ｎｊ（ｊ＝１，２，…，ｆ）未満の正整数ｇｊ（ｊ＝１，２，…，ｆ）を生成し、この正整数ｇｊ（ｊ＝１，２，…，ｆ）をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ９７）〔図３６参照〕。
【０１８０】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、適宜にＲＡＭ（１５）から読み込んだＮｊ（ｊ＝１，２，…，ｆ）、ｇｊ（ｊ＝１，２，…，ｆ）、寄託データ識別情報Ｘ（ｓ）を対応するｆ個の受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して送信する（ステップＳ９８）〔図３６参照〕。
【０１８１】
また、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）のそれぞれの制御部（３９０−１）、（３９０−２）、・・・、（３９０−ｆ）は、それぞれの通信部（３３−１）、（３３−２）、・・・、（３３−ｆ）を制御して、ステップＳ９８において送信された各受託者装置に対応するＮｊ（ｊ＝１，２，…，ｆ）、ｇｊ（ｊ＝１，２，…，ｆ）、寄託データ識別情報Ｘ（ｓ）を受信し、これらＮｊ（ｊ＝１，２，…，ｆ）、ｇｊ（ｊ＝１，２，…，ｆ）、寄託データ識別情報Ｘ（ｓ）をそれぞれの外部記憶装置（３７−１）、（３７−２）、・・・、（３７−ｆ）に保存記憶する（ステップＳ９９）〔図３７参照〕。
【０１８２】
以下の処理は、定期ないし不定期（例えばユーザからの要求があった場合である。）に行われる。
【０１８３】
運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、認証開始情報βを受託者装置（３−１）に対して送信する（ステップＳ１００）。認証開始情報βは、データ保持認証処理を開始することを明らかにする情報であり、格別の限定はない。
【０１８４】
次に、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、ステップＳ１００において送信された認証開始情報βを受信し、この認証開始情報βを外部記憶装置（３７−１）に保存記憶する（ステップＳ１０１）〔図３７参照〕。
【０１８５】
次に、受託者装置（３−１）の制御部（３９０−１）は、外部記憶装置（３７−１）からＸ（ｓ）を読み込み、それぞれをＲＡＭ（３５−１）の所定の格納領域に格納する。そして、受託者装置（３−１）の制御部（３９０−１）は、通信部（３３−１）を制御して、適宜にＲＡＭ（３５−１）から読み込んだ寄託データ識別情報Ｘ（ｓ）を運営者装置（１）に対して送信する（ステップＳ１０２）〔図３７参照〕。
【０１８６】
次に、運営者装置（１）の制御部（１９０）は、通信部（１３）を制御して、ステップＳ１０２において送信された寄託データ識別情報Ｘ（ｓ）を受信し、この寄託データ識別情報Ｘ（ｓ）を外部記憶装置（１７）に保存記憶する（ステップＳ１０３）〔図３８参照〕。
【０１８７】
次に、運営者装置（１）の制御部（１９０）は、外部記憶装置（１７）から寄託データ識別情報Ｘ（ｓ）に対応した寄託データｓ、ν、ｇ１、Ｎ１を読み込み、これらをＲＡＭ（１５）の所定の格納領域に格納する。寄託データ識別情報Ｘ（ｓ）に対応した寄託データｓを決定する方法としては、上記ステップＳ９４の処理において、寄託データｓを用いて寄託データ識別情報Ｘ（ｓ）を生成した際に、寄託データｓとこの寄託データｓから生成した寄託データ識別情報Ｘ（ｓ）とを対応付けた対応表を作成しておき、この対応表を参照することで、寄託データ識別情報Ｘ（ｓ）に対応した寄託データｓを決定すればよい。
【０１８８】
そして、運営者装置（１）の検証情報生成部（１４１２）は、ＲＡＭ（１５）から寄託データｓ、ｇ１、Ｎ１を読み込み（予め外部記憶装置（１７）から読み込まれているとする。）、式（１）に従った演算を行い、検証情報Ｃ（ｓ）をＲＡＭ（１５）の所定の格納領域に格納する（ステップＳ１０４）〔図３８参照〕。
なお、この処理ではｇ１、Ｎ１を用いたが、受信した寄託データ識別情報Ｘ（ｓ）が、例えば受託者装置（３−ｆ）から送信されたものである場合には、ｇｆ、Ｎｆを用いることに留意しなければならない。
【０１８９】
ステップＳ１０４以降の処理は、第１実施形態のステップＳ１２以降の処理と同様であるから説明を略する。
【０１９０】
次に、上記各実施形態に対する変形例を、第１実施形態を例にとって説明する。
【０１９１】
《変形例１》
以上に説明した各実施形態では、運営者装置（運営者）がデータ保持の認証処理を行っていた。この運営者装置（１）が行っていたデータ保持の認証処理を寄託者装置（寄託者）自身が行うようにしてもよい。
【０１９２】
第１実施形態を例にとると、ステップＳ１２〜Ｓ１４、ステップＳ１８〜Ｓ２１の処理を、寄託者装置（２）が行うようにする。つまり、この場合、運営者装置（１）は、素因数分解困難な整数Ｎおよび正整数ｇを生成するものとなる。
【０１９３】
さらには、素因数分解困難な整数Ｎおよび正整数ｇの生成も、寄託者装置（２）が行うようにしてもよい。この場合には、運営者装置（１）は不要となる。
【０１９４】
この変形例１のように、第１実施形態で説明した運営者装置の機能を寄託者装置に代替させる場合には、既述の運営者装置の機能を実現するプログラムを寄託者装置に実装し、寄託者装置のＣＰＵがこれらのプログラムを解釈・実行することで、運営者装置の機能を実現することになる。従って、運営者装置の機能・処理で説明した事項が寄託者装置に当てはまるので、上記運営者装置に関する説明をもって、この変形例１における寄託者装置の説明とする。
【０１９５】
《変形例２》
以上に説明した各実施形態は、報酬の支払いを行うものであった。この報酬額を明確にするために、データ保持の認証処理の過程に報酬ポリシ（９）の開示を付加する。
【０１９６】
報酬ポリシ（９）とは、寄託データｓを保持した場合（より正確には、データ保持の認証に成功した場合である。）に受けることのできる報酬額を明記したものである。既述のとおり、寄託者装置（寄託者）は複数存在し、また、１つの寄託者装置でも寄託したい寄託データは複数存在するから、寄託データｓは複数存在する。そこで、報酬額は寄託データｓごとに定められることになるが（例えば寄託データのビット長を基準に報酬額を定める。）、この変形例では、報酬ポリシ（９）は検証情報Ｃ（ｓ）と報酬額を対応付けた対応表として与えられる（図４０参照）。図４０に例示するように、例えば、寄託データｓ[１]を保持することの報酬額を１千円とすると、報酬ポリシ（９）では検証情報Ｃ（ｓ[１]）と金１千円が対応付けられている。報酬ポリシ（９）は、運営者装置の外部記憶装置に保存記憶される。
【０１９７】
第１実施形態を例にとると、ステップＳ３の処理において、運営者装置（１）は、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）に対して、Ｎに加えて報酬ポリシを送信し、ステップＳ５の処理において、各受託者装置（３−１）、（３−２）、・・・、（３−ｆ）は、Ｎおよび報酬ポリシを受信する。
受託者は、報酬ポリシを参照することで、寄託データｓを保持した場合の報酬額を知ることができる。
【０１９８】
なお、報酬ポリシ（９）は、ステップＳ３、Ｓ５の処理に際して送受信されることに限定されず、要は、データ保持の認証処理の実施前であればいつでもよい。また、運営者装置（１）が報酬ポリシ（９）を送信するのではなく、寄託者装置（２）が、個別に−つまり、寄託データごとに−報酬額を定めて、寄託データとともに受託者装置に送信するとしてもよい〔ステップＳ７、Ｓ８参照〕。
【０１９９】
受託者装置がデータ保持の認証に成功すると、ネットワーク型電子マネーなどの公知の価値流通基盤を利用して、受託者は報酬ポリシに従った報酬額の支払いを受ける。
【０２００】
報酬ポリシ（９）は、寄託データの保持の認証に成功した受託者装置の数、各受託者装置の通信状態の品質情報、信頼度などパラメータを用いて、受託者ごとに報酬額を定めるようにしてもよい。
【０２０１】
《変形例３》
変形例３は、受託者リストを用いて、或る寄託データを受託していない受託者装置（以下、「潜在的受託者装置」という。）が、当該寄託データを受託した受託者装置から当該寄託データのコピーを送信してもらい、自らも当該寄託データを保持する受託者装置となって報酬を得ることのできるものである。
【０２０２】
第１実施形態を例にとって説明する。データ分散保持システム（５）には、紹介者装置（８）が、通信ネットワーク（６）を介して運営者装置、寄託者装置、受託者装置それぞれと通信可能に接続されている〔図４１参照〕。
【０２０３】
紹介者装置（８）のハードウェア構成例は、上記各実施形態で説明した運営者装置、寄託者装置、受託者装置と同様であり、紹介者装置（８）は例えば汎用コンピュータによって実現される。
【０２０４】
運営者装置（１）は、ステップＳ２０の処理を行うと〔ステップＳ２１の処理の後は認証処理を終了する（ステップＳ２２）。〕、通信部（１３）によって、寄託データｓの保持の認証に成功した受託者装置の識別番号γｊ（ｊ＝１，２，・・・，ｆ；但し、認証に成功したものに限る。）を検証情報Ｃ（ｓ）とともに紹介者装置（８）に送信する（ステップＳ２３）〔図４３、図４４参照〕。
【０２０５】
紹介者装置（８）の制御部は、その通信部を制御して、ステップＳ２３において送信された検証情報Ｃ（ｓ）および寄託データｓの保持の認証に成功した受託者装置の識別番号γｊを受信する（ステップＳ２４）〔図４４参照〕。
【０２０６】
次いで、紹介者装置（８）の受託者リスト生成手段（ＣＰＵが所定のプログラムを解釈・実行して実現する。）は、検証情報Ｃ（ｓ）と寄託データｓの保持の認証に成功した受託者装置の識別番号γｊとを対応付けて受託者リスト（７）を生成し、生成した受託者リスト（７）を紹介者装置（８）の外部記憶装置に保存記憶する（ステップＳ２５）〔図４４参照〕。
【０２０７】
図４２に例示した受託者リスト（７）は、例えば、検証情報Ｃ（ｓ[２]）に対応する寄託データｓ[２]の保持の認証に成功した受託者装置の識別番号が１、４、７、２０であり、寄託データｓ[２]を保持している４台の受託者装置が存在することを示している。
【０２０８】
紹介者装置（８）の制御部は、その通信部を制御して、受託者リスト（７）を潜在的受託者装置−第１実施形態で言えば、例えば受託者装置（３−２）などである−に送信する（ステップＳ２６）〔図４４参照〕。
【０２０９】
潜在的受託者装置（３−２）の制御部は、その通信部を制御して、紹介者装置（８）から送信された受託者リスト（７）を受信する（ステップＳ２７）〔図４４参照〕。
【０２１０】
そして、潜在的受託者装置の受託者探索部（ＣＰＵが所定のプログラムを解釈・実行して実現する。）は、受託者リスト（７）を参照して、所望の寄託データを受託している受託者装置を割り出し（ステップＳ２８）〔図４４参照〕、次いで、潜在的受託者装置の寄託データ取得手段（ＣＰＵが所定のプログラムを解釈・実行して実現する。）が、割り出した受託者装置−第１実施形態で言えば、受託者装置（３−１）である−に公知の方法でアクセスして所望の寄託データのコピーを取得する（ステップＳ２９）〔図４４参照〕。
【０２１１】
所望の寄託データを取得した潜在的受託者装置（この段階では、受託者装置と云うのが正確である。）は、例えば第１実施形態で説明した認証処理で当該寄託データの保持の認証を行い、報酬を得ることとなる。
【０２１２】
また、紹介者（装置）は、受託者（装置）を相互に紹介する際、つまり、受託者リスト（７）を提供する際に、受託者（装置）から報酬を得るとしてもよい。この報酬の支払いも、公知の価値流通基盤を利用して行われる。
【０２１３】
紹介者装置は、受託者リストを提供するのではなく、潜在的受託者装置から、潜在的受託者装置が希望する寄託データの情報を受けると、この情報から当該寄託データを受託している受託者装置を割り出し、さらに割り出した受託者装置の中から潜在的受託者装置に対して例えば最も効率的な通信経路にある受託者装置を決定して、この受託者装置の識別番号を潜在的受託者装置に送信するようにしてもよい。
【０２１４】
《変形例４》
変形例３は、潜在的受託者（装置）が、寄託者（装置）の承諾無く勝手に寄託データを保持するものであった。従って、寄託者（装置）として予期しない程に多くの受託者（装置）が存在して報酬の支払いを強制されることになる可能性がある。
変形例４は、変形例２の報酬ポリシ（９）を利用して、報酬支払いの抑制を図るものである。
【０２１５】
つまり、１回の認証処理の終了毎に、寄託者装置（寄託者）の制御部が、その通信部を制御して、運営者に対して、検証情報Ｃ（ｓ）および希望する報酬額を運営者装置（運営者）に送信する。検証情報Ｃ（ｓ）および希望する報酬額を受信した運営者装置(運営者)の報酬ポリシ書換部（ＣＰＵが所定のプログラムを解釈・実行して実現する。）は、報酬ポリシ（９）のうち、受信した検証情報Ｃ（ｓ）に対応した報酬額を、受信した報酬額に書き換え、これを新たな報酬ポリシとして運営者装置の外部記憶装置に保存記憶する。
【０２１６】
報酬額を増大すると、受託者（人間）はデータ保持を欲するので、より多くの潜在的受託者装置が寄託データの保持をするようになり、一方、報酬額を減少すると、受託者（人間）はデータ保持を欲しないので、新たな潜在的受託者装置は現れなくなり、また、現在寄託データを保持している受託者（装置）も、当該寄託データを保持していることの旨味が減少するので、寄託データを消除して報酬の請求をしなくなる可能性が望める。
【０２１７】
《利用例１》
従来のコンテンツ配信技術においては、コンテンツに対するアクセス制御を施したとしても、解除済みのコンテンツが流通することがあり、コンテンツ権利保持者の収入が不当に低減するリスクがある。このことは、アクセス制御の解除をはじめとした改変行為を技術的に防止することが困難である一方、コンテンツ権利保持者以外の利害関係者にとっては、アクセス制御の解除によって得られる経済的メリットが経済的デメリットを上回っていることに原因がある。
本発明は、著作権侵害の防止を図り得る。
【０２１８】
この変形例５では、コンテンツ権利保持者が寄託者となる。従って、上記説明の寄託者装置はコンテンツ権利保持者の用いる装置になる。以下、寄託者装置をこの意味で理解することとする。
【０２１９】
予め公知の暗号化手段によってアクセス制御されたコンテンツ（上記で云う寄託データに相当する。）を作成する。コンテンツとこのコンテンツの検証情報Ｃ（ｓ）を運営者装置に送信し、各受託者装置に配信する。
【０２２０】
コンテンツ権利保持者は、コンテンツのアクセス制御を解除するための鍵を販売する。コンテンツ権利保持者は、鍵の販売で得た収入の一部を、運営者へ支払う報酬に充当する。
【０２２１】
このような形態において、例えばコンテンツのコピーを得た第三者（利害関係者）は、新たな受託者となってコンテンツの保持の認証と再配信を行うことが合理的である。その際、コンテンツ権利保持者が作成したコンテンツをそのまま再配信することが合理的である。なぜなら、もし各受託者装置がコンテンツを保持していれば、コンテンツ権利保持者が運営者（装置）に支払った報酬の一部が受託者（上記第三者）に還元されるが、正規のコンテンツとわずかでも異なるコンテンツを保持していれば、コンテンツ権利保持者が運営者に支払った報酬の一部の還元を受けることができないからである。
【０２２２】
従って、コンテンツのコピーを得た第三者が、自らコンテンツを利用するためにコンテンツ権利保持者からアクセス制御解除鍵の一つを購入したとしても、わざわざアクセス制御解除済みのファイルを作成して再配信する選択は、経済的デメリットとなる。
【０２２３】
次に、悪意のある第三者Ｅがコンテンツに対してアクセス制御を解除または何らかの改変を施したコンテンツ（以下、「擬似コンテンツ」という。）を作成して、これを再配信して普及させようと企てる揚合を考える。このとき、擬似コンテンツは正規のコンテンツに駆逐される。なぜなら、まず、擬似コンテンツが正規のコンテンツを駆逐するためには、擬似コンテンツを保持していることで各受託者が得るメリットが、正規のコンテンツを保持していることで得られるメリットを超えるものでなくてはならない。コンテンツ権利保持者は正規のコンテンツの鍵の販売によって収入を得ていて、その一部が正規のコンテンツを保持している受託者に還元されるが、第三者Ｅが収入を得て擬似コンテンツを保持している受託者に還元することは経済的にも法的にも困難であるため、擬似コンテンツが正規のコンテンツを駆逐することは起こり難い。
【０２２４】
残る可能性は擬似コンテンツと正規のコンテンツが並存して配信される事態であるが、これも起こり難い。なぜなら、受託者にとっては、限られたストレージを有効に活用するために、保持および再配信することでより高額な収入を得られるデータを収集することが合理的であるので、擬似コンテンツを保持するよりも正規のコンテンツを保持することが合理的だからである。
【０２２５】
《利用例２》
上記の運営者装置、寄託者装置、受託者装置は、厳格な役回りを与えられているものではない。つまり、通信ネットワーク（６）に通信可能に接続されているコンピュータであれば、運営者装置、寄託者装置、受託者装置のいずれにも兼ねて機能できる。例えば、或る寄託データについて寄託者装置として役割を果たしたコンピュータが、別の或る寄託データについては、受託者装置として役割を果たすこともできるし、さらには、運営者装置として役割を果たすことも可能である。
【０２２６】
このような利用例では、或る寄託データを寄託した寄託者（装置）は、報酬支払い義務を負うが、この寄託者（装置）が同時に別の或る寄託データを受託する受託者（装置）であるならば、この受託者（装置）は報酬の支払いを受ける権利を有する。従って、運営者（装置）が存在するならば、両者の報酬額を対当額で相殺した上で一方に報酬支払いをするようにしてもよいし、上記変形例１で説明したように、運営者（装置）を介在させないシステム構成を採るならば、或る寄託データの寄託者（別の或る寄託データの受託者でもある。）と或る寄託データの受託者（別の或る寄託データの寄託者でもある。）とで相互に寄託データの保持の認証を行い、相互に認証成功したならば、対当額で報酬額を相殺することができる。
【０２２７】
本発明であるデータ分散保持システム・データ保持認証方法などは上述の実施形態に限定されるものではなく、本発明の趣旨を逸脱しない範囲で適宜変更が可能である。例えば、認証情報の生成方法や判定の方法は適宜に変更可能である。また、上記データ分散保持システム・データ保持認証方法において説明した処理は、記載の順に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されるとしてもよい。
【０２２８】
また、上記運営者装置、寄託者装置、受託者装置における処理機能をコンピュータによって実現する場合、運営者装置、寄託者装置、受託者装置が有すべき機能の処理内容はプログラムによって記述される。そして、このプログラムをコンピュータで実行することにより、上記運営者装置、寄託者装置、受託者装置における処理機能がコンピュータ上で実現される。
【０２２９】
この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体としては、例えば、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等どのようなものでもよい。具体的には、例えば、磁気記録装置として、ハードディスク装置、フレキシブルディスク、磁気テープ等を、光ディスクとして、ＤＶＤ（Digital Versatile Disc）、ＤＶＤ−ＲＡＭ（Random Access Memory）、ＣＤ−ＲＯＭ（Compact Disc Read Only Memory）、ＣＤ−Ｒ（Recordable）／ＲＷ（ReWritable）等を、光磁気記録媒体として、ＭＯ（Magneto-Optical disc）等を、半導体メモリとしてＥＥＰ−ＲＯＭ（Electronically Erasable and Programmable-Read Only Memory）等を用いることができる。
【０２３０】
また、このプログラムの流通は、例えば、そのプログラムを記録したＤＶＤ、ＣＤ−ＲＯＭ等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
【０２３１】
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。そして、処理の実行時、このコンピュータは、自己の記録媒体に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。また、このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。また、サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるＡＳＰ（Application Service Provider）型のサービスによって、上述の処理を実行する構成としてもよい。なお、本形態におけるプログラムには、電子計算機による処理の用に供する情報であってプログラムに準ずるもの（コンピュータに対する直接の指令ではないがコンピュータの処理を規定する性質を有するデータ等）を含むものとする。
【０２３２】
また、この形態では、コンピュータ上で所定のプログラムを実行させることにより、運営者装置、寄託者装置、受託者装置を構成することとしたが、これらの処理内容の少なくとも一部をハードウェア的に実現することとしてもよい。
【産業上の利用可能性】
【０２３３】
本発明は、有償のデータ分散保持などに有用である。
【図面の簡単な説明】
【０２３４】
【図１】運営者装置（１）のハードウェア構成を例示した構成ブロック図。
【図２】寄託者装置（２）のハードウェア構成を例示した構成ブロック図。
【図３】受託者装置（３）のハードウェア構成を例示した構成ブロック図。
【図４】データ分散保持システム（５）のシステム構成を例示した図。
【図５】第１実施形態に係る運営者装置（１）の機能ブロック図（その１）。
【図６】第１実施形態に係る寄託者装置（２）の機能ブロック図。
【図７】第１実施形態に係る運営者装置（１）の機能ブロック図（その２）。
【図８】第１実施形態に係る受託者装置（３−１）の機能ブロック図。
【図９】第１実施形態に係る運営者装置（１）の機能ブロック図（その３）。
【図１０】第１実施形態における処理フローを示す図。
【図１１】第２実施形態に係る寄託者装置（２）の機能ブロック図。
【図１２】第２実施形態に係る運営者装置（１）の機能ブロック図（その１）。
【図１３】第２実施形態に係る受託者装置（３−１）の機能ブロック図。
【図１４】第２実施形態に係る運営者装置（１）の機能ブロック図（その２）。
【図１５】第２実施形態における処理フローを示す図。
【図１６】第３実施形態に係る受託者装置（３−１）の機能ブロック図（その１）。
【図１７】第３実施形態に係る運営者装置（１）の機能ブロック図（その１）。
【図１８】第３実施形態に係る受託者装置（３−１）の機能ブロック図（その２）。
【図１９】第３実施形態に係る運営者装置（１）の機能ブロック図（その２）。
【図２０】第３実施形態に係る受託者装置（３−１）の機能ブロック図（その３）。
【図２１】第３実施形態における処理フローを示す図（その１）。
【図２２】第３実施形態における処理フローを示す図（その２）。
【図２３】第４実施形態に係る受託者装置（３−１）の機能ブロック図（その１）。
【図２４】第４実施形態に係る運営者装置（１）の機能ブロック図（その１）。
【図２５】第４実施形態に係る受託者装置（３−１）の機能ブロック図（その２）。
【図２６】第４実施形態に係る運営者装置（１）の機能ブロック図（その２）。
【図２７】第４実施形態における処理フローを示す図（その１）。
【図２８】第４実施形態における処理フローを示す図（その２）。
【図２９】第５実施形態に係る運営者装置（１）の機能ブロック図（その１）。
【図３０】第５実施形態に係る受託者装置（３−１）の機能ブロック図（その１）。
【図３１】第５実施形態に係る受託者装置（３−１）の機能ブロック図（その２）。
【図３２】第５実施形態に係る運営者装置（１）の機能ブロック図（その２）。
【図３３】第５実施形態における処理フローを示す図（その１）。
【図３４】第５実施形態における処理フローを示す図（その２）。
【図３５】第６実施形態に係る寄託者装置（２）の機能ブロック図。
【図３６】第６実施形態に係る運営者装置（１）の機能ブロック図（その１）。
【図３７】第６実施形態に係る受託者装置（３−１）の機能ブロック図（その１）。
【図３８】第６実施形態に係る運営者装置（１）の機能ブロック図（その２）。
【図３９】第６実施形態における処理フローを示す図。
【図４０】報酬ポリシ（９）のデータ構造を例示する図。
【図４１】紹介者装置（８）が存在する場合のデータ分散保持システム（５）のシステム構成を例示した図。
【図４２】受託者リスト（７）のデータ構造を例示する図。
【図４３】変形例３における処理フローを示す図（その１）。
【図４４】変形例３における処理フローを示す図（その２）。
【符号の説明】
【０２３５】
１          運営者装置
２          寄託者装置
３、３−１、３−２、・・・、３−ｆ  受託者装置
５          データ分散保持システム
６          通信ネットワーク
７          受託者リスト
８          紹介者装置
９          報酬ポリシ
１４０      Ｎ生成部
１４１      ｇ生成部
１４２      乱数生成部
１４３      認証情報生成因子生成部
１４４      判定部
１４７      Ｗ生成部
１４８      ｚ生成部
１４９      Ｂ生成部
１４１０    Ｘ（ｓ）生成部
１４１１    θ生成部
１４１２    検証情報生成部
１５０      対話判定部
１６０      第２判定部
２４１      検証情報生成部
３４１−１  認証情報生成部
３４２−１  ｃ＾生成部
３４３−１  乱数生成部
３４５−１  認証判定部
３４８−１  Ａ生成部
３６０−１  第１判定部
【図１】
0004718335.tif 000019
【図２】
0004718335.tif 000020
【図３】
0004718335.tif 000021
【図４】
0004718335.tif 000022
【図５】
0004718335.tif 000023
【図６】
0004718335.tif 000024
【図７】
0004718335.tif 000025
【図８】
0004718335.tif 000026
【図９】
0004718335.tif 000027
【図１０】
0004718335.tif 000028
【図１１】
0004718335.tif 000029
【図１２】
0004718335.tif 000030
【図１３】
0004718335.tif 000031
【図１４】
0004718335.tif 000032
【図１５】
0004718335.tif 000033
【図１６】
0004718335.tif 000034
【図１７】
0004718335.tif 000035
【図１８】
0004718335.tif 000036
【図１９】
0004718335.tif 000037
【図２０】
0004718335.tif 000038
【図２１】
0004718335.tif 000039
【図２２】
0004718335.tif 000040
【図２３】
0004718335.tif 000041
【図２４】
0004718335.tif 000042
【図２５】
0004718335.tif 000043
【図２６】
0004718335.tif 000044
【図２７】
0004718335.tif 000045
【図２８】
0004718335.tif 000046
【図２９】
0004718335.tif 000047
【図３０】
0004718335.tif 000048
【図３１】
0004718335.tif 000049
【図３２】
0004718335.tif 000050
【図３３】
0004718335.tif 000051
【図３４】
0004718335.tif 000052
【図３５】
0004718335.tif 000053
【図３６】
0004718335.tif 000054
【図３７】
0004718335.tif 000055
【図３８】
0004718335.tif 000056
【図３９】
0004718335.tif 000057
【図４０】
0004718335.tif 000058
【図４１】
0004718335.tif 000059
【図４２】
0004718335.tif 000060
【図４３】
0004718335.tif 000061
【図４４】
0004718335.tif 000062