(57)【要約】【課題】コンテンツデータの生成者以外の第三者に公開されるコンテンツデータを保護することが可能な、新規かつ改良された情報処理装置等を提供する。【解決手段】コンテンツシェアリングサーバ１０は、ユーザ４１からアップロードされたコンテンツに対するタイムスタンプをタイムスタンプ付与サーバ２０に要求し、コンテンツデータにタイムスタンプが付与された場合に、コンテンツデータを第三者に公開する。【選択図】図１
2012170047.tif 000002
【特許請求の範囲】
【請求項１】
ユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求部と、
前記タイムスタンプが付与された前記コンテンツデータを、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力部と、を備える、情報処理装置。
【請求項２】
前記タイムスタンプ要求部は、複数の前記コンテンツデータを集約したデータに対するタイムスタンプを前記タイムスタンプ付与部に要求する、請求項１記載の情報処理装置。
【請求項３】
前記タイムスタンプ要求部は、前記ユーザ装置から出力されたコンテンツデータ及び当該コンテンツデータを出力した前記ユーザ装置のユーザを表す識別データに対するタイムスタンプを前記タイムスタンプ付与部に要求する、請求項１記載の情報処理装置。
【請求項４】
前記コンテンツデータ出力部は、前記タイムスタンプが付与された前記コンテンツデータの他、前記タイムスタンプが付与されていない前記コンテンツデータを、前記コンテンツデータを出力したユーザの保有する装置に出力する、請求項１記載の情報処理装置。
【請求項５】
前記タイムスタンプ要求部は、前記タイムスタンプを前記タイムスタンプ付与部に要求した後、前記タイムスタンプ付与部から前記タイムスタンプが与えられた場合に、新たな前記タイムスタンプを前記タイムスタンプ付与部に要求する、請求項１記載の情報処理装置。
【請求項６】
前記タイムスタンプ要求部は、前記ユーザ装置から前記コンテンツデータが出力される毎に、前記タイムスタンプを前記タイムスタンプ付与部に要求することを特徴とする、請求項１記載の情報処理装置。
【請求項７】
前記コンテンツデータ出力部は、前記コンテンツデータに付与されたタイムスタンプをさらに前記他のユーザ装置に出力する、請求項１記載の情報処理装置。
【請求項８】
前記コンテンツデータ出力部は、前記他のユーザ装置から前記タイムスタンプを要求された場合に、前記コンテンツデータに付与されたタイムスタンプを、前記他のユーザ装置に出力する、請求項７記載の情報処理装置。
【請求項９】
前記タイムスタンプ要求部は、前記コンテンツデータを出力したユーザ装置から前記タイムスタンプの付与を要求された場合に、前記タイムスタンプ付与部に前記タイムスタンプを要求する、請求項１記載の情報処理装置。
【請求項１０】
複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するステップと、
前記コンテンツデータに前記タイムスタンプが付与された場合に、前記コンテンツデータを、前記複数のユーザ装置のうち、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するステップと、を含む、情報処理方法。
【請求項１１】
コンピュータに、
複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求機能と、
前記コンテンツデータに前記タイムスタンプが付与された場合に、前記コンテンツデータを、前記複数のユーザ装置のうち、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力機能と、を実現させる、プログラム。
【請求項１２】
コンテンツデータを取得するコンテンツ取得部と、
コンテンツ要約データを生成するコンテンツ要約データ生成部と、
前記コンテンツ要約データを他の情報処理装置に送信する通信部と、を備える、情報処理装置。
【請求項１３】
前記通信部と前記他の情報処理装置との間の通信帯域に基づいて、前記コンテンツデータ及び前記コンテンツ要約データのうち少なくとも一方を通信対象データに決定する通信対象データ決定部を備え、
前記通信部は、前記通信対象データを前記他の情報処理装置に送信する、請求項１２記載の情報処理装置。
【請求項１４】
前記通信対象データ決定部は、前記通信帯域に基づいて、前記コンテンツデータ及び前記コンテンツ要約データのうち少なくとも一方を第１の通信対象データに決定し、前記コンテンツ要約データを前記第１の通信対象データに決定した場合には、前記通信部が前記コンテンツ要約データを前記他の情報処理装置に送信した後、前記通信帯域に基づいて、前記コンテンツデータを第２の通信対象データとするか否かを決定する、請求項１３記載の情報処理装置。
【請求項１５】
前記通信対象データ決定部は、前記コンテンツ要約データを前記第１の通信対象データとした場合には、前記コンテンツデータ及び前記コンテンツ要約データを関連付けるための関連付け用データを前記第１の通信対象データに含める、請求項１４記載の情報処理装置。
【請求項１６】
前記通信対象データ決定部は、前記コンテンツデータを第２の通信対象データとする場合には、前記関連付け用データを前記第２の通信対象データに含める、請求項１５記載の情報処理装置。
【請求項１７】
前記通信対象データ決定部は、前記通信対象データの内容に関する状態データを前記通信対象データに付与する、請求項１３記載の情報処理装置。
【請求項１８】
コンテンツデータを取得することと、
コンテンツ要約データを生成することと、
前記コンテンツ要約データを他の情報処理装置に送信することと、を含む、情報処理方法。
【請求項１９】
コンピュータに、
コンテンツデータを取得するコンテンツ取得機能と、
コンテンツ要約データを生成するコンテンツ要約データ生成機能と、
前記コンテンツ要約データを他の情報処理装置に送信する通信機能と、を実現させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
【背景技術】
【０００２】
近年、デジタルカメラなどの機器やインターネット環境の発展により、ユーザがコンテンツデータ（例えば写真等の画像データや、文書データ）を生成し、それをインターネット上のサーバに保存するとともに、他のユーザに公開するという、いわゆる共有（シェアリング）サービスが一般的になってきている。また、ブログなどで自身の日記や考えを他者に公開するユーザも多い。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特表平１０−５０８１２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
このような状況で問題となるのは、あるユーザが生成したコンテンツデータを、第三者がコピーし、第三者が生成したものとして他の場所で使用するという、盗作や著作権の侵害といった行為である。
【０００５】
なお、各種のデータを保護する技術として、ある時点でデータが存在していたことを証明するタイムスタンプ技術が知られている。
【０００６】
タイムスタンプ技術は、ユーザがデータの特徴値（一般的には、データをハッシュ関数に適用した結果）をタイムスタンプオーソリティ（ＴＳＡ）に送信し、ＴＳＡがデータの特徴値と受信日時に対してデジタル署名を付加した値とをタイムスタンプとして返送するものである。
【０００７】
タイムスタンプとして署名されるアイテムにユーザの識別子が付加されていれば、ある時点でそのユーザがそのコンテンツを保持していたことが証明される。このようなタイムスタンプの技術は、例えば特許文献１に記載されている。特許文献１は、保管庫に保管する複数のデータに対して一括してタイムスタンプを与える技術を開示する。
【０００８】
しかし特許文献１に開示された技術は、データを保管庫に保管した後に、他のユーザに対してデータを公開することを想定したものではない。また、データの所有者を証明するものでもない。したがって、特許文献１に開示された技術は、上記の問題の解決に何ら寄与しない。
【０００９】
一方、上記の問題を解決するために、各コンテンツデータをディジタルライツマネジメント（ＤＲＭ）等のコピー防止技術により保護することも考えられる。しかし、サーバにアップロードされるコンテンツデータは膨大であるので、これらのコンテンツデータに逐一コピー防止技術を適用しようとすると、サーバに掛かる負担が増大してしまう。
【００１０】
そこで、本開示は、上記問題に鑑みてなされたものであり、本開示の目的とするところは、コンテンツデータの生成者以外の第三者に公開されるコンテンツデータを保護することが可能な、新規かつ改良された情報処理装置、情報処理方法、及びプログラムを提供することにある。
【課題を解決するための手段】
【００１１】
上記課題を解決するために、本開示のある観点によれば、ユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求部と、タイムスタンプが付与されたコンテンツデータを、コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力部と、を備える、情報処理装置が提供される。
【００１２】
ここで、タイムスタンプ要求部は、複数のコンテンツデータを集約したデータに対するタイムスタンプをタイムスタンプ付与部に要求してもよい。
【００１３】
また、タイムスタンプ要求部は、ユーザ装置から出力されたコンテンツデータ及び当該コンテンツデータを出力したユーザ装置のユーザを表す識別データに対するタイムスタンプをタイムスタンプ付与部に要求するようにしてもよい。
【００１４】
また、コンテンツデータ出力部は、タイムスタンプが付与されたコンテンツデータの他、タイムスタンプが付与されていないコンテンツデータを、コンテンツデータを出力したユーザの保有する装置に出力してもよい。
【００１５】
また、タイムスタンプ要求部は、タイムスタンプをタイムスタンプ付与部に要求した後、タイムスタンプ付与部からタイムスタンプが与えられた場合に、新たなタイムスタンプをタイムスタンプ付与部に要求してもよい。
【００１６】
また、タイムスタンプ要求部は、ユーザ装置からコンテンツデータが出力される毎に、タイムスタンプをタイムスタンプ付与部に要求してもよい。
【００１７】
また、コンテンツデータ出力部は、コンテンツデータに付与されたタイムスタンプをさらに他のユーザ装置に出力してもよい。
【００１８】
また、コンテンツデータ出力部は、他のユーザ装置からタイムスタンプを要求された場合に、コンテンツデータに付与されたタイムスタンプを、他のユーザ装置に出力してもよい。
【００１９】
また、タイムスタンプ要求部は、コンテンツデータを出力したユーザ装置からタイムスタンプの付与を要求された場合に、タイムスタンプ付与部にタイムスタンプを要求してもよい。
【００２０】
本開示の他の観点によれば、複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するステップと、コンテンツデータにタイムスタンプが付与された場合に、コンテンツデータを、複数のユーザ装置のうち、コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するステップと、を含む、情報処理方法が提供される。
【００２１】
本開示のさらに他の観点によれば、コンピュータに、複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求機能と、コンテンツデータにタイムスタンプが付与された場合に、コンテンツデータを、複数のユーザ装置のうち、コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力機能と、を実現させる、プログラムが提供される。
【００２２】
本開示のさらに他の観点によれば、複数のユーザ装置と、情報処理装置とを備える情報処理システムであって、情報処理装置は、複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求部と、タイムスタンプが付与されたコンテンツデータを、コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力部と、を備える、情報処理システムが提供される。
【００２３】
ここで、ユーザ装置のユーザからの要求に応じて、コンテンツデータに付与されたタイムスタンプが正しいかを検証する検証装置を備えるようにしてもよい。
【００２４】
また、ユーザ装置は、コンテンツデータに付与されたタイムスタンプが正しいかを検証する検証部を有するようにしてもよい。
【００２５】
本開示のさらに他の観点によれば、コンテンツデータを取得するコンテンツ取得部と、コンテンツ要約データを生成するコンテンツ要約データ生成部と、コンテンツ要約データを他の情報処理装置に送信する通信部と、を備える、情報処理装置が提供される。
【００２６】
本開示のさらに他の観点によれば、コンテンツデータを取得することと、コンテンツ要約データを生成することと、コンテンツ要約データを他の情報処理装置に送信することと、を含む、情報処理方法が提供される。
【００２７】
本開示のさらに他の観点によれば、コンピュータに、コンテンツデータを取得するコンテンツ取得機能と、コンテンツ要約データを生成するコンテンツ要約データ生成機能と、コンテンツ要約データを他の情報処理装置に送信する通信機能と、を実現させる、プログラムが提供される。
【００２８】
本開示のさらに他の観点によれば、ユーザ装置から出力されたコンテンツデータを受領する第１の情報処理装置と、コンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求する第２の情報処理装置と、コンテンツデータと、コンテンツデータに付与されたタイムスタンプとを記憶する第３の情報処理装置と、コンテンツデータを識別するためのコンテンツ識別データと、コンテンツデータの第３の情報処理装置内での所在を示すコンテンツパスデータと、タイムスタンプの第３の情報処理装置内での所在を示すタイムスタンプパスデータと、を関連付けて記憶する第４の情報処理装置と、を備える情報処理システムが提供される。
【発明の効果】
【００２９】
以上説明したように本開示によれば、仮に他のユーザ装置のユーザがコンテンツデータを不正使用したとしても、その日時はタイムスタンプが示す日時以降であるので、コンテンツデータを生成したユーザは、タイムスタンプを根拠に、当該コンテンツデータの生成者は自分であることを主張することができる。すなわち、コンテンツデータを生成したユーザ以外の第三者に公開されたコンテンツデータが保護される。
【図面の簡単な説明】
【００３０】
【図１】本開示の第１の実施形態に係る情報処理システムの概要を示す説明図である。
【図２】同実施形態にかかる情報処理システムによる処理の概要を示す説明図である。
【図３】コンテンツシェアリングサーバの構成を示すブロック図である。
【図４】データ生成部の構成を示すブロック図である。
【図５】コンテンツシェアリングサーバが管理するテーブルの一例を示す説明図である。
【図６】コンテンツ情報データのデータ構造を示す説明図である。
【図７】タイムスタンプタグデータのデータ構造を示す説明図である。
【図８】コンテンツパッケージデータのデータ構造を示す説明図である。
【図９】情報処理システムによる処理の手順を示すシーケンス図である。
【図１０】コンテンツシェアリングサーバによる処理の手順を示すフローチャートである。
【図１１】ユーザ端末に表示される画像の例を示す説明図である。
【図１２】コンテンツシェアリングサーバによる処理の手順を示すフローチャートである。
【図１３】ユーザが事業者と締結した契約の種類と、タイムスタンプの取得の要否との対応関係を示す説明図である。
【図１４】本開示の第２の実施形態に係る情報処理システムの概要を示す説明図である。
【図１５】ユーザ端末の構成を示すブロック図である。
【図１６】コンテンツ生成装置の構成を示すブロック図である。
【図１７】ウェブサーバの構成を示すブロック図である。
【図１８】不正処理決定テーブルの一例を示す説明図である。
【図１９】ストレージサーバの構成を示すブロック図である。
【図２０】データベースサーバの構成を示すブロック図である。
【図２１】コンテンツ情報管理テーブルの一例を示す説明図である。
【図２２】タイムスタンプ情報管理テーブルの一例を示す説明図である。
【図２３】タイムスタンプ取得エンジンの構成を示すブロック図である。
【図２４】コンテンツ生成装置による処理の手順を示すフローチャートである。
【図２５】ユーザ端末による処理の手順を示すフローチャートである。
【図２６】ウェブサーバによる処理の手順を示すフローチャートである。
【図２７】ウェブサーバによる処理の手順を示すフローチャートである。
【図２８】ウェブサーバによる処理の手順を示すフローチャートである。
【図２９】タイムスタンプ取得エンジンによる処理の手順を示すフローチャートである。
【図３０】ユーザ端末による処理の手順を示すフローチャートである。
【図３１】ユーザ端末の表示部に表示される画像の一例を示す説明図である。
【発明を実施するための形態】
【００３１】
以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
【００３２】
なお、説明は以下の順序で行うものとする。
１．第１の実施形態
１−１．情報処理システムの概略構成
１−２．情報処理システムによる処理の概要
１−３．情報処理システムの詳細な構成
１−４．情報処理システムによる処理
１−５．各種変形例
２．第２の実施形態
２−１．情報処理システムの概略構成
２−２．情報処理システムの詳細な構成
２−３．情報処理システムによる処理
【００３３】
＜１−１．情報処理システムの構成＞
まず、図１に基づいて、本実施の形態に係る情報処理システムの概略構成を説明する。情報処理システム１００は、コンテンツシェアリングサーバ（情報処理装置）１０と、タイムスタンプ付与サーバ（タイムスタンプ付与部）２０と、複数のユーザ端末（ユーザ装置）４０と、これらを接続するネットワーク５０とを備える。
【００３４】
コンテンツシェアリングサーバ１０は、コンテンツデータの管理、公開等を実施する管理者が保有し、コンテンツデータの管理、タイムスタンプの要求、タイムスタンプが付与されたコンテンツデータの公開等を行う。
【００３５】
タイムスタンプ付与サーバ２０は、タイムスタンプの付与等を実施するタイムスタンプオーソリティ（ＴＳＡ）３０が保有し、コンテンツシェアリングサーバ１０からの要求に応じて、コンテンツデータにタイムスタンプを付与する。
【００３６】
ユーザ端末４０（４０ａ、４０ｂ、４０ｃ）は、それぞれ異なるユーザ４１（４１ａ、４１ｂ、４１ｃ）によって操作が可能であり、ユーザ４１が自ら生成したコンテンツデータ（ＵＧＣ（Ｕｓｅｒ  Ｇｅｎｅｒａｔｅｄ  Ｃｏｎｔｅｎｔ）データ）をコンテンツシェアリングサーバ１０に出力（アップロード）することができる。例えば、ユーザ４１ａは、ユーザ端末４０ａを用いてコンテンツデータをコンテンツシェアリングサーバ１０にアップロードすることができる。
【００３７】
また、ユーザ４１は、ユーザ端末４０を用いて、コンテンツデータの閲覧をコンテンツシェアリングサーバ１０に要求することができる。コンテンツシェアリングサーバ１０は、閲覧要求を受けたコンテンツデータをユーザ端末４０に出力する。ユーザ端末４０は、コンテンツシェアリングサーバ１０から与えられたコンテンツデータをディスプレイ４０１に表示する。なお、タイムスタンプ付与サーバ２０及びユーザ端末４０としては、公知のものが任意に使用される。例えば、ユーザ端末４０は、テレビジョン受信機、カーナビ、携帯電話機、ゲーム機、音楽プレーヤ、スマートフォン、スマートタブレット等であってもよい。
【００３８】
＜１−２．情報処理システムによる処理の概要＞
次に、情報処理システム１００による処理の概要を、図２に基づいて説明する。ここでは、ユーザ４１ａがコンテンツデータをアップロードし、ユーザ４１ｃがそのコンテンツデータを閲覧するものとする。
【００３９】
まず、ステップＳ１において、ユーザ４１ａは、自ら生成したコンテンツデータをコンテンツシェアリングサーバ１０に出力（送信）する。
【００４０】
ステップＳ２において、コンテンツシェアリングサーバ１０は、ユーザ４１ａから与えられたコンテンツデータを記憶する一方、このコンテンツデータおよびユーザ４１ａを識別するデータに対するタイムスタンプをタイムスタンプ付与サーバ２０に要求する。
【００４１】
ステップＳ３において、タイムスタンプ付与サーバ２０は、コンテンツデータおよびユーザ４１ａを識別するデータに対するタイムスタンプを発行し、コンテンツシェアリングサーバ１０に出力（送信）する。
【００４２】
ステップＳ４において、ユーザ４１ｃは、ユーザ４１ａが生成したコンテンツデータの閲覧要求をコンテンツシェアリングサーバ１０に対して行う。これに応じて、コンテンツシェアリングサーバ１０は、タイムスタンプが付与されたコンテンツデータを、ユーザ端末４０ｃに出力（送信）する。ユーザ端末４０ｃは、ディスプレイ４０１にコンテンツデータを表示する。これにより、コンテンツシェアリングサーバ１０は、タイムスタンプが付与されたコンテンツデータを、ユーザ４１ａ以外の第三者に公開する。
【００４３】
したがって、仮にユーザ４１ｃがコンテンツデータを不正使用（例えば、データの改竄、自らの名前での公開等）したとしても、その日時はタイムスタンプが示す日時以降であるので、ユーザ４１ａは、タイムスタンプを根拠に、当該コンテンツデータの生成者は自分であることを主張することができる。すなわち、ユーザ４１ａ以外の第三者に公開されたコンテンツデータが保護される。なお、ステップＳ１〜Ｓ４の詳細については後述する。
【００４４】
＜１−３．情報処理システムの詳細な構成＞
次に、図３〜図８に基づいて、情報処理システム１００の構成について詳細に説明する。
【００４５】
タイムスタンプ付与サーバ２０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。例えば、タイムスタンプ付与サーバ２０は、コンテンツシェアリングサーバ１０の要求に応じて後述するタイムスタンプタグデータを生成し、コンテンツシェアリングサーバ１０に出力する。
【００４６】
ユーザ端末４０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置、キーボード、マウス、ディスプレイ４０１等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。例えば、ユーザ端末４０は、ユーザ４１が入力したアカウント及びパスワードをコンテンツシェアリングサーバ１０に出力することでコンテンツシェアリングサーバ１０にログインし、ログイン後にコンテンツデータをコンテンツシェアリングサーバ１０に出力し、コンテンツシェアリングサーバ１０から出力されたコンテンツデータを表示する。ここで、ユーザ端末４０から出力されるコンテンツデータには、そのコンテンツデータを出力（送信）したユーザ４１を情報処理システム１００上で一意に特定する識別データ、例えばアカウントやユーザＩＤが付加されている。アカウントとユーザＩＤは同一の数値もしくは文字列としてもよいし、アカウントは人間が記憶及び識別しやすい文字列とし、ユーザＩＤはアカウントと１対１に対応した数値としてもよい。
【００４７】
コンテンツシェアリングサーバ１０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、及び通信装置等のハードウェア構成を備え、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。コンテンツシェアリングサーバ１０は、具体的には、送受信部（コンテンツデータ出力部）１１と、記憶部１２と、データ管理部１３（タイムスタンプ要求部）と、検証部１４とを備える。
【００４８】
送受信部１１は、タイムスタンプ付与サーバ２０やユーザ端末４０から与えられたデータをデータ管理部１３に出力し、データ管理部１３から与えられたデータをタイムスタンプ付与サーバ２０やユーザ端末４０に出力する。
【００４９】
記憶部１２は、図５に示すコンテンツデータ管理テーブルを記憶する他、データ管理部１３が生成したデータや、各種公開鍵や公開関数（例えば、後述するハッシュ関数）も記憶する。コンテンツデータ管理テーブルは複数の行からなり、行毎に、コンテンツＩＤと、コンテンツデータと、ユーザＩＤと、受信日時データと、コンテンツ要約データ（ＣＤ（Ｃｏｎｔｅｎｔ  Ｄｉｇｅｓｔ）データ）と、ＡＣＩＤ（Ａｇｒｒｅｇａｔｅｄ  Ｃｏｎｔｅｎｔ  Ｉｎｆｏ  Ｄｉｇｅｓｔ）ポインタと、集約化コンテンツ情報要約データ（ＡＣＩＤデータ）と、タイムスタンプタグデータと、タイムスタンプステータスデータとが対応して記録される。これらのデータの詳細については後述する。
【００５０】
データ管理部１３は、図４に示すように、コンテンツ要約データ生成部１３１と、コンテンツ情報データ生成部１３２と、コンテンツ情報要約データ生成部１３３と、集約化コンテンツ情報要約データ生成部１３４と、要求データ生成部１３５と、コンテンツパッケージデータ生成部１３６とを備える。
【００５１】
コンテンツ要約データ生成部１３１（以下、「ＣＤ生成部１３１」とも称する）は、送受信部１１からコンテンツデータが与えられた際に、図５に示すコンテンツデータ管理テーブルにそのコンテンツデータ用の行を生成し、コンテンツデータをその行に格納する。
【００５２】
さらに、ＣＤ生成部１３１は、コンテンツデータを情報処理システム１００上で一意に特定するためのコンテンツＩＤを生成し、コンテンツデータを出力（送信）したユーザ４１を情報処理システム１００上で一意に特定するためのユーザＩＤとともに、当該コンテンツデータ用の行に格納する。このユーザＩＤは、上述のように、そのコンテンツが送信されたセッションのログイン処理において、ユーザから提示される。
【００５３】
さらに、ＣＤ生成部１３１は、コンテンツデータの受信日時を示す受信日時データも生成し、当該コンテンツデータ用の行に格納する。
【００５４】
さらに、ＣＤ生成部１３１は、コンテンツデータをハッシュ関数に入力することで、コンテンツ要約データ（ＣＤデータ）を生成し、当該コンテンツデータ用の行に格納する。なお、本願では、ハッシュ関数として、入力されたデータを２５６ビットのデータに変換するもの（例えばＳＨＡ−２）が使用されるが、これに限定されない。ハッシュ関数は、例えば、情報処理システム１００に要求される安全性の度合いに応じて、任意に選択される。
【００５５】
なお、ＣＤ生成部１３１は、コンテンツデータ用の行を構成する各領域のうち、ＡＣＩＤポインタ用の領域、ＡＣＩＤデータ用の領域、タイムスタンプタグデータ用の領域には、データが未決定である旨の初期値を格納する。また、ＣＤ生成部１３１は、タイムスタンプステータスデータ用の領域には、「タイムスタンプ未取得」を示す初期値を格納する。
【００５６】
ＣＤ生成部１３１は、コンテンツＩＤ、ユーザＩＤ、受信日時データ、及びＣＤデータをコンテンツ情報データ生成部１３２に出力する。
【００５７】
コンテンツ情報データ生成部１３２（以下、「ＣＩ（Ｃｏｎｔｅｎｔ  Ｉｎｆｏ）データ生成部１３２」とも称する）は、図６に示すように、コンテンツＩＤ、ユーザＩＤ、受信日時データ、及びＣＤデータを連結することで、コンテンツ情報データ（ＣＩデータ）を生成する。ＣＩ生成部１３２は、ＣＩデータをコンテンツ情報要約データ生成部１３３に出力する。
【００５８】
コンテンツ情報要約データ生成部１３３（以下、「ＣＩＤ（Ｃｏｎｔｅｎｔ  Ｉｎｆｏ  Ｄｉｇｅｓｔ）データ生成部１３３」とも称する）は、ＣＩデータをハッシュ関数に入力することで、コンテンツ情報要約データ（ＣＩＤデータ）を生成する。ＣＩＤデータ生成部１３３は、ＣＩＤデータ及び当該ＣＩＤデータに対応するコンテンツＩＤ（ＣＩデータ内のコンテンツＩＤ）を集約化コンテンツ情報要約データ生成部１３４（以下、「ＡＣＩＤデータ生成部１３４」とも称する）に出力する。
【００５９】
ＡＣＩＤデータ生成部１３４は、所定時間（例えば１分）内に送受信部１１が受信したコンテンツデータの全てについてＣＩＤデータが与えられるまで待機する。ＡＣＩＤデータ生成部１３４は、待機中に与えられたＣＩＤデータを連結することで、ＡＣＩＤデータを生成する。ＡＣＩＤ生成部１３４は、待機中に与えられたＣＩＤデータに含まれるコンテンツＩＤに基づいて、ＡＣＩＤデータを格納する行である格納対象行を決定する。具体的には、ＡＣＩＤデータ生成部１３４は、当該コンテンツＩＤが示す行を格納対象行として決定する。さらに、ＡＣＩＤデータ生成部１３４は、格納対象行毎にＡＣＩＤポインタを生成する。ＡＣＩＤポインタは、格納対象行内のＣＤデータから得られるＣＩＤデータがＡＣＩＤデータ内のどの位置に存在するのかを示すポインタである。ＡＣＩＤデータ生成部１３４は、生成したＡＣＩＤデータとＡＣＩＤポインタとを格納対象行に格納する。
【００６０】
例えば、送受信部１１が所定時間内にユーザ４１ａからコンテンツｉ、ｊ、ユーザ４１ｂからコンテンツデータｋを受信し、ＣＩＤデータ生成部１３３がＣＩＤデータｉ’、ｊ’、ｋ’を生成した場合、ＡＣＩＤデータ生成部１３４は、ＣＩＤデータｉ’、ｊ’、ｋ’を連結することで、ＡＣＩＤデータを生成する。そして、ＡＣＩＤデータ生成部１３４は、生成されたＡＣＩＤデータと、ＡＣＩＤデータ内でのＣＩＤデータｉ’の位置を示すＡＣＩＤポインタとを、コンテンツｉが格納された行に格納する。コンテンツｊ、ｋについても、同様の処理が行われる。
【００６１】
次いで、ＡＣＩＤデータ生成部１３４は、ＡＣＩＤデータを要求データ生成部１３５に出力する。
【００６２】
要求データ生成部１３５は、ＡＣＩＤデータ生成部１３４から与えられたＡＣＩＤデータをハッシュ関数に入力することで、要約されたＡＣＩＤデータであるＤＡＣＩＤデータ（Ｄｉｇｅｓｔ  ＡＣＩＤデータ）を生成する。ここで、ハッシュ関数は、入力されたデータの大きさによらず、当該データを２５６ビットのデータに変換するので、要求データ生成部１３５は、ＡＣＩＤデータの大きさによらず、ＤＡＣＩＤデータを一定の大きさとすることができる。したがって、ＤＡＣＩＤデータの管理等に掛かる負荷が低減される。
【００６３】
要求データ生成部１３５は、タイムスタンプを要求するタイムスタンプ要求データとＤＡＣＩＤデータとを送受信部１１に出力し、ＡＣＩＤデータが格納された行のタイムスタンプステータスデータを、「タイムスタンプ要求中」を示すデータに変更する。送受信部１１は、タイムスタンプ要求データとＤＡＣＩＤデータとをタイムスタンプ付与サーバ２０に出力する。これにより、データ管理部１３は、所定時間内にユーザ端末４０から出力された一または複数のコンテンツデータを集約し、集約したデータに対するタイムスタンプをタイムスタンプ付与サーバ２０に要求する。
【００６４】
タイムスタンプ付与サーバ２０は、与えられたタイムスタンプ要求データに基づいて、ＤＡＣＩＤデータにタイムスタンプを付与する。具体的には、タイムスタンプ付与サーバ２０は、図７に示すタイムスタンプタグデータを生成し、コンテンツシェアリングサーバ１０に出力する。ここで、タイムスタンプタグデータは、タイムスタンプオーソリティ３０を情報処理システム１００上で一意に特定するタイムスタンプオーソリティＩＤと、タイムスタンプが付与された日時（タイムスタンプタグデータが生成された日時）を示すタイムスタンプ日時データと、ＤＡＣＩＤデータと、タイムスタンプオーソリティ３０による署名データとで構成される。これにより、タイムスタンプ付与サーバ２０は、一または複数のコンテンツデータに一括してタイムスタンプを付与する。送受信部１１は、受信したタイムスタンプタグデータを要求データ生成部１３５に出力する。
【００６５】
要求データ生成部１３５は、タイムスタンプタグデータを、ＡＣＩＤデータが格納された行に格納する。さらに、要求データ生成部１３５は、タイムスタンプタグデータが格納された行のタイムスタンプステータスデータを、「タイムスタンプ取得済み」を示すデータに変更する。
【００６６】
コンテンツパッケージデータ生成部１３６（以下、「ＣＰ（Ｃｏｎｔｅｎｔ  Ｐａｃｋａｇｅ）データ生成部１３６」とも称する）は、コンテンツデータの閲覧要求があった場合に、閲覧要求を行ったユーザ４１である要求者と、そのコンテンツデータを生成したユーザ４１である生成者とが同一であるかを判定する。この結果、ＣＰデータ生成部１３６は、要求者と生成者とが同一であると判定した場合には、閲覧要求されたコンテンツデータを、タイムスタンプの有無にかかわらず、ユーザ４１に出力する。すなわち、ＣＰデータ生成部１３６は、閲覧要求されたすべてのコンテンツデータをコンテンツデータ管理テーブルから検索し、送受信部１１に出力する。送受信部１１は、コンテンツデータを要求者のユーザ端末４０に出力する。
【００６７】
一方、ＣＰデータ生成部１３６は、要求者と生成者とが異なると判定した場合には、閲覧要求されたコンテンツデータのうち、タイムスタンプが付与されたコンテンツデータのみ、要求者に出力する。なお、ＣＰデータ生成部１３６がこのように判定する場合としては、ユーザ４１が他のユーザ４１のコンテンツデータの閲覧を要求した場合の他、ユーザ４１がログインせずに閲覧要求をしている場合等も考えられる。
【００６８】
具体的には、ＣＰデータ生成部１３６は、閲覧要求がなされたコンテンツデータのうち、タイムスタンプステータスデータが「タイムスタンプ取得済み」を示すデータとなっているものを、コンテンツデータ管理テーブルから検索する。そして、ＣＰデータ生成部１３６は、検索したコンテンツデータと、このコンテンツデータと同じ行に格納されているコンテンツＩＤ、ユーザＩＤ、受信日時データ、ＣＤデータ、ＡＣＩＤポインタ、ＡＣＩＤデータ、及びタイムスタンプタグデータとを連結することで、ＣＰデータを生成する。ＣＰデータのデータ構造は図８に示される。そして、ＣＰデータ生成部１３６は、ＣＰデータを送受信部１１に出力し、送受信部１１は、ＣＰデータを要求者のユーザ端末４０に出力する。なお、ＣＰデータを構成するＡＣＩＤデータは、要求者が閲覧を要求していないコンテンツデータから生成されたＣＩＤデータを含む可能性がある。しかし、ＣＩＤデータは、コンテンツデータをハッシュすることで生成されるものであるので、閲覧者は、このようなＣＩＰデータを受領しても、元のコンテンツデータを閲覧することができない。言い換えれば、コンテンツシェアリングサーバ１０は、要求者が閲覧を要求したコンテンツデータ以外のコンテンツデータを、当該要求者に閲覧させないようにすることができる。
【００６９】
図３に示す検証部１４は、タイムスタンプタグデータを検証する。具体的な処理については後述する。
【００７０】
＜１−４．情報処理システムによる処理＞
［全体的な処理］
次に、情報処理システム１００による全体的な処理を、図９に基づいて説明する。なお、この処理に先立って、各ユーザ４１は、コンテンツシェアリングサーバ１０にログインする。具体的には、各ユーザ４１は、自己のユーザ端末４０にアカウント及びパスワードを入力する。各ユーザ端末４０は、入力されたデータをコンテンツシェアリングサーバ１０に出力する。コンテンツシェアリングサーバ１０のＣＤデータ生成部１３１は、各ユーザ端末４０から出力されたデータと、図示しないアカウント管理テーブル（アカウントとパスワードとを対比して記録するテーブル）とを対比することで、当該データの正否を判定する。ＣＤデータ生成部１３１は、ユーザ端末４０から出力されたデータが正しい場合には、ログインを許可する旨のデータをユーザ端末４０に送信する。これにより、ログインが行われる。一方、ＣＤデータ生成部１３１は、ユーザ端末４０から出力されたデータが誤っている場合には、アカウント及びパスワードの再入力を促す旨の要求データをユーザ端末４０に出力する。
【００７１】
ステップＳ１０において、ユーザ端末４０は、ユーザ４１が自ら生成したコンテンツデータをコンテンツシェアリングサーバ１０に出力する。ここで、コンテンツデータには、当該コンテンツデータを生成したユーザ４１を情報処理システム１００上で一意に特定する識別データ、例えばユーザ４１のアカウントが付加されている。
【００７２】
ステップＳ２０において、送受信部１１は、コンテンツデータを受信し、ＣＤデータ生成部１３１に出力する。
【００７３】
ステップＳ３０において、ＣＤ生成部１３１は、図５に示すコンテンツデータ管理テーブルにそのコンテンツデータ用の行を生成し、その行にコンテンツデータを格納する。さらに、ＣＤ生成部１３１は、コンテンツＩＤ及び受信日時データを生成し、ユーザＩＤとともに当該コンテンツデータ用の行に格納する。
【００７４】
さらに、ＣＤ生成部１３１は、コンテンツデータをハッシュ関数に入力することでＣＤデータを生成し、当該コンテンツデータ用の行に格納する。
【００７５】
さらに、ＣＤ生成部１３１は、コンテンツデータ用の行を構成する各領域のうち、ＡＣＩＤポインタ用の領域、ＡＣＩＤデータ用の領域、タイムスタンプタグデータ用の領域には、データが未決定である旨の初期値を格納する。また、ＣＤ生成部１３１は、タイムスタンプステータスデータ用の領域には、「タイムスタンプ未取得」を示す初期値を格納する。
【００７６】
ＣＤ生成部１３１は、コンテンツＩＤ、ユーザＩＤ、受信日時データ、及びＣＤデータをＣＩデータ生成部１３２に出力する。
【００７７】
ステップＳ４０において、ＣＩデータ生成部１３２は、コンテンツＩＤ、ユーザＩＤ、受信日時データ、及びＣＤデータを連結することで、図６に示すＣＩデータを生成する。ＣＩ生成部１３２は、ＣＩデータをＣＩＤデータ生成部１３３に出力する。
【００７８】
ステップＳ５０において、ＣＩＤデータ生成部１３３は、ＣＩデータをハッシュ関数に入力することで、ＣＩＤデータを生成する。ＣＩＤデータ生成部１３３は、ＣＩＤデータ及び当該ＣＩＤデータに対応するコンテンツＩＤをＡＣＩＤデータ生成部１３４に出力する。
【００７９】
ステップＳ６０において、ＡＣＩＤデータ生成部１３４は、所定時間（例えば１分）内に送受信部１１が受信したコンテンツデータの全てについてＣＩＤデータが与えられるまで待機する。ＡＣＩＤデータ生成部１３４は、待機中に与えられたＣＩＤデータを連結することで、ＡＣＩＤデータを生成する。ＡＣＩＤ生成部１３４は、待機中に与えられたＣＩＤデータに含まれるコンテンツＩＤに基づいて、ＡＣＩＤデータを格納する行である格納対象行を決定する。具体的には、ＡＣＩＤデータ生成部１３４は、当該コンテンツＩＤが示す行を格納対象行として決定する。さらに、ＡＣＩＤデータ生成部１３４は、格納対象行毎にＡＣＩＤポインタを生成する。ＡＣＩＤポインタは、格納対象行内のＣＤデータから得られるＣＩＤデータがＡＣＩＤデータ内のどの位置に存在するのかを示すポインタである。ＡＣＩＤデータ生成部１３４は、生成したＡＣＩＤデータとＡＣＩＤポインタとを格納対象行に格納する。次いで、ＡＣＩＤデータ生成部１３４は、ＡＣＩＤデータを要求データ生成部１３５に出力する。
【００８０】
ステップＳ７０において、要求データ生成部１３５は、ＡＣＩＤデータ生成部１３４から与えられたＡＣＩＤデータをハッシュ関数に入力することで、ＤＡＣＩＤデータを生成する。さらに、要求データ生成部１３５は、タイムスタンプを要求するタイムスタンプ要求データとＤＡＣＩＤデータとを送受信部１１に出力し、ＡＣＩＤデータが格納された行のタイムスタンプステータスデータを、「タイムスタンプ要求中」を示すデータに変更する。
【００８１】
ステップＳ８０において、送受信部１１は、タイムスタンプ要求データとＤＡＣＩＤデータとをタイムスタンプ付与サーバ２０に出力する。
【００８２】
ステップＳ９０において、タイムスタンプ付与サーバ２０は、タイムスタンプ要求データ及びＤＡＣＩＤデータを受信する。
【００８３】
ステップＳ１００において、タイムスタンプ付与サーバ２０は、タイムスタンプ要求データに基づいて、ＤＡＣＩＤデータにタイムスタンプを付与する。具体的には、タイムスタンプ付与サーバ２０は、図７に示すタイムスタンプタグデータを生成する。
【００８４】
ステップＳ１１０において、タイムスタンプ付与サーバ２０は、生成されたタイムスタンプタグデータをコンテンツシェアリングサーバ１０に出力する。
【００８５】
ステップＳ１２０において、送受信部１１は、タイムスタンプ付与サーバ２０から出力されたタイムスタンプタグデータを受信し、要求データ生成部１３５に出力する。
【００８６】
要求データ生成部１３５は、タイムスタンプタグデータを、ＡＣＩＤデータが格納された行に格納する。さらに、要求データ生成部１３５は、タイムスタンプタグデータが格納された行のタイムスタンプステータスデータを、「タイムスタンプ取得済み」を示すデータに変更する。さらに、要求データ生成部１３５は、後述する検証部１４に対し、新規にタイムスタンプタグデータが格納された行を出力し、検証処理を要求する。
【００８７】
ステップＳ１３０において、ユーザ４１（要求者）は、コンテンツシェアリングサーバ１０に対してコンテンツデータの閲覧要求を行う。具体的には、ユーザ４１は、自身のアカウントとパスワードをシステムに提示してログイン処理を行った後に、閲覧を希望するコンテンツデータの生成者を特定するデータ、例えば生成者のユーザ名をユーザ端末４０に入力する。これに応じて、ユーザ端末４０は、入力されたデータを閲覧要求データとしてコンテンツシェアリングサーバ１０に出力する。ここで、閲覧要求データには、要求者および生成者を情報処理システム１００上でそれぞれ一意に特定する識別データが含まれる。
【００８８】
ステップＳ１４０において、送受信部１１は、閲覧要求データを受信し、ＣＰデータ生成部１３６に出力する。
【００８９】
ステップＳ１５０において、ＣＰデータ生成部１３６は、閲覧要求データに基づいて、所定のコンテンツデータをコンテンツデータ管理テーブルから検索し、送受信部１１に出力する。送受信部１１は、コンテンツデータを要求者のユーザ端末４０に出力する。
【００９０】
ステップＳ１６０において、要求者のユーザ端末４０は、コンテンツデータを受信し、ディスプレイ４０１に表示する。ステップＳ１４０〜ステップＳ１６０の処理の詳細については後述する。
【００９１】
［ステップＳ１４０〜ステップＳ１６０の処理］
次に、図１０に基づいて、ステップＳ１４０〜ステップＳ１６０の処理を詳細に説明する。
【００９２】
ステップＳ２００において、送受信部１１は、閲覧要求データを受信し、ＣＰデータ生成部１３６に出力する。
【００９３】
ステップＳ２１０において、ＣＰデータ生成部１３６は、閲覧要求データに基づいて、要求者と閲覧要求がなされたコンテンツデータの生成者とが同一であるかを判定する。ＣＰデータ生成部１３６は、これらが同一であると判定した場合には、ステップＳ２２０に進み、これらが異なると判定した場合には、ステップＳ２３０に進む。
【００９４】
ステップＳ２２０において、ＣＰデータ生成部１３６は、閲覧要求データがなされたコンテンツデータを、タイムスタンプの有無にかかわらず、要求者のユーザ端末４０に出力する。すなわち、ＣＰデータ生成部１３６は、閲覧要求がなされたすべてのコンテンツデータ（即ち、生成者がアップロードしたすべてのコンテンツデータ）をコンテンツデータ管理テーブルから検索し、送受信部１１に出力する。送受信部１１は、コンテンツデータを要求者のユーザ端末４０に出力し、要求者のユーザ端末４０は、受信したコンテンツデータをディスプレイ４０１に表示する。
【００９５】
ステップＳ２３０において、ＣＰデータ生成部１３６は、閲覧要求がなされたコンテンツデータのうち、タイムスタンプが付与されたコンテンツデータのみ、要求者のユーザ端末４０に出力する。
【００９６】
具体的には、ＣＰデータ生成部１３６は、閲覧要求がなされたコンテンツデータのうち、タイムスタンプステータスデータが「タイムスタンプ取得済み」を示すデータとなっているものを、コンテンツデータ管理テーブルから検索する。そして、ＣＰデータ生成部１３６は、検索したコンテンツデータと、このコンテンツデータと同じ行に格納されているコンテンツＩＤ、ユーザＩＤ、受信日時データ、ＣＤデータ、ＡＣＩＤポインタ、ＡＣＩＤデータ、及びタイムスタンプタグデータとを連結することで、ＣＰデータを生成する。次いで、ＣＰデータ生成部１３６は、ＣＰデータを送受信部１１に出力し、送受信部１１は、ＣＰデータを要求者のユーザ端末４０に出力する。ユーザ端末４０は、ＣＰデータに基づいて、コンテンツデータ等をディスプレイ４０１に表示する。このときの表示例を図１１に示す。ディスプレイ４０１には、コンテンツデータ表示領域４０２ａと、コンテンツＩＤ表示領域４０２ｂと、タイムスタンプ表示ボタン４０２ｃと、ダウンロードボタン４０２ｄからなるコンテンツ情報画像４０２が一または複数表示される。各コンテンツ情報画像４０２は、それぞれ異なるコンテンツデータに対応する。
【００９７】
コンテンツ情報画像４０２のコンテンツデータ表示領域４０２ａには、そのコンテンツ情報画像４０２に対応するコンテンツデータのサムネイルが表示される。マウスポインタ４０３がコンテンツ情報画像４０２のコンテンツデータ表示領域４０２ａに重ねられた状態でマウスがクリックされると、ユーザ端末４０は、そのコンテンツ情報画像４０２に対応するコンテンツデータをディスプレイ４０２に表示する。なお、コンテンツデータ表示領域４０２ａには、コンテンツデータそのものを表示してもよい。
【００９８】
コンテンツ情報画像４０２のコンテンツＩＤ表示領域４０２ｂには、そのコンテンツ情報画像４０２に対応するコンテンツデータのコンテンツＩＤが表示されている。
【００９９】
マウスポインタ４０３がコンテンツ情報画像４０２のタイムスタンプ表示ボタン４０２ｃに重ねられた状態でマウスがクリックされると、ユーザ端末４０は、そのコンテンツ情報画像４０２に対応するタイムスタンプ（例えば、タイムスタンプ日時データ及び署名データ、そのコンテンツを生成したユーザのユーザＩＤ）をディスプレイ４０２に表示する。
マウスポインタ４０３がコンテンツ情報画像４０２のダウンロードボタン４０２ｄに重ねられた状態でマウスがクリックされると、ユーザ端末４０は、そのコンテンツとタイムスタンプを含むＣＰデータを、ユーザ端末４０に搭載または接続された記憶装置に記録する。
［検証処理］
【０１００】
次に、検証部１４が行う検証処理について、図１２に基づいて説明する。この検証処理は、コンテンツデータ管理テーブルに記録されたデータが正しいか否かを判定する処理である。検証処理は、要求データ生成部１３５がタイムスタンプ付与サーバ２０からタイムスタンプタグデータを受信した際に、検証部１４に検証処理の要求を送信することによって開始される。また、後述のように、ユーザからの要求によっても検証処理は行われる。この場合は、コンテンツデータ管理テーブルに記録されたデータではなく、ユーザが提示したデータが正しいか否かを判定する。
【０１０１】
ステップＳ３００において、検証部１４は、要求データ生成部１３５から検証処理の要求とともに提示された、コンテンツデータ管理テーブルのうち新規にタイムスタンプタグデータを取得したコンテンツに対応する行を検証対象行として決定する。検証部１４は、検索対象行内のコンテンツデータをハッシュ関数に入力することで、ＣＤデータを生成する。
【０１０２】
ステップＳ３１０において、検証部１４は、生成されたＣＤデータが検索対象行内のＣＤデータに一致するかを判定し、これらのデータが一致すると判定した場合には、ステップＳ３２０に進み、これらのデータが一致しないと判定した場合には、ステップＳ３８０に進む。
【０１０３】
ステップＳ３２０において、検証部１４は、生成されたＣＤデータに、検索対象行のユーザＩＤ、コンテンツＩＤ、及び受信日時データを連結することで、ＣＩデータを生成する。さらに、検証部１４は、生成されたＣＩデータをハッシュ関数に入力することで、ＣＩＤデータを生成する。
【０１０４】
ステップＳ３３０において、検証部１４は、生成されたＣＩＤデータが検索対象行内のＡＣＩＤポインタが示すＣＩＤデータに一致するかを判定し、これらのデータが一致すると判定した場合には、ステップＳ３４０に進み、これらのデータが一致しないと判定した場合には、ステップＳ３８０に進む。
【０１０５】
ステップＳ３４０において、検証部１４は、検索対象行内のＡＣＩＤデータをハッシュ関数に入力することで、ＤＡＣＩＤデータを生成する。
【０１０６】
ステップＳ３５０において、検証部１４は、ＤＡＣＩＤデータが検索対象行内のＤＡＣＩＤデータ（即ち、タイムスタンプタグデータ内のＤＡＣＩＤデータ）に一致するかを判定し、これらのデータが一致すると判定した場合には、ステップＳ３６０に進み、これらのデータが一致しないと判定した場合には、ステップＳ３８０に進む。
【０１０７】
ステップＳ３６０において、検証部１４は、検索対象行内の署名データが、タイムスタンプタグ内の他の要素、すなわちタイムスタンプオーソリティＩＤ、タイムスタンプ日時データ、及びＤＡＣＩＤに対する正しい署名データになっているかを、検証関数に基づいて判定する。ここで、検証関数としては公知のものが任意に使用される。検証部１４は、検証対象行内の署名データが正しい署名データであると判定した場合には、ステップＳ３７０に進み、検証対象行内の署名データが誤った署名データであると判定した場合には、ステップＳ３８０に進む。
【０１０８】
ステップＳ３７０において、検証部１４は、検証対象行のデータが正しい（すなわち、検証に成功した）と判定し、その旨の判定データを検証対象行に記録する。
【０１０９】
ステップＳ３８０において、検証部１４は、検証対象行のデータに誤りがある（すなわち、検証に失敗した）と判定し、その旨の判定データを検証対象行に記録する。
【０１１０】
検証処理の結果である判定データの利用方法としては、様々なものが考えられる。例えば、ＣＰデータ生成部１３６は、上述したステップＳ２３０において、コンテンツパッケージデータのうち、検証処理が成功したデータのみをユーザ端末４０に出力するようにしてもよい。また、検証処理が失敗したコンテンツについては、図９のステップＳ３０のＣＤデータ作成の処理からやり直してもよい。
【０１１１】
以上により、第１の実施形態によれば、コンテンツシェアリングサーバ１０は、コンテンツデータにタイムスタンプが付与された場合に、コンテンツデータを、複数のユーザ端末４０のうち、コンテンツデータを出力したユーザ端末４０以外の他のユーザ端末４０に出力する。
【０１１２】
これにより、他のユーザ端末４０のユーザ４１がコンテンツデータを不正使用したとしても、その日時はタイムスタンプが示す日時以降であるので、コンテンツデータの生成者は、タイムスタンプを根拠に、自分が当該コンテンツデータの生成者であることを主張することができる。
【０１１３】
したがって、コンテンツシェアリングサーバ１０は、コンテンツデータの生成者以外の第三者に公開されるコンテンツデータを保護することができる。
【０１１４】
さらに、コンテンツシェアリングサーバ１０は、コンテンツデータにタイムスタンプが付与されていない場合であっても、コンテンツデータを、コンテンツデータを出力したユーザ端末４０に出力する。これにより、コンテンツデータの生成者は、コンテンツデータにタイムスタンプが付与されていない場合であっても、コンテンツデータの内容を確認することができる。
【０１１５】
さらに、コンテンツシェアリングサーバ１０は、所定時間内にユーザ端末４０から与えられたコンテンツデータに一括してタイムスタンプを付与することを、タイムスタンプ付与サーバ２０に要求する。したがって、コンテンツシェアリングサーバ１０は、ユーザ端末４０からコンテンツデータを受領する毎にタイムスタンプを要求する場合よりも、タイムスタンプを要求する回数を低減することができるので、コンテンツシェアリングサーバ１０の処理負担を低減することができる。
【０１１６】
さらに、コンテンツシェアリングサーバ１０は、コンテンツデータの他、そのコンテンツデータに付与されたタイムスタンプタグデータも要求者のユーザ端末４０に出力するので、要求者は、そのタイムスタンプタグデータの内容を確認する事ができる。
【０１１７】
＜１−５．各種変形例＞
次に、各種変形例を説明する。
［第１の変形例］
第１の変形例では、要求データ生成部１３５は、タイムスタンプ要求データをタイムスタンプ付与サーバ２０に出力した後、タイムスタンプ付与サーバ２０からタイムスタンプタグデータが与えられるまで、次のタイムスタンプ要求データを出力しない。
【０１１８】
ＡＣＩＤデータ生成部１３４は、要求データ生成部１３５がタイムスタンプ要求データをタイムスタンプ付与サーバ２０に出力してから、要求データ生成部１３５がタイムスタンプタグデータを受領するまでの間にＣＩＤデータ生成部１３３から与えられたＣＩＤデータを連結することで、ＡＣＩＤデータを生成する。
【０１１９】
要求データ生成部１３５は、タイムスタンプタグデータが与えられたら、このＡＣＩＤデータをハッシュ関数に入力することでＤＡＣＩＤデータを生成し、このＤＡＣＩＤデータと次のタイムスタンプ要求データとをタイムスタンプ付与サーバ２０に出力する。
【０１２０】
第１の変形例によれば、要求中のタイムスタンプは常にひとつとなるので、ステートの管理（例えば、タイムスタンプステータスデータの管理等）が容易となる。
【０１２１】
［第２の変形例］
第２の変形例では、ＣＩＤデータ生成部１３３は、ＣＩＤデータを要求データ生成部１３５に直接出力し、要求データ生成部１３５は、各ＣＩＤデータに対するタイムスタンプタグデータをタイムスタンプ付与サーバに要求する。すなわち、コンテンツシェアリングサーバ１０は、ユーザ端末４０からコンテンツデータが与えられる毎に、タイムスタンプをタイムスタンプ付与サーバ２０に要求する。
【０１２２】
第２の変形例によれば、コンテンツシェアリングサーバ１０は、コンテンツデータを受け付けた時刻とタイムスタンプの発行時刻との差を小さくすることができ、かつ、コンテンツデータをアップロードしてから第三者に公開されるまでの待ち時間を低減することができる。
【０１２３】
［第３の変形例］
第３の変形例では、要求者は、コンテンツデータの閲覧を要求する際に、タイムスタンプタグデータの要否もユーザ端末４０に入力する。ユーザ端末４０は、上述した閲覧要求データに、タイムスタンプタグデータの要否を示すデータを含めて、コンテンツシェアリングサーバ１０に出力する。ＣＰデータ生成部１３６は、閲覧要求データにタイムスタンプタグデータが必要である旨のデータが含まれる場合に、タイムスタンプタグデータとコンテンツデータとを含むＣＰデータを生成し、要求者のユーザ端末４０に出力する。
【０１２４】
第３の変形例によれば、コンテンツシェアリングサーバ１０は、タイムスタンプタグデータが必要な要求者に対してタイムスタンプタグデータを出力することができる。これにより、コンテンツシェアリングサーバ１０は、コンテンツ保存、共有サービスと、コンテンツ保証サービス（タイムスタンプによる保証サービス）とを切り分け、別契約のサービスとすることができる。
【０１２５】
［第４の変形例］
第４の変形例は、コンテンツデータの生成者に対し、タイムスタンプの要否を任意に選択させるものである。
【０１２６】
すなわち、コンテンツシェアリングサーバ１０は、デフォルトでタイムスタンプを取得するタイプ１の契約と、デフォルトでタイムスタンプを取得しないタイプ２の契約とを用意し、ユーザ４１との契約時にいずれかのタイプを選択させる。この選択の結果は、例えば、上述したアカウント管理テーブルに記録される。
【０１２７】
そして、タイプ１の契約者は、コンテンツデータをアップロードする際に、そのコンテンツデータにタイムスタンプが不要であれば、その旨のタイムスタンプ不要データ（フラグ）をユーザ端末４０に入力する。例えば、ユーザ端末４０は、「タイムスタンプ不要」のチェックボックスをディスプレイ４０１に表示し、タイプ１の契約者は、タイムスタンプが不要であれば、そのチェックボックスにチェックを入れる。ユーザ端末４０は、タイムスタンプ不要データが入力された場合には、タイムスタンプ不要データをコンテンツデータとともにコンテンツシェアリングサーバ１０に出力する。コンテンツシェアリングサーバ１０は、コンテンツデータにタイムスタンプ不要データが含まれていれば、タイムスタンプをタイムスタンプ付与サーバ２０に要求せず、コンテンツデータにタイムスタンプ不要データが含まれていなければ、デフォルト通りに、タイムスタンプをタイムスタンプ付与サーバ２０に要求する。具体的には、要求データ生成部１３５は、コンテンツデータにタイムスタンプ不要データが含まれていれば、そのコンテンツデータから得られるＣＩＤデータをＤＡＣＩＤに含めず、コンテンツデータにタイムスタンプ不要データが含まれていなければ、そのコンテンツデータから得られるＣＩＤデータをＤＡＣＩＤに含める。
【０１２８】
一方、タイプ２の契約者は、コンテンツデータをアップロードする際に、そのコンテンツデータにタイムスタンプが必要であれば、その旨のタイムスタンプ必要データ（フラグ）をユーザ端末４０に入力する。例えば、ユーザ端末４０は、「タイムスタンプ必要」のチェックボックスをディスプレイ４０１に表示し、タイプ２の契約者は、タイムスタンプが必要であれば、そのチェックボックスにチェックを入れる。ユーザ端末４０は、タイムスタンプ必要データが入力された場合には、タイムスタンプ必要データをコンテンツデータとともにコンテンツシェアリングサーバ１０に出力する。要求データ生成部１３５は、コンテンツデータにタイムスタンプ必要データが含まれていれば、タイムスタンプをタイムスタンプ付与サーバ２０に要求し、コンテンツデータにタイムスタンプ必要データが含まれていなければ、デフォルト通りに、タイムスタンプをタイムスタンプ付与サーバ２０に要求しない。具体的には、要求データ生成部１３５は、コンテンツデータにタイムスタンプ必要データが含まれていれば、そのコンテンツデータから得られるＣＩＤデータをＤＡＣＩＤに含め、コンテンツデータにタイムスタンプ必要データが含まれていなければ、そのコンテンツデータから得られるＣＩＤデータをＤＡＣＩＤに含めない。
【０１２９】
契約のタイプと、フラグの種類と、タイムスタンプ付与サーバ２０へのタイムスタンプ要求の有無との相関関係を図１３に示す。
【０１３０】
第４の変形例によれば、コンテンツシェアリングサーバ１０は、コンテンツデータを出力したユーザ端末４０からタイムスタンプの取得を要求された場合に、タイムスタンプ付与サーバ２０にタイムスタンプを要求することができるので、ユーザ４１の意図を反映したタイムスタンプの取得が可能となる。また、コンテンツシェアリングサーバ１０は、デフォルトでタイムスタンプの要否を設定するので、ユーザ４１は、デフォルトと異なる要求をする場合に、その旨のデータをユーザ端末４０に入力すれば足りる。これにより、コンテンツシェアリングサーバ１０は、タイムスタンプの要否に関する簡便な指定方法をユーザ４１に提供することができる。タイムスタンプを生成させるためには、コンテンツのハッシュ値を計算するなどのコストがかかるため、タイムスタンプが不要のコンテンツについては、このコストを削減することが可能となる。
【０１３１】
＜２．第２の実施形態＞
＜２−１．情報処理システムの概略構成＞
次に、本開示の第２の実施形態について説明する。まず、図１４に基づいて、第２の実施形態に係る情報処理システム２００の概略構成について説明する。情報処理システム２００は、コンテンツシェアリングシステム８０と、タイムスタンプ付与サーバ（タイムスタンプ付与部）２０と、複数のユーザ端末（ユーザ装置）６０と、複数のコンテンツ生成装置７０と、これらを接続するネットワーク５０とを備える。
【０１３２】
コンテンツシェアリングシステム８０は、コンテンツデータの管理、公開等を実施する管理者が保有し、コンテンツデータの管理、タイムスタンプの要求、タイムスタンプが付与されたコンテンツデータの公開等を行う。即ち、コンテンツシェアリングシステム８０は、第１の実施形態に係るコンテンツシェアリングサーバ１０の機能を複数のサーバに分担させたものである。
【０１３３】
ユーザ端末６０は、例えばパーソナルコンピュータであり、それぞれ異なるユーザによって操作が可能となっている。ユーザ端末６０は、コンテンツ生成装置７０と接続ケーブル等を介して着脱可能となっており、コンテンツ生成装置７０が接続された際に、コンテンツ生成装置７０からコンテンツデータデータを取得し、コンテンツシェアリングシステム８０に送信することができる。なお、ユーザ端末６０は、コンテンツ生成装置７０と無線通信を行ってもよい。
【０１３４】
また、ユーザは、ユーザ端末６０を用いて、コンテンツデータの閲覧をコンテンツシェアリングシステム８０に要求することができる。コンテンツシェアリングシステム８０は、閲覧要求を受けたコンテンツデータをユーザ端末６０に出力する。ユーザ端末６０は、コンテンツシェアリングシステム８０から与えられたコンテンツデータを表示部６５に表示する。ユーザ端末６０は、図１４に示すパーソナルコンピュータに限られない。例えば、ユーザ端末６０は、テレビジョン受信機、カーナビ、携帯電話機、ゲーム機、音楽プレーヤ、スマートフォン、スマートタブレット等であってもよい。
【０１３５】
コンテンツ生成装置７０は、例えばビデオカメラであり、ユーザの操作によりコンテンツデータ、例えば画像データを生成することができる。また、コンテンツ生成装置７０は、コンテンツデータ及びＣＤデータをコンテンツシェアリングシステム８０に送信することができる。また、コンテンツ生成装置７０は、接続ケーブル等を介してユーザ端末６０に着脱可能となっている。コンテンツ生成装置７０は、ユーザ端末６０に接続された際に、コンテンツデータをユーザ端末６０に送信することができる。なお、コンテンツ生成装置７０は、コンテンツデータの生成、コンテンツシェアリングシステム８０との通信、及びユーザ端末６０への着脱が可能であれば、どのようなものであってもよい。例えば、コンテンツ生成装置７０は、携帯電話機、スマートフォン、スマートタブレット等であってもよい。
【０１３６】
＜２−２．情報処理システムの詳細な構成＞
［ユーザ端末の構成］
次に、情報処理システムの詳細な構成について説明する。まず、図１５に基づいて、ユーザ端末（情報処理装置）６０の構成について説明する。ユーザ端末６０は、記憶部６１、通信部６２、接続検知部６３、入力操作部６４、表示部６５、及び制御部６６を備える。なお、ユーザ端末６０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置、キーボード、マウス、図に示さないコネクタ、ディスプレイ等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。即ち、ＲＯＭには、ユーザ端末６０に、記憶部６１、通信部６２、接続検知部６３、入力操作部６４、表示部６５、及び制御部６６を実現させるためのプログラムが記憶されている。コネクタは、接続ケーブルが接続される部分である。
【０１３７】
記憶部６１は、ユーザ端末６０が各種の処理を行うために必要なデータ、例えばプログラム、画像データ、音声データ、各種公開鍵、及び各種公開関数（例えば、上述したハッシュ関数）等を記憶する。また、記憶部６１は、ユーザ端末６０のユーザを識別するための識別データ、例えばユーザＩＤを記憶する。通信部６２は、コンテンツシェアリングシステム８０とネットワーク５０を介して通信を行う。また、通信部６２は、コンテンツ生成装置７０が接続された際に、コンテンツ生成装置７０との間で通信を行う。
【０１３８】
接続検知部６３は、コンテンツ生成装置７０が接続されたことを検知し、その旨を示す接続検知データを制御部６６に出力する。入力操作部６４は、例えばキーボード及びマウスであり、ユーザによる入力操作に応じた入力操作データを制御部６６に出力する。表示部６５はいわゆるディスプレイであり、各種の画像データ、音声データを提示（出力）する。
【０１３９】
制御部６６は、ユーザ端末６０の各構成要素を制御する他、コンテンツ取得部６６１、コンテンツ要約データ生成部（ＣＤデータ生成部）６６２、通信対象データ決定部６６３、及び検証部６６４としても機能する。コンテンツ取得部６６１は、通信部６２を介してコンテンツ生成装置７０からコンテンツデータを取得する。コンテンツ要約データ生成部６６２は、コンテンツデータをハッシュ関数に入力することで、コンテンツデータのハッシュ値、即ちＣＤデータを生成する。通信対象データ決定部６６３は、コンテンツデータ及びＣＤデータのうち、コンテンツシェアリングシステム８０との通信の対象となる通信対象データを決定する。通信対象データには、通信対象データの内容、即ち現在の通信状態に関する状態データが付与される。検証部６６４は、コンテンツシェアリングサーバ８０から提供されたコンテンツパッケージデータ（ＣＰデータ）が適正か否かを検証する。
【０１４０】
［コンテンツ生成装置の構成］
次に、図１６に基づいて、コンテンツ生成装置（情報処理装置）７０の構成について説明する。コンテンツ生成装置７０は、記憶部７１、通信部７２、撮像部７３、入力操作部７４、表示部７５、及び制御部７６を備える。なお、コンテンツ生成装置７０は、ＣＰＵ、ＲＯＭ、ＲＡＭ、撮像装置、通信装置、撮像ボタン等の各種ボタン、タッチパネル、図に示さないコネクタ、ディスプレイ等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。即ち、ＲＯＭには、コンテンツ生成装置７０に、記憶部７１、通信部７２、撮像部７３、入力操作部７４、表示部７５、及び制御部７６を実現させるためのプログラムが記憶されている。コネクタは、接続ケーブルが接続される部分である。
【０１４１】
記憶部７１は、コンテンツ生成装置７０が各種の処理を行うために必要なデータ、例えばプログラム、画像データ、音声データ、各種公開鍵、及び各種公開関数（例えば、上述したハッシュ関数）等を記憶する。また、記憶部７１は、コンテンツ生成装置７０を識別するための識別データ、例えばＭＡＣアドレスを記憶する。通信部７２は、コンテンツシェアリングシステム８０とネットワーク５０を介して無線通信を行う。また、通信部７２は、コンテンツシェアリングシステム８０との間の通信帯域の広さを検出し、検出結果に関する通信帯域データを制御部７６に出力する。また、通信部７２は、ユーザ端末６０が接続された際に、ユーザ端末６０との間で通信を行う。
【０１４２】
撮像部７３は、コンテンツ生成装置７０の周辺を撮影することで画像データ、即ちコンテンツデータを生成し、制御部７６に出力する。入力操作部７４は、例えば各種ボタン及びタッチパネルであり、ユーザによる入力操作に応じた入力操作データを制御部７６に出力する。表示部７５はいわゆるディスプレイであり、各種の画像データを提示（出力）する。
【０１４３】
制御部７６は、コンテンツ生成装置７０の各構成要素を制御する他、コンテンツ取得部７６１、コンテンツ要約データ生成部（ＣＤデータ生成部）７６２、及び通信対象データ決定部７６３としても機能する。コンテンツ取得部７６１は、撮像部７３にコンテンツデータを生成させ、撮像部７３からコンテンツデータを取得する。コンテンツ要約データ生成部７６２は、コンテンツデータをハッシュ関数に入力することで、コンテンツデータのハッシュ値、即ちＣＤデータを生成する。通信対象データ決定部７６３は、コンテンツデータ及びＣＤデータのうち、コンテンツシェアリングシステム８０との無線通信の対象となる通信対象データを決定する。通信対象データには、通信対象データの内容、即ち現在の通信状態に関する状態データが付与される。
【０１４４】
［コンテンツシェアリングシステムの構成］
次に、コンテンツシェアリングシステム８０の構成について説明する。コンテンツシェアリングシステム８０は、第１の実施形態に係るコンテンツシェアリングサーバ１０の機能を複数のサーバに分担させたものである。即ち、コンテンツシェアリングシステム８０は、ウェブサーバ８１、ストレージサーバ８２、データベースサーバ８３、及びタイムスタンプ取得エンジン８４を備える。
【０１４５】
［ウェブサーバの構成］
ウェブサーバ（第１の情報処理装置）８１は、図１７に示すように、記憶部８１０、通信部８１１、及び制御部８１２を備える。なお、ウェブサーバ８１は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。即ち、ＲＯＭには、ウェブサーバ８１に、記憶部８１０、通信部８１１、及び制御部８１２を実現させるためのプログラムが記憶されている。
【０１４６】
記憶部８１０には、ウェブサーバ８１が各種の処理を行うのに必要な各種データ、例えばプログラム、画像データ、音声データ、各種公開鍵、及び各種公開関数（例えば、上述したハッシュ関数）等を記憶する。
【０１４７】
記憶部８１０は、ユーザＩＤとＭＡＣアドレスとを関連付けて記録するＭＡＣアドレス関連テーブルを記憶する。また、記憶部８１０は、コンテンツ情報データ（ＣＩデータ）と乱数データとを関連付けて記録するＣＩデータ関連テーブルを記憶する。ＣＩデータは、ＣＤデータにユーザＩＤを組み合わせたものである。即ち、第２の実施形態のＣＩデータは、第１の実施形態のＣＩデータよりも簡素化されている（図６参照）。乱数データは、コンテンツデータとＣＤデータ（具体的には、ＣＩデータ内のＣＤデータ）とを関連付けるための関連付け用データである。
【０１４８】
また、記憶部８１０は、図１８に示す不正処理決定テーブルを記憶する。不正処理決定テーブルは、不正処理の種類と不正処理の内容とを関連付けて記録する。不正処理は、ユーザから送信（投稿）されたコンテンツデータに不正があった場合（即ち、ユーザから投稿されたコンテンツデータと他のユーザが所有するコンテンツデータとが近似する場合）に実行される。ここでは、不正処理は４種類存在する。不正処理は、「適正なコンテンツデータを所有するユーザへの通知」、及び「不正なコンテンツデータの投稿の拒絶」に区分され、不正処理の種類ごとに、これらの区分を実行するか否かが異なる。なお、どの種類の不正処理が実行されるかについては、ウェブサーバ８１が任意に決定してもよいし、適正なコンテンツデータを投稿したユーザが任意に決定してもよい。
【０１４９】
通信部８１１は、ネットワーク５０を介してユーザ端末６０及びコンテンツ生成装置７０と通信を行う他、コンテンツシェアリングシステム８０の他の構成要素との間で通信を行う。制御部８１２は、ウェブサーバ８１の各構成要素を制御する他、ユーザ要求処理部８１３、状態判定部８１４、コンテンツ要約データ生成部８１５、コンテンツ情報データ生成部８１６、及び不正判定部８１７としても機能する。
【０１５０】
ユーザ要求処理部８１３は、ユーザに対する窓口としての機能を果たす部分であり、ユーザからのリクエストに応じた処理を行い、レスポンスを行なう。例えば、ユーザ要求処理部８１３は、ログインの受付、コンテンツデータの投稿の受付、及びコンテンツデータの公開等を行なう。
【０１５１】
状態判定部８１４は、状態データに基づいて、コンテンツシェアリングシステム８０とコンテンツ生成装置７０との間の通信状態を判定する。コンテンツ要約データ生成部（ＣＤデータ生成部）８１５は、コンテンツデータをハッシュ関数に入力することで、ＣＤデータを生成する。コンテンツ情報データ生成部（ＣＩデータ生成部）８１６は、ＣＤデータにユーザＩＤを組み合わせることで、ＣＩデータを生成する。即ち、第２の実施形態のＣＩデータは、第１の実施形態のＣＩデータよりも簡素化されている（図６参照）。不正判定部８１７は、ユーザから投稿されたコンテンツデータが適正か否かを判定する。
【０１５２】
［ストレージサーバの構成］
ストレージサーバ（第３の情報処理装置）８２は、図１９に示すように、記憶部８２０、通信部８２１、及び制御部８２２を備える。なお、ストレージサーバ８２は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。即ち、ＲＯＭには、ストレージサーバ８２に、記憶部８２０、通信部８２１、及び制御部８２２を実現させるためのプログラムが記憶されている。
【０１５３】
記憶部８２０は、ストレージサーバ８２が各種の処理を行うのに必要な各種データ、例えばプログラム等を記憶する。また、記憶部８２０は、コンテンツデータ、タイムスタンプタグデータ、及びＡＣＩＤデータ（リスト）を記憶する。タイムスタンプタグデータ及びＡＣＩＤデータは、第１の実施形態と同様である。即ち、タイムスタンプタグデータは、タイムスタンプオーソリティＩＤ、タイムスタンプ日時データ、ＤＡＣＩＤデータ、及び署名データで構成される。ＤＡＣＩＤデータは、ＡＣＩＤデータのハッシュ値である。ＡＣＩＤデータは、ＣＩＤデータを集約したもの、即ちＣＩＤデータのリストであり、ＣＩＤデータは、ＣＩデータのハッシュ値である。
【０１５４】
通信部８２１は、コンテンツシェアリングシステム８０の他の構成要素との間で通信を行う。制御部８２２は、ストレージサーバ８２の各構成要素を制御する。
【０１５５】
［データベースサーバの構成］
データベースサーバ（第４の情報処理装置）８３は、図２０に示すように、記憶部８３０、通信部８３１、及び制御部８３２を備える。なお、データベースサーバ８３は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。即ち、ＲＯＭには、データベースサーバ８３に、記憶部８３０、通信部８３１、及び制御部８３２を実現させるためのプログラムが記憶されている。
【０１５６】
記憶部８３０には、データベースサーバ８３が各種の処理を行うのに必要な各種データ、例えばプログラム等を記憶する。また、記憶部８３０は、図２１に示すコンテンツ情報管理テーブル及び図２２に示すタイムスタンプ情報管理テーブルを記憶する。
【０１５７】
コンテンツ情報管理テーブルは、コンテンツＩＤ、ユーザＩＤ、コンテンツパスデータ、ＣＤデータ、特徴量データ、受信日時データ、及びタイムスタンプＩＤを関連付けて記録する。コンテンツＩＤは、コンテンツデータを識別するための識別情報であり、ユーザＩＤは、ユーザを識別するための識別情報である。特徴量データは、コンテンツデータの特徴量を示し、例えばＳＩＦＴアルゴリズムにより算出される。具体的には後述する。コンテンツパスデータは、コンテンツデータのストレージサーバ８２内での所在（アドレス）を示す。受信日時データは、ウェブサーバ８１がコンテンツデータを受信した日時を示す。タイムスタンプＩＤは、タイムスタンプタグデータを識別するための識別情報である。
【０１５８】
タイムスタンプ情報管理テーブルは、タイムスタンプＩＤ、タイムスタンプパスデータ、ＡＣＩＤパスデータ、ＤＡＣＩＤデータ、及びタイムスタンプ日時データ（タイムスタンプタイムデータ）を関連付けて記録する。タイムスタンプパスデータは、タイムスタンプタグのストレージサーバ８２内での所在（アドレス）を示す。ＡＣＩＤパスデータは、ＡＣＩＤデータのストレージサーバ８２内での所在（アドレス）を示す。ＤＡＣＩＤデータは、ＡＣＩＤデータのハッシュ値である。タイムスタンプ日時データは、コンテンツデータにタイムスタンプが付与された日時を示す。コンテンツ情報管理テーブルとタイムスタンプ情報管理テーブルとは、タイムスタンプＩＤによって関連付けられる。したがって、データベースサーバ８３は、コンテンツＩＤと、コンテンツパスデータと、タイムスタンプパスデータとを関連付けて記憶する。
【０１５９】
通信部８３１は、コンテンツシェアリングシステム８０の他の構成要素との間で通信を行う。制御部８３２は、データベースサーバ８３の各構成要素を制御する。
【０１６０】
［タイムスタンプ取得エンジンの構成］
タイムスタンプ取得エンジン（第２の情報処理装置）８４は、図２３に示すように、記憶部８４０、通信部８４１、及び制御部８４２を備える。なお、タイムスタンプ取得エンジン８４は、ＣＰＵ、ＲＯＭ、ＲＡＭ、ハードディスク、通信装置等の各種ハードウェア構成を備えており、ＣＰＵがＲＯＭに記憶されたプログラムを読みだして実行することで、各種の処理を行う。即ち、ＲＯＭには、タイムスタンプ取得エンジン８４に、記憶部８４０、通信部８４１、及び制御部８４２を実現させるためのプログラムが記憶されている。
【０１６１】
記憶部８４０には、タイムスタンプ取得エンジン８４が各種の処理を行うのに必要な各種データ、例えばプログラム等を記憶する。また、記憶部８４０は、適正なタイムスタンプタグデータが取得されたか否かを示すタイムスタンプフラグを記憶する。
【０１６２】
通信部８４１は、コンテンツシェアリングシステム８０の他の構成要素との間で通信を行う。制御部８４２は、タイムスタンプ取得エンジン８４の各構成要素を制御する他、コンテンツ情報要約データ生成部（ＣＩＤデータ生成部）８４３、集約化コンテンツ情報要約データ生成部（ＡＣＩＤデータ生成部）８４４、及び要求データ生成部８４５としても機能する。ＣＩＤデータ生成部８４３は、ＣＩデータをハッシュ関数に入力することで、ＣＩデータのハッシュ値、即ちＣＩＤデータを生成する。ＡＣＩＤデータ生成部８４４は、ＣＩＤデータが集約されたデータ、即ちＡＣＩＤデータを生成する。要求データ生成部８４５は、ＡＣＩＤデータをハッシュ関数に入力することで、ＤＡＣＩＤデータを生成する。要求データ生成部８４５は、タイムスタンプを要求するタイムスタンプ要求データとＤＡＣＩＤデータとを通信部８４１に出力する。通信部８４１は、これらのデータをタイムスタンプ付与サーバ２０に送信する。したがって、要求データ生成部８４５は、タイムスタンプ付与サーバ２０にタイムスタンプを要求する。
【０１６３】
＜２−３．情報処理システムによる処理＞
［コンテンツ生成装置による処理］
次に、情報処理システム２００による処理の手順について説明する。まず、図２４に基づいて、コンテンツ生成装置７０による処理の手順について説明する。
【０１６４】
ステップＳ４００において、撮像部７３は、画像データ、即ちコンテンツデータを生成し、コンテンツ取得部７６１に出力する。コンテンツ取得部７６１は、コンテンツデータを記憶部７１に記憶する。なお、このコンテンツデータには、ユーザの個人情報（例えば、撮影場所を示す位置情報）を示す個人情報データが付与されていてもよい。この個人情報データは、例えば、コンテンツデータのＥｘｉｆヘッダに格納される。
【０１６５】
ステップＳ４１０において、コンテンツ取得部７６１は、コンテンツ生成装置７０がＣＤデータ生成用のリソース、即ちＣＤデータ生成部７６２を有しているか否かを判定する。コンテンツ取得部７６１は、コンテンツ生成装置７０がＣＤデータ生成部７６２を有していると判定した場合には、ステップＳ４２０に進み、コンテンツ生成装置７０がＣＤデータ生成部７６２を有していないと判定した場合には、ステップＳ４５０に進む。
【０１６６】
ステップＳ４２０において、ＣＤデータ生成部７６２は、記憶部７１からコンテンツデータを取得し、コンテンツデータをハッシュ関数に入力することで、ＣＤデータを生成する。ＣＤデータ生成部７６２は、コンテンツデータとＣＤデータとを関連付けて記憶部７１に記憶する。
【０１６７】
ステップＳ４３０において、通信部７２は、ウェブサーバ８１との間の通信帯域の広さを検出し、検出結果に関する通信帯域データを通信対象データ決定部７６３に出力する。通信対象データ決定部７６３は、通信帯域の広さが所定の閾値Ｔよりも大きいか否かを判定する。通信対象データ決定部７６３は、通信帯域の広さが閾値Ｔよりも大きいと判定した場合には、ステップＳ４４０に進み、通信帯域の広さが閾値Ｔ以下であると判定した場合には、ステップＳ４７０に進む。
【０１６８】
ステップＳ４４０において、通信対象データ決定部７６３は、コンテンツデータ及びＣＤデータを通信対象データに決定し、コンテンツ生成装置７０のＭＡＣアドレス、コンテンツデータ、ＣＤデータ、及び「１」を示す状態データを含む通信対象データを生成する。通信対象データ決定部７６３は、通信対象データを通信部７２に出力し、通信部７２は、通信対象データをウェブサーバ８１に送信する。その後、コンテンツ生成装置７０は、処理を終了する。したがって、状態データが「１」となる場合、その状態データは、ウェブサーバ８１にコンテンツデータ及びＣＤデータが送信されたという通信状態を示す。
【０１６９】
ステップＳ４５０において、通信部７２は、ウェブサーバ８１との間の通信帯域の広さを検出し、検出結果に関する通信帯域データを通信対象データ決定部７６３に出力する。通信対象データ決定部７６３は、通信帯域の広さが所定の閾値Ｔよりも大きいか否かを判定する。通信対象データ決定部７６３は、通信帯域の広さが閾値Ｔよりも大きいと判定した場合には、ステップＳ４６０に進む。一方、通信対象データ決定部７６３は、通信帯域の広さが閾値Ｔ以下であると判定した場合には、コンテンツデータが未送信であることを示す未送信フラグをコンテンツデータに関連付けて記憶部７１に記憶し、処理を終了する。なお、後者の場合、コンテンツデータは、コンテンツ生成装置７０がユーザ端末６０に接続された際にウェブサーバ８１に送信されることとなる。
【０１７０】
ステップＳ４６０において、通信対象データ決定部７６３は、コンテンツデータを通信対象データに決定し、コンテンツ生成装置７０のＭＡＣアドレス、コンテンツデータ及び「０」を示す状態データを含む通信対象データを生成する。通信対象データ決定部７６３は、通信対象データを通信部７２に出力し、通信部７２は、通信対象データをウェブサーバ８１に送信する。その後、コンテンツ生成装置７０は、処理を終了する。したがって、状態データが「０」となる場合、その状態データは、ウェブサーバ８１にコンテンツデータが送信されたという通信状態を示す。
【０１７１】
ステップＳ４７０において、通信対象データ決定部７６３は、コンテンツデータ及びＣＤデータを関連付けるための関連付け用データとして、乱数データを生成する。
【０１７２】
ステップＳ４８０において、通信対象データ決定部７６３は、ＣＤデータを通信対象データに決定し、コンテンツ生成装置７０のＭＡＣアドレス、ＣＤデータ、乱数、及び「２」を示す状態データを含む通信対象データを生成する。通信対象データ決定部７６３は、通信対象データを通信部７２に出力し、通信部７２は、通信対象データをウェブサーバ８１に送信する。したがって、状態データが「２」となる場合、その状態データは、ウェブサーバ８１にＣＤデータ及び乱数データが送信されたという通信状態を示す。
【０１７３】
ステップＳ４９０において、通信対象データ決定部７６３は、コンテンツデータ、ＣＤデータ、及び乱数データを関連付けて記憶部７１に記憶する。即ち、通信対象データ決定部７６３は、コンテンツデータに乱数データを付与する。
【０１７４】
ステップＳ５００において、通信部７２は、ウェブサーバ８１との間の通信帯域の広さを再度検出し、検出結果に関する通信帯域データを通信対象データ決定部７６３に出力する。通信対象データ決定部７６３は、通信帯域の広さが所定の閾値Ｔよりも大きいか否かを判定する。通信対象データ決定部７６３は、通信帯域の広さが閾値Ｔよりも大きいと判定した場合には、ステップＳ５１０に進む。一方、通信対象データ決定部７６３は、通信帯域の広さが閾値Ｔ以下であると判定した場合には、コンテンツデータが未送信であることを示す未送信フラグをコンテンツデータに関連付けて記憶部７１に記憶し処理を終了する。なお、後者の場合、コンテンツデータは、コンテンツ生成装置７０がユーザ端末６０に接続された際にウェブサーバ８１に送信されることとなる。
【０１７５】
ステップＳ５１０において、通信対象データ決定部７６３は、コンテンツデータを通信対象データに決定し、コンテンツ生成装置７０のＭＡＣアドレス、コンテンツデータ、コンテンツデータに関連付けられた乱数、及び「３」を示す状態データを含む通信対象データを生成する。通信対象データ決定部７６３は、通信対象データを通信部７２に出力し、通信部７２は、通信対象データをウェブサーバ８１に送信する。その後、コンテンツ生成装置７０は、処理を終了する。したがって、状態データが「３」となる場合、その状態データは、ウェブサーバ８１にコンテンツデータ及び乱数データが送信されたという通信状態を示す。
【０１７６】
このように、コンテンツ生成装置７０は、通信対象データとしてＣＤデータをウェブサーバ８１に送信することができるので、コンテンツシェアリングシステム８０は、ＣＤデータを生成する手間を省くことができる。これにより、コンテンツシェアリングシステム８０の処理負荷が低減される。また、コンテンツ生成装置７０は、コンテンツ生成装置７０のリソース及びウェブサーバ８１との通信帯域の広さに基づいて、通信対象データを決定する。したがって、コンテンツ生成装置７０は、通信対象データをより確実かつ迅速にウェブサーバ８１に送信することができる。また、コンテンツ生成装置７０は、コンテンツデータの生成時に自動的にコンテンツデータ及びＣＤデータのうち少なくとも一方を送信する。したがって、コンテンツ生成装置７０は、コンテンツデータが生成された日時と、タイムスタンプが保証する日時、即ちタイムスタンプが付与された日時との間隔を狭めることができる。
【０１７７】
［ユーザ端末による処理］
次に、図２５に基づいて、ユーザ端末６０による処理の手順について説明する。ステップＳ５２０において、コンテンツ取得部６６１は、接続検知部６３から接続検知データが与えられたか否かを判定する。コンテンツ取得部６６１は、接続検知データが与えられたと判定した場合には、ステップＳ５３０に進み、接続検知データが与えられないと判定した場合には、処理を終了する。
【０１７８】
ステップＳ５３０において、コンテンツ取得部６６１は、通信部６２を介してコンテンツ生成装置７０にアクセスし、記憶部７１からコンテンツデータ及びコンテンツデータに関連付けられた各種データを読みだす。コンテンツ取得部６６１は、これらのデータを記憶部６１に記憶する。
【０１７９】
ステップＳ５４０において、コンテンツ取得部６６１は、未送信のコンテンツデータ、即ち未送信フラグが関連付けられたコンテンツデータが存在するか否かを判定する。コンテンツ取得部６６１は、未送信のコンテンツデータが存在すると判定した場合には、ステップＳ５５０に進み、未送信のコンテンツデータが存在しないと判定した場合には、処理を終了する。ユーザ端末６０は、未送信のコンテンツデータに対して、ステップＳ５５０以降の処理を行う。
【０１８０】
ステップＳ５５０において、コンテンツ取得部６６１は、コンテンツデータ付随の個人情報データを削除する旨の設定がなされているか否かを判定する。なお、ユーザは、入力操作部６４を用いた入力操作により、このような設定を行うことができる。設定内容は記憶部６１に記憶される。コンテンツ取得部６６１は、当該設定がなされていると判定した場合には、ステップＳ５６０に進み、当該設定がなされていないと判定した場合には、ステップＳ５７０に進む。
【０１８１】
ステップＳ５６０において、コンテンツ取得部６６１は、コンテンツデータから個人情報データを削除する。なお、ステップＳ５５０〜Ｓ５６０の処理は、コンテンツ生成装置７０により行われてもよい。
【０１８２】
ステップＳ５７０において、コンテンツ取得部６６１は、ＣＤデータが算出済みであるか、即ち、コンテンツデータにＣＤデータが関連付けられているか否かを判定する。コンテンツ取得部６６１は、ＣＤデータが算出済みであると判定した場合には、ステップＳ６６０に進み、ＣＤデータが算出されてないと判定した場合には、ステップＳ５８０に進む。
【０１８３】
ステップＳ５８０において、コンテンツ取得部６６１は、ユーザ端末６０がＣＤデータ生成用のリソース、即ちＣＤデータ生成部６６２を有しているか否かを判定する。コンテンツ取得部６６１は、ユーザ端末６０がＣＤデータ生成部６６２を有していると判定した場合には、ステップＳ５９０に進み、ユーザ端末６０がＣＤデータ生成部６６２を有していないと判定した場合には、ステップＳ６２０に進む。
【０１８４】
ステップＳ５９０において、ＣＤデータ生成部６６２は、記憶部６１からコンテンツデータを取得し、コンテンツデータをハッシュ関数に入力することで、ＣＤデータを生成する。ＣＤデータ生成部６６２は、コンテンツデータとＣＤデータとを関連付けて記憶部６１に記憶する。
【０１８５】
ステップＳ６００において、通信対象データ決定部６６３は、コンテンツデータ及びＣＤデータを同時にウェブサーバ８１に送信する旨の設定がなされているか否かを判定する。なお、ユーザは、入力操作部６４を用いた入力操作により、このような設定を行うことができる。設定内容は記憶部６１に記憶される。通信対象データ決定部６６３は、当該設定がなされていると判定した場合には、ステップＳ６１０に進み、当該設定がなされていないと判定した場合には、ステップＳ６３０に進む。
【０１８６】
ステップＳ６１０において、通信対象データ決定部６６３は、コンテンツデータ及びＣＤデータを通信対象データに決定し、ユーザＩＤ、コンテンツデータ、ＣＤデータ、及び「１」を示す状態データを含む通信対象データを生成する。通信対象データ決定部６６３は、通信対象データを通信部６２に出力し、通信部６２は、通信対象データをウェブサーバ８１に送信する。その後、ユーザ端末６０は、処理を終了する。
【０１８７】
ステップＳ６２０において、通信対象データ決定部６６３は、コンテンツデータを通信対象データに決定し、ユーザＩＤ、コンテンツデータ及び「０」を示す状態データを含む通信対象データを生成する。通信対象データ決定部６６３は、通信対象データを通信部６２に出力し、通信部６２は、通信対象データをウェブサーバ８１に送信する。その後、コンテンツ生成装置７０は、処理を終了する。
【０１８８】
ステップＳ６３０において、通信対象データ決定部６６３は、コンテンツデータ及びＣＤデータを関連付けるための関連付け用データとして、乱数データを生成する。
【０１８９】
ステップＳ６４０において、通信対象データ決定部６６３は、ＣＤデータを通信対象データに決定し、ユーザＩＤ、ＣＤデータ、乱数、及び「２」を示す状態データを含む通信対象データを生成する。通信対象データ決定部６６３は、通信対象データを通信部６２に出力し、通信部６２は、通信対象データをウェブサーバ８１に送信する。
【０１９０】
ステップＳ６５０において、通信対象データ決定部６６３は、コンテンツデータ、ＣＤデータ、及び乱数データを関連付けて記憶部６１に記憶する。即ち、通信対象データ決定部６６３は、コンテンツデータに乱数データを付与する。
【０１９１】
ステップＳ６６０において、通信対象データ決定部６６３は、コンテンツデータを通信対象データに決定し、ユーザＩＤ、コンテンツデータ、コンテンツデータに関連付けられた乱数、及び「３」を示す状態データを含む通信対象データを生成する。通信対象データ決定部６６３は、通信対象データを通信部６２に出力し、通信部６２は、通信対象データをウェブサーバ８１に送信する。
【０１９２】
このように、ユーザ端末６０は、通信対象データとしてＣＤデータをウェブサーバ８１に送信することができるので、コンテンツシェアリングシステム８０は、ＣＤデータを生成する手間を省くことができる。これにより、コンテンツシェアリングシステム８０の処理負荷が低減される。また、ユーザ端末６０は、ユーザ端末６０のリソース、及びコンテンツ生成装置７０がウェブサーバ８１に送信したデータに基づいて、通信対象データを決定する。したがって、ユーザ端末６０は、通信対象データをより確実かつ迅速にウェブサーバ８１に送信することができる。また、ユーザ端末６０は、コンテンツ生成装置７０の接続時に自動的にコンテンツデータ及びＣＤデータのうち少なくとも一方を送信する。したがって、ユーザ端末６０は、コンテンツデータが生成された日時と、タイムスタンプが保証する日時、即ちタイムスタンプが付与された日時との間隔を狭めることができる。また、ユーザ端末６０は、ユーザによる設定により、コンテンツデータ付随の個人情報データを削除することができるので、個人情報データがユーザの意図に反してコンテンツシェアリングシステム８０に登録されることを防止することができる。
【０１９３】
［ウェブサーバによる処理］
次に、ウェブサーバ８１による処理を図２６に基づいて説明する。ステップＳ６７０において、通信部８１１は、通信対象データを受信し、状態判定部８１４に出力する。ステップＳ６８０において、状態判定部８１４は、通信対象データに含まれる状態データが「０」を示すか否かを判定する。状態判定部８１４は、状態データが「０」を示すと判定した場合には、ステップＳ６９０に進み、状態データが「０」以外を示すと判定した場合には、ステップＳ７２０に進む。
【０１９４】
ステップＳ６９０において、ＣＤデータ生成部８１５は、通信対象データに含まれるコンテンツデータをハッシュ関数に入力することで、ＣＤデータを生成する。ステップＳ７００において、ＣＩデータ生成部８１６は、通信対象データからユーザＩＤを取得し、ユーザＩＤとＣＤデータとを組み合わせることで、ＣＩデータを生成する。なお、このＣＤデータは、ステップ６９０の処理が行われた場合には、ステップＳ６９０で算出されたものとなり、ステップＳ７２０の処理が行われた場合には、通信対象データに含まれるものとなる。ＣＩデータ生成部８１６は、通信対象データにＭＡＣアドレスが含まれる場合、ＭＡＣアドレス関連テーブルから当該ＭＡＣアドレスに対応するユーザＩＤを取得し、このユーザＩＤとＣＤデータとを組み合わせることで、ＣＩデータを生成する。ＣＩデータ生成部８１６は、コンテンツデータとＣＩデータとを関連付ける。
【０１９５】
ステップＳ７１０において、不正判定部８１７は、図２７に示す不正検出処理を行なう。不正検出処理は、概略的には、コンテンツデータが適正か否か（他のユーザが所有するコンテンツデータに近似しているか否か）を判定する処理である。その後、ウェブサーバ８１は、処理を終了する。
【０１９６】
ステップＳ７２０において、状態判定部８１４は、通信対象データに含まれる状態データが「１」を示すか否かを判定する。状態判定部８１４は、状態データが「１」を示すと判定した場合には、ステップＳ７００に進み、状態データが「２」または「３」を示すと判定した場合には、ステップＳ７３０に進む。
【０１９７】
ステップＳ７３０において、状態判定部８１４は、通信対象データに含まれる状態データが「２」を示すか否かを判定する。状態判定部８１４は、状態データが「２」を示すと判定した場合には、ステップＳ７４０に進み、状態データが「３」を示すと判定した場合には、ステップＳ７６０に進む。
【０１９８】
ステップＳ７４０において、ＣＩデータ生成部８１６は、通信対象データからユーザＩＤ及びＣＤデータを取得し、ユーザＩＤとＣＤデータとを組み合わせることで、ＣＩデータを生成する。ＣＩデータ生成部８１６は、通信対象データにＭＡＣアドレスが含まれる場合、ＭＡＣアドレス関連テーブルから当該ＭＡＣアドレスに対応するユーザＩＤを取得し、このユーザＩＤとＣＤデータとを組み合わせることで、ＣＩデータを生成する。
【０１９９】
ステップＳ７５０において、ＣＩデータ生成部８１６は、通信対象データに含まれる乱数データと、ＣＩデータとを関連付けてＣＩデータ関連テーブルに登録する。その後、ウェブサーバ８１は、処理を終了する。
【０２００】
ステップＳ７６０において、ＣＩデータ生成部８１６は、通信対象データに含まれる乱数データを、ＣＩデータ関連テーブルから検索する。ステップＳ７７０において、ＣＩデータ生成部８１６は、通信対象データに含まれる乱数データがＣＩデータ関連テーブルに記録されているか否かを判定する。ＣＩデータ生成部８１６は、乱数データがＣＩデータ関連テーブルに記録されていると判定した場合には、ステップＳ７８０に進む。ＣＩデータ生成部８１６は、乱数データがＣＩデータ関連テーブルに記録されていないと判定した場合には、乱数データが不正であると認定し、処理を終了する。
【０２０１】
ステップＳ７８０において、ＣＩデータ生成部８１６は、乱数データに対応するＣＩデータをＣＩデータ関連テーブルから取得し、通信対象データに含まれるコンテンツデータとＣＩデータとを関連付ける。ステップＳ７９０において、ＣＩデータ生成部８１６は、ＣＩデータ関連テーブルから、当該乱数データ及びＣＩデータを削除する。ステップＳ８００において、不正判定部８１７は、図２７に示す不正検出処理を行なう。その後、ウェブサーバ８１は、処理を終了する。
【０２０２】
［不正検出処理］
次に、不正判定部８１７が行なう不正検出処理を図２７に基づいて説明する。ステップＳ８２０において、不正判定部８１７は、コンテンツデータの特徴量を算出する。ここで、コンテンツデータの特徴量は、例えばＳＩＦＴ（Ｓｃａｌｅ  Ｉｎｖａｒｉａｎｔ  Ｆｅａｔｕｒｅ  Ｔｒａｎｓｆｏｒｍ）アルゴリズムにより算出される。ＳＩＦＴアルゴリズムにより算出された特徴量は、１２８次元のベクトル値を有し、コンテンツデータの回転、スケールの変化、照明変化等に対して頑強であるという特徴がある。例えば、コンテンツデータに対してリサイズや切り抜きが行われても、特徴量があまり変化しない。なお、コンテンツデータのハッシュ値、即ちＣＤデータは、コンテンツデータ同士がほとんど変わらなくても値が大きく変化する場合がある。このため、ＣＤデータ同士を比較するよりも、特徴量データ同士を比較したほうが、コンテンツデータが適正か否かを正確に判定することができる。なお、ＳＩＦＴアルゴリズムについては、例えば、「Ｄａｖｉｄ  Ｇ．  Ｌｏｗｅ，  ’Ｄｉｓｔｉｎｃｔｉｖｅ  ｉｍａｇｅ  ｆｅａｔｕｒｅｓ  ｆｒｏｍ  ｓｃａｌｅ−ｉｎｖａｒｉａｎｔ  ｋｅｙｐｏｉｎｔｓ，’  Ｉｎｔｅｒｎａｔｉｏｎａｌ  Ｊｏｕｒｎａｌ  ｏｆ  Ｃｏｍｐｕｔｅｒ  Ｖｉｓｉｏｎ，  ６０，  ２  （２００４），  ｐｐ．  ９１−１１０」に詳細に記載されている。
【０２０３】
ステップＳ８３０において、不正判定部８１７は、データベースサーバ８３にアクセスし、コンテンツ情報管理テーブルを取得する。そして、不正判定部８１７は、算出された特徴量データ、即ち比較対象特徴量データと、コンテンツ情報管理テーブルのいずれかの行に格納された特徴量データ、即ち基準特徴量データとの近似度を算出する。ここで、近似度は、特徴量データ同士が近似する度合いを示す。不正判定部８１７は、例えば、比較対象特徴量データと基準特徴量データとの差分値を次元毎に算出し、これらの差分値の算術平均値に対応する値を近似度とする。この場合、近似度は、算術平均値が大きいほど小さくなる。
【０２０４】
不正判定部８１７は、近似度が所定の閾値を超えるか否かを判定し、近似度が閾値を超えると判定した場合には、ステップＳ８７０に進み、近似度が閾値以下であると判定した場合には、ステップＳ８５０に進む。
【０２０５】
不正判定部８１７は、ステップＳ８５０において、不正判定部８１７は、比較対象特徴量データと比較していない基準特徴量データが存在するか否かを判定する。不正判定部８１７は、比較対象特徴量データと比較していない基準特徴量が存在すると判定した場合には、ステップＳ８３０に戻り、すべての基準特徴量データと比較対象特徴量データとを比較したと判定した場合には、ステップＳ８６０に進む。
【０２０６】
ステップＳ８６０において、ユーザ要求処理部８１３は、ユーザから送信されたコンテンツデータをコンテンツ情報管理テーブルに登録する。具体的には、ユーザ要求処理部８１３は、図２８に示すコンテンツ登録処理を行なう。
【０２０７】
ステップＳ８７０において、不正判定部８１７は、不正処理決定テーブルに登録された不正処理のうち、予め設定された不正処理を実行する。このような設定は、ウェブサーバ８１が任意に行なってもよいが、適正なコンテンツデータを投稿したユーザ（適正ユーザ）が任意に設定してもよい。なお、適正ユーザへの通知は、例えば、不正なコンテンツデータを受信したことを示すデータ（例えば画像データや音声データ）を適正ユーザのユーザ端末６０に送信することで行われる。また、投稿が拒絶されない場合、ステップＳ８６０と同様の処理が行われる。その後、不正判定部８１７は不正検出処理を終了する。
【０２０８】
ウェブサーバ８１は、このようは不正検出処理を行なうことで、ユーザによる不正な投稿をより確実に防止することができる。不正な投稿としては、例えば、以下のような事例が想定される。即ち、ユーザ４０ｂがユーザ４０ａによって適正に投稿されたコンテンツデータをコンテンツシェアリングシステム８０とは別の場所で不正に利用した。そして、ユーザ４０ｃが当該コンテンツデータをコンテンツシェアリングシステム８０に投稿しようと試みた。この場合、上述した不正処理が実行される。これにより、ユーザ４０ｃによる不正な投稿が排除されうる。
【０２０９】
［コンテンツ登録処理］
次に、コンテンツ登録処理を図２８に基づいて説明する。ステップＳ８８０において、ユーザ要求処理部８１３は、通信対象データに含まれるコンテンツデータをストレージサーバ８２に送信し、ストレージサーバ８２の制御部８２２は、コンテンツデータを記憶部８２０に記憶する。制御部８２２は、コンテンツデータの所在を示すコンテンツパスデータをウェブサーバ８１に送信する。
【０２１０】
ステップＳ８９０において、ユーザ要求処理部８１３は、コンテンツデータにコンテンツＩＤを割り当てる。さらに、ユーザ要求処理部８１３は、コンテンツデータを受信した日時（具体的には、コンテンツデータを含む通信対象データを受信した日時）を示す受信日時データを生成する。ステップＳ９１０において、ユーザ要求処理部８１３は、コンテンツＩＤ、ユーザＩＤ、コンテンツパスデータ、ＣＤデータ、特徴量データ、及び受信日時データを関連付けてデータベースサーバ８３に送信する。データベースサーバ８３の制御部８３２は、コンテンツ情報管理テーブルにこれらのデータを関連付けて記録する。なお、この時点では、タイムスタンプＩＤは初期値（例えば「０」）とされる。
【０２１１】
［タイムスタンプ取得エンジンによる処理］
次に、タイムスタンプ取得エンジン８４による処理を図２９に基づいて説明する。なお、タイムスタンプ取得エンジン８４は、図２９による処理を一定時間ごとに行う。また、タイムスタンプ取得エンジン８４は、コンテンツシェアリングシステム８０を構成する他のサーバによる処理や、ユーザによるリクエストとは関係なく処理を行なう。
【０２１２】
ステップＳ９２０において、ＣＩＤデータ生成部８４３は、データベースサーバ８３内のコンテンツ情報管理テーブルにアクセスする。ステップＳ９３０において、ＣＩＤデータ生成部８４３は、コンテンツ情報管理テーブルに、タイムスタンプＩＤが「０」となる行（エントリ）が１以上存在するか否かを判定する。ＣＩＤデータ生成部８４３は、タイムスタンプＩＤが「０」となるエントリが１以上存在すると判定した場合、ステップＳ９４０に進み、タイムスタンプＩＤが「０」となるエントリが存在しないと判定した場合、ステップＳ９３１に進む。ＣＩＤデータ生成部８４３は、タイムスタンプＩＤが「０」となるエントリに基づいて、以下の処理を行う。
【０２１３】
ステップＳ９３１において、ＣＩＤデータ生成部８４３は、タイムスタンプフラグが立っているか否かを判定する。ＣＩＤデータ生成部８４３は、タイムスタンプフラグが立っていると判定した場合には、ＡＣＩＤパスデータ（このＡＣＩＤパスデータは、後述するステップＳ９８０で与えられる）を参照することで、ＡＣＩＤデータをストレージサーバ８２から取得する。その後、ＣＩＤデータ生成部８４３は、ステップＳ９９０に進む。一方、ＣＩＤデータ生成部８４３は、タイムスタンプフラグがクリアされていると判定した場合には、処理を終了する。
【０２１４】
ステップＳ９４０において、ＣＩＤデータ生成部８４３は、タイムスタンプフラグが立っているか否かを判定する。ＣＩＤデータ生成部８４３は、タイムスタンプフラグが立っていると判定した場合には、ステップＳ９６０に進み、タイムスタンプフラグがクリアされていると判定した場合には、ステップＳ９５０に進む。
【０２１５】
ステップＳ９５０において、ＡＣＩＤデータ生成部８４４は、空のＡＣＩＤデータを生成する。ステップＳ９６０において、ＣＩＤデータ生成部８４３は、エントリ内のユーザＩＤとＣＤデータとを組み合わせることでＣＩデータを生成し、ＣＩデータをハッシュ関数に入力することで、ＣＩＤデータを生成する。
【０２１６】
ステップＳ９７０において、ＡＣＩＤデータ生成部８４４は、ＡＣＩＤデータの末尾にＣＩＤデータを追加する。ステップＳ９８０において、ＡＣＩＤデータ生成部８４４は、ＡＣＩＤデータをストレージサーバ８２に送信する。ストレージサーバ８２の制御部８２２は、ＡＣＩＤデータを記憶部８２０に記憶する。制御部８２２は、ＡＣＩＤデータの所在を示すＡＣＩＤパスデータをタイムスタンプ取得エンジン８４に送信する。ＡＣＩＤデータ生成部８４４は、ＡＣＩＤパスデータを記憶部８４０に記憶する。
【０２１７】
ステップＳ９９０において、要求データ生成部８４５は、ＡＣＩＤデータをハッシュ関数に入力することで、ＤＡＣＩＤデータを生成する。ステップＳ１０００において、要求データ生成部８４５は、タイムスタンプを要求するタイムスタンプ要求データとＤＡＣＩＤデータとをタイムスタンプ付与サーバ２０に送信する。これに応じて、タイムスタンプ付与サーバ２０は、タイムスタンプタグデータを生成し、タイムスタンプ取得エンジン８４に送信する。
【０２１８】
ステップＳ１０１０において、要求データ生成部８４５は、タイムスタンプタグデータを受信したか否かを判定する。要求データ生成部８４５は、タイムスタンプタグデータを取得したと判定した場合には、ステップＳ１０２０に進み、タイムスタンプタグデータを受信していないと判定した場合には、ステップＳ１０７０に進む。
【０２１９】
ステップＳ１０２０において、要求データ生成部８４５は、タイムスタンプタグデータの検証を行なう。具体的には、要求データ生成部８４５は、タイムスタンプオーソリティ３０から事前に取得したタイムスタンプオーソリティ３０の公開鍵に基づいて、タイムスタンプタグデータ内の署名データが適正か否かを判定する。要求データ生成部８４５は、タイムスタンプタグデータ内の署名データが適正であると判定した場合には、タイムスタンプタグデータの検証に成功したと判定する。
【０２２０】
ステップＳ１０３０において、要求データ生成部８４５は、タイムスタンプタグデータの検証に成功したか否かを判定する。要求データ生成部８４５は、タイムスタンプタグデータの検証に成功したと判定した場合には、ステップＳ１０４０に進み、タイムスタンプタグデータの検証に失敗したと判定した場合には、ステップＳ１０７０に進む。
【０２２１】
ステップＳ１０４０において、要求データ生成部８４５は、タイムスタンプタグデータをストレージサーバ８２に送信する。ストレージサーバ８２の制御部８２２は、タイムスタンプタグデータを記憶部８２０に記憶する。制御部８２２は、タイムスタンプタグデータの所在を示すタイムスタンプパスデータをタイムスタンプ取得エンジン８４に送信する。要求データ生成部８４５は、タイムスタンプパスデータを記憶部８４０に記憶する。
【０２２２】
要求データ生成部８４５は、タイムスタンプタグデータにタイムスタンプＩＤを付与する。さらに、要求データ生成部８４５は、タイムスタンプタグデータからタイムスタンプ日時データを取得する。要求データ生成部８４５は、タイムスタンプＩＤ、タイムスタンプパスデータ、ＡＣＩＤパスデータ、ＤＡＣＩＤデータ、及びタイムスタンプ日時データを関連付けてデータベースサーバ８３に送信する。データベースサーバ８３の制御部８３２は、これらのデータを関連付けてタイムスタンプ情報管理テーブルに記録する。
【０２２３】
ステップＳ１０６０において、要求データ生成部８４５は、タイムスタンプフラグをクリアする。その後、タイムスタンプ取得エンジン８４は、処理を終了する。ステップＳ１０７０において、要求データ生成部８４５は、タイムスタンプフラグを立てる。その後、タイムスタンプ取得エンジン８４は、処理を終了する。
【０２２４】
このように、タイムスタンプ取得エンジン８４は、コンテンツシェアリングシステム８０を構成する他のサーバとは独立して処理を行うことができる。これにより、タイムスタンプ取得エンジン８４は、コンテンツシェアリングシステム８０のリソースが変動しても、タイムスタンプ取得日時のばらつきを低減することができる。
【０２２５】
また、タイムスタンプ取得エンジン８４は、ＡＣＩＤデータの生成とタイムスタンプ要求とを別のステップで行うので、タイムスタンプの取得や検証に失敗しても、ＡＣＩＤデータの再生成を行う必要がなくなる。
【０２２６】
［コンテンツデータの削除または退会時の処理］
ウェブサーバ８１は、ユーザがコンテンツデータの削除またはコンテンツシェアリングシステム８０が提供するサービスからの退会を要求した場合には、以下の処理を行なう。即ち、ユーザ要求処理部８１３は、上記の要求を受けた場合、ストレージサーバ８２から該当するコンテンツデータを削除する。ユーザ要求処理部８１３は、それ以外のデータ、例えばコンテンツ情報管理テーブル及びタイムスタンプ情報管理テーブル内のデータをそのまま保持する。これにより、ユーザは、コンテンツデータの削除または退会を行った後であっても、タイムスタンプタグデータを取得することができる。具体的には、ユーザ端末６０は、ユーザＩＤ及びコンテンツデータをウェブサーバ８１に送信する。ウェブサーバ８１のＣＤデータ生成部８１５は、コンテンツデータをハッシュ関数に入力することで、ＣＤデータを生成する。次いで、ユーザ要求処理部８１３は、ユーザＩＤ及びＣＤデータに対応する行をコンテンツ情報管理テーブルから検索する。次いで、ユーザ要求処理部８１３は、検索された行からタイムスタンプＩＤを取得し、このタイムスタンプＩＤに対応する行をタイムスタンプ情報管理テーブルから検索する。次いで、ユーザ要求処理部８１３は、検索された行からタイムスタンプパスデータを取得し、このタイムスタンプパスデータに基づいて、ストレージサーバ８２からタイムスタンプタグデータを取得する。次いで、ユーザ要求処理部８１３は、タイムスタンプタグデータをユーザ端末６０に送信する。これにより、ユーザは、タイムスタンプタグデータを取得することができる。
【０２２７】
［コンテンツデータの公開］
次に、コンテンツデータの公開について説明する。コンテンツデータの公開は、第１の実施形態と同様にして行われるが、ＣＰデータの内容が異なる。具体的には、まず、ユーザ端末６０は、ユーザが指定したコンテンツＩＤをウェブサーバ８１に送信する。これにより、ユーザは、コンテンツデータの閲覧要求を行なう。
【０２２８】
ユーザ要求処理部８１３は、ユーザからコンテンツデータの閲覧要求があった場合、コンテンツＩＤに対応する行をコンテンツ情報管理テーブルから検索する。ユーザ要求処理部８１３は、検索された行からユーザＩＤ、コンテンツパスデータ、及びタイムスタンプＩＤを取得する。次いで、ユーザ要求処理部８１３は、コンテンツパスデータに基づいて、ストレージサーバ８２からコンテンツデータを取得する。さらに、ユーザ要求処理部８１３はタイムスタンプＩＤに対応する行をタイムスタンプ情報管理テーブルから検索し、検索された行からＡＣＩＤパスデータ及びタイムスタンプパスデータを取得する。ユーザ要求処理部８１３は、これらのパスデータに基づいて、ＡＣＩＤデータ及びタイムスタンプタグデータをストレージサーバ８２から取得する。
【０２２９】
ユーザ要求処理部８１３は、取得したユーザＩＤ、コンテンツデータ、ＡＣＩＤデータ、及びタイムスタンプタグデータをパッケージングすることで、ＣＰデータを生成する。したがって、第２の実施形態のＣＰデータは、第１の実施形態のＣＰデータよりも簡素化されている（図８参照）。なお、これらのデータをパッケージングする方法としては、例えば、これらのデータをｚｉｐファイルとしてアーカイブする方法が考えられる（第１の実施形態も同様）。
【０２３０】
次いで、ユーザ要求処理部８１３は、ＣＰデータをユーザ端末６０に送信する。ユーザ端末６０の制御部６６は、ＣＰデータに基づいて、コンテンツデータを表示部６５に表示する。表示例を図３１に示す。表示部６５は、コンテンツデータＩｍ１の近傍に、当該コンテンツデータＩｍ１にタイムスタンプが付与されていることを示すアイコンＩｍ２を表示する。これにより、コンテンツシェアリングシステム８０は、コンテンツデータＩｍ１にタイムスタンプが付与されていることをユーザに強く印象づけることができる。
【０２３１】
［検証処理］
次に、検証処理を図３０に基づいて説明する。第２の実施形態では、各ユーザ端末６０がＣＰデータに対して検証処理を行なうことができる。勿論、検証用の検証サーバを別途用意し、この検証サーバに以下の検証処理を行わせてもよい。また、いずれかのユーザ端末６０を検証用の端末としてもよい。検証処理は、例えばユーザからのリクエストによって開始される。第２の実施形態の検証処理は、ＣＰデータが各ユーザ端末６０または検証サーバに送信され、各ユーザ端末６０または検証サーバがＣＰデータに対して検証処理を行なうという点で、第１の実施形態の検証処理と異なる。
【０２３２】
ステップＳ１０８０において、図１５に示す検証部６６４は、ＣＰデータ内のコンテンツデータをハッシュ関数に入力することで、検証用ＣＤデータを生成する。ステップＳ１０９０において、検証部６６４は、ＣＰデータ内のユーザＩＤと、検証用ＣＤデータとを組み合わせることで、検証用ＣＩＤデータを生成する。ステップＳ１１００において、検証部６６４は、検証用ＣＩＤデータがＣＰデータ内のＡＣＩＤデータに存在するか否かを判定する。検証部６６４は、検証用ＣＩＤデータがＣＰデータ内のＡＣＩＤデータに存在すると判定した場合には、ステップＳ１１１０に進み、検証用ＣＩＤデータがＣＰデータ内のＡＣＩＤデータに存在しないと判定した場合には、ステップＳ１１４０に進む。
【０２３３】
ステップＳ１１１０において、検証部６６４は、ＣＰデータ内のタイムスタンプタグデータを検証する。具体的には、検証部６６４は、タイムスタンプオーソリティ３０の公開鍵に基づいて、タイムスタンプタグデータ内の署名データが適正か否かを判定する。なお、検証部６６４は、当該公開鍵をタイムスタンプオーソリティ３０から事前に取得してもよいし、ステップＳ１１１０の処理を行う段階でタイムスタンプオーソリティ３０から取得してもよい。検証部６６４は、署名データが適正であると判定した場合には、タイムスタンプタグデータの検証に成功したと判定する。
【０２３４】
ステップＳ１１２０において、検証部６６４は、タイムスタンプタグデータの検証に成功したか否かを判定する。検証部６６４は、タイムスタンプの検証に成功したと判定した場合には、ステップＳ１１３０に進み、タイムスタンプの検証に失敗したと判定した場合には、ステップＳ１１４０に進む。
【０２３５】
ステップＳ１１３０において、検証部６６４は、ＣＰデータの検証に成功したと判定する。そして、検証部６６４は、検証に成功した旨を示す情報、ＣＰデータ内のユーザＩＤ、及びＣＰデータ内のタイムスタンプ日時データを表示部６５に表示する。検証部６６４は、これらのデータを音声出力してもよい。その後、検証部６６４は、検証処理を終了する。一方、ステップＳ１１４０において、検証部６６４は、ＣＰデータの検証に失敗したと判定する。そして、検証部６６４は、検証に失敗した旨を示す情報を表示部６５に表示する。なお、検証サーバが検証処理を行った場合、検証サーバは、検証に成功（または失敗）した旨を示す情報を、リクエストがあったユーザ端末６０に送信する。このように、第２の実施形態では、ユーザ端末６０または検証サーバがＣＰデータに対して検証処理を行うので、仮にコンテンツシェアリングシステム８０が停止しても、検証処理を行なうことができる。
【０２３６】
以上により、第２の実施形態では、ユーザ端末６０またはコンテンツ生成装置７０がＣＤデータをコンテンツシェアリングシステム８０に送信するので、コンテンツシェアリングシステム８０は、ＣＤデータを生成する手間を省くことができる。
【０２３７】
さらに、コンテンツ生成装置７０は、コンテンツデータ生成時にコンテンツデータ及びＣＤデータのうち少なくとも一方を通信対象データとして送信するので、コンテンツデータが生成された日時と、タイムスタンプが保証する日時との間隔を狭めることができる。
【０２３８】
さらに、コンテンツ生成装置７０は、コンテンツシェアリングシステム８０との通信帯域に基づいて、通信対象データを決定するので、通信対象データをより迅速かつ確実にコンテンツシェアリングシステム８０に送信することができる。例えば、通信帯域が狭い場合に、大量の通信対象データをコンテンツシェアリングシステム８０に送信しようとすると、通信速度の大幅な低下や、通信対象データの欠損等が起こる可能性がある。しかし、コンテンツ生成装置７０は、通信帯域に基づいて、通信対象データを決定するので、通信速度の大幅な低下や、通信対象データの欠損等をより確実に回避することができる。
【０２３９】
さらに、コンテンツ生成装置７０は、ＣＤデータを通信対象データとした場合には、ＣＤデータをコンテンツシェアリングシステム８０に送信した後、通信帯域に基づいて、コンテンツデータを通信対象データとして送信するか否かを決定する。したがって、コンテンツ生成装置７０は、ＣＤデータをコンテンツシェアリングシステム８０に送信した後に、コンテンツデータをより確実に送信することができる。
【０２４０】
さらに、コンテンツ生成装置７０は、ＣＤデータとコンテンツデータとを別々の通信対象データとして送信する場合には、これらを関連付けるための乱数データを通信対象データに含める。したがって、コンテンツシェアリングシステム８０は、ＣＤデータ及びコンテンツデータを容易に関連付けることができる。
【０２４１】
さらに、コンテンツ生成装置７０は、通信対象データの内容、即ち通信状態に関する状態データを通信対象データに含めるので、コンテンツシェアリングシステム８０は、現時点の通信状態がどのようになっているのかを容易に判定することができる。
【０２４２】
さらに、ユーザ端末６０は、コンテンツ生成装置７０が接続された際に、コンテンツ生成装置７０からコンテンツデータを取得する。そして、ユーザ端末６０は、コンテンツ生成装置７０がＣＤデータを生成していない場合に、ＣＤデータをコンテンツシェアリングシステム８０に送信する。したがって、ユーザ端末６０は、コンテンツシェアリングシステム８０に重複してＣＤデータが送信されることを防止することができる。さらに、ユーザ端末６０は、コンテンツ生成装置７０が接続された際にコンテンツデータ及びＣＤデータのうち少なくとも一方を通信対象データとして送信するので、コンテンツデータが生成された日時と、タイムスタンプが保証する日時との間隔を狭めることができる。
【０２４３】
さらに、ユーザ端末６０は、コンテンツ生成装置７０がコンテンツシェアリングシステム８０に送信したデータに基づいて、通信対象データを決定するので、コンテンツシェアリングシステム８０に重複してデータが送信されることを防止することができる。
【０２４４】
さらに、ユーザ端末６０は、コンテンツ生成装置７０がＣＤデータ及び乱数データをコンテンツシェアリングシステム８０に送信した場合には、コンテンツデータ及び乱数データを通信対象データに決定する。したがって、ユーザ端末６０は、コンテンツシェアリングシステム８０に重複してデータが送信されることを防止することができる。さらに、コンテンツシェアリングシステム８０は、ＣＤデータとコンテンツデータとを容易に関連付けることができる。
【０２４５】
さらに、ユーザ端末６０は、通信対象データの内容、即ち通信状態に関する状態データを通信対象データに含めるので、コンテンツシェアリングシステム８０は、現時点の通信状態がどのようになっているのかを容易に判定することができる。
【０２４６】
さらに、タイムスタンプ取得エンジン８４は、他のサーバと独立して処理を実行するので、リソースが変動しても、タイムスタンプ取得時刻のばらつきを低減することができる。
【０２４７】
また、タイムスタンプ取得エンジン８４は、ＡＣＩＤデータの生成とタイムスタンプ要求とを別のステップで行うので、タイムスタンプの取得や検証に失敗しても、ＡＣＩＤデータの再生成を行う必要がなくなる。
【０２４８】
さらに、コンテンツデータ、タイムスタンプタグデータ、及びＡＣＩＤデータは、これらのデータを管理する情報（図２０及び図２１に示す各管理テーブル）を記憶するデータベースサーバ８３とは別のストレージサーバ８２に記憶される。したがって、ストレージサーバ８２へのアクセス負担が低減される。
【０２４９】
さらに、各管理テーブルがデータベースサーバ８３に記憶されるので、ストレージサーバ８２の分散化が容易となる。
【０２５０】
さらに、ユーザ端末６０または検証サーバがＣＰデータに対して検証処理を行うので、仮にコンテンツシェアリングシステム８０が停止しても、検証処理を行なうことができる。
【０２５１】
さらに、コンテンツ情報管理テーブルに、タイムスタンプＩＤが記録されているので、コンテンツシェアリングシステム８０は、効率よくタイムスタンプタグデータを検索することができる。また、ＣＰデータを構成するデータは各管理テーブル及びストレージサーバ８２に記憶されているので、コンテンツデータシェアリングシステムは、ＣＰデータをストレージサーバ８２等に記憶する必要がない。
【０２５２】
以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示はかかる例に限定されない。本開示の属する技術の分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
【０２５３】
例えば、上記第１の実施形態では、コンテンツシェアリングサーバ１０とタイムスタンプ付与サーバ２０とが別々に存在するが、コンテンツシェアリングサーバ１０にタイムスタンプ付与サーバ２０の機能を持たせてもよい。逆にタイムスタンプ付与サーバ２０にコンテンツシェアリングサーバ１０の機能を持たせてもよい。
【０２５４】
また、上記第１の実施形態では、検証処理が要求データ生成部１３５からの要求に応じて行われることとしたが、ユーザ４１からの要求に応じて検証処理が行われてもよい。すなわち、コンテンツやタイムスタンプを含むＣＰデータをダウンロードしたユーザが、タイムスタンプの正当性を確認したい場合に、コンテンツシェアリングサーバ１０、もしくは、検証部１４の機能だけを持つ別の検証サーバに対してＣＰデータを送信し、タイムスタンプの正当性の検査を依頼してもよい。この場合。依頼を受けたコンテンツシェアリングサーバ１０もしくは検証サーバは、ユーザが提示したＣＰデータについて、図１２に示す処理と同様の処理によって判定する。
【０２５５】
また、検証部１４、すなわちコンテンツシェアリングサーバ１０、もしくは検証サーバが検証処理を行うこととしたが、各ユーザ端末４０にて行ってもよい。この場合、検証に必要な各関数は予め公開される。また、各ユーザ端末４０は、ＣＰデータを受信した場合に、このＣＰデータが正しいか否かを、図１２に示す処理と同様の処理によって判定する。
【０２５６】
また、コンテンツシェアリングサーバ１０は、コンテンツデータの生成者に対し、その生成者がアップロードしたすべてのコンテンツデータを出力することとしたが、タイムスタンプタグデータが付与されたコンテンツデータのみ出力するようにしてもよい。これにより、コンテンツシェアリングサーバ１０の処理負担が低減される。
【０２５７】
また、コンテンツシェアリングサーバ１０は、第三者のユーザ端末４０に対しては、タイムスタンプが付与されたコンテンツデータを出力するが、コンテンツデータの生成者が閲覧を許可したユーザ４１のユーザ端末４０には、すべてのコンテンツデータを出力するようにしてもよい。
【０２５８】
また、コンテンツデータ管理テーブルは、複数であってもよい。例えば、コンテンツシェアリングサーバ１０は、ユーザ４１毎にコンテンツデータ管理テーブルを用意してもよい。コンテンツデータ管理テーブルは、データそのものではなく、記憶部１２が記憶するデータへのリンクを記録してもよい。
【０２５９】
また、第１の実施形態では、ユーザ端末４０とコンテンツシェアリングサーバ１０とがネットワーク５０で接続されているものとしたが、ホームネットワークによって接続されていても良く、直接接続されていてもよい。
【０２６０】
また、第１の実施形態の構成と第２の実施形態の構成とは任意に組み合わせられることができる。例えば、第１の実施形態のユーザ端末４０を、第２の実施形態のユーザ端末６０またはコンテンツ生成装置７０に置き換えてもよい。この場合、コンテンツシェアリングサーバ１０は、コンテンツシェアリングシステム８０と同様の処理を行えば良いので、例えば、ＣＤデータの生成を行う必要がなくなる。
【０２６１】
また、第２の実施形態で行われた個人情報データを削除する処理は、第１の実施形態の各ユーザ端末４０にて行われてもよい。
【０２６２】
また、第２の実施形態で行われた不正検出処理は、第１の実施形態のコンテンツシェアリングサーバ１０にて行われてもよい。
【０２６３】
また、第１の実施形態のコンテンツシェアリングサーバ１０を第２の実施形態のコンテンツシェアリングシステム８０で置き換えてもよい。この場合、ユーザ端末４０からは、コンテンツデータが送信されることとなるので、コンテンツシェアリングシステム８０は、図２６に示す処理において、ステップＳ６９０〜Ｓ７１０の処理を行えば良い。
【０２６４】
なお、以下のような構成も本開示の技術的範囲に属する。
（１）
ユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求部と、
前記タイムスタンプが付与された前記コンテンツデータを、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力部と、を備える、情報処理装置。
（２）
前記タイムスタンプ要求部は、複数の前記コンテンツデータを集約したデータに対するタイムスタンプを前記タイムスタンプ付与部に要求する、前記（１）記載の情報処理装置。
（３）
前記タイムスタンプ要求部は、前記ユーザ装置から出力されたコンテンツデータ及び当該コンテンツデータを出力した前記ユーザ装置のユーザを表す識別データに対するタイムスタンプを前記タイムスタンプ付与部に要求する、前記（１）または（２）記載の情報処理装置。
（４）
前記コンテンツデータ出力部は、前記タイムスタンプが付与された前記コンテンツデータの他、前記タイムスタンプが付与されていない前記コンテンツデータを、前記コンテンツデータを出力したユーザの保有する装置に出力する、前記（１）〜（３）のいずれか１項に記載の情報処理装置。
（５）
前記タイムスタンプ要求部は、前記タイムスタンプを前記タイムスタンプ付与部に要求した後、前記タイムスタンプ付与部から前記タイムスタンプが与えられた場合に、新たな前記タイムスタンプを前記タイムスタンプ付与部に要求する、前記（１）〜（４）のいずれか１項に記載の情報処理装置。
（６）
前記タイムスタンプ要求部は、前記ユーザ装置から前記コンテンツデータが出力される毎に、前記タイムスタンプを前記タイムスタンプ付与部に要求することを特徴とする、前記（１）〜（４）のいずれか１項に記載の情報処理装置。
（７）
前記コンテンツデータ出力部は、前記コンテンツデータに付与されたタイムスタンプをさらに前記他のユーザ装置に出力する、前記（１）〜（６）のいずれか１項に記載の情報処理装置。
（８）
前記コンテンツデータ出力部は、前記他のユーザ装置から前記タイムスタンプを要求された場合に、前記コンテンツデータに付与されたタイムスタンプを、前記他のユーザ装置に出力する、前記（７）記載の情報処理装置。
（９）
前記タイムスタンプ要求部は、前記コンテンツデータを出力したユーザ装置から前記タイムスタンプの付与を要求された場合に、前記タイムスタンプ付与部に前記タイムスタンプを要求する、前記（１）〜（４）のいずれか１項に記載の情報処理装置。
（１０）
複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するステップと、
前記コンテンツデータに前記タイムスタンプが付与された場合に、前記コンテンツデータを、前記複数のユーザ装置のうち、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するステップと、を含む、情報処理方法。
（１１）
コンピュータに、
複数のユーザ装置のうち、いずれかのユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求機能と、
前記コンテンツデータに前記タイムスタンプが付与された場合に、前記コンテンツデータを、前記複数のユーザ装置のうち、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力機能と、を実現させる、プログラム。
（１２）
複数のユーザ装置と、情報処理装置とを備える情報処理システムであって、
前記情報処理装置は、
複数の前記ユーザ装置のうち、いずれかの前記ユーザ装置から出力されたコンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求するタイムスタンプ要求部と、
前記タイムスタンプが付与された前記コンテンツデータを、前記コンテンツデータを出力したユーザ装置以外の他のユーザ装置に出力するコンテンツデータ出力部と、を備える、情報処理システム。
（１３）
前記ユーザ装置のユーザからの要求に応じて、前記コンテンツデータに付与された前記タイムスタンプが正しいかを検証する検証装置を備える、前記（１２）記載の情報処理システム。
（１４）
前記ユーザ装置は、前記コンテンツデータに付与された前記タイムスタンプが正しいかを検証する検証部を有する、前記（１２）または（１３）記載の情報処理システム。
（１５）
コンテンツデータを取得するコンテンツ取得部と、
コンテンツ要約データを生成するコンテンツ要約データ生成部と、
前記コンテンツ要約データを他の情報処理装置に送信する通信部と、を備える、情報処理装置。
（１６）
前記通信部と前記他の情報処理装置との間の通信帯域に基づいて、前記コンテンツデータ及び前記コンテンツ要約データのうち少なくとも一方を通信対象データに決定する通信対象データ決定部を備え、
前記通信部は、前記通信対象データを前記他の情報処理装置に送信する、前記（１５）記載の情報処理装置。
（１７）
前記通信対象データ決定部は、前記通信帯域に基づいて、前記コンテンツデータ及び前記コンテンツ要約データのうち少なくとも一方を第１の通信対象データに決定し、前記コンテンツ要約データを前記第１の通信対象データに決定した場合には、前記通信部が前記コンテンツ要約データを前記他の情報処理装置に送信した後、前記通信帯域に基づいて、前記コンテンツデータを第２の通信対象データとするか否かを決定する、前記（１６）記載の情報処理装置。
（１８）
前記通信対象データ決定部は、前記コンテンツ要約データを前記第１の通信対象データとした場合には、前記コンテンツデータ及び前記コンテンツ要約データを関連付けるための関連付け用データを前記第１の通信対象データに含める、前記（１７）記載の情報処理装置。
（１９）
前記通信対象データ決定部は、前記コンテンツデータを第２の通信対象データとする場合には、前記関連付け用データを前記第２の通信対象データに含める、前記（１８）記載の情報処理装置。
（２０）
前記通信対象データ決定部は、前記通信対象データの内容に関する状態データを前記通信対象データに付与する、前記（１６）〜（１９）のいずれか１項に記載の情報処理装置。
（２１）
前記コンテンツデータの生成が可能なコンテンツ生成装置の接続を検知する接続検知部を備え、
前記コンテンツ取得部は、前記接続検知部が前記コンテンツ生成装置の接続を検知した際に、前記コンテンツ生成装置から前記コンテンツデータを取得し、
前記コンテンツ要約データ生成部は、前記コンテンツ生成装置が前記コンテンツ要約データを生成していない場合に、前記コンテンツ要約データを生成する、前記（１５）記載の情報処理装置。
（２２）
前記コンテンツ生成装置が前記他の情報処理装置に送信したデータに基づいて、前記コンテンツデータ及び前記コンテンツ要約データのうち少なくとも一方を通信対象データに決定する通信対象データ決定部を備え、
前記通信部は、前記通信対象データを前記他の情報処理装置に送信する、前記（２１）記載の情報処理装置。
（２３）
前記コンテンツ生成装置は、前記コンテンツ要約データと、前記コンテンツデータ及び前記コンテンツ要約データを関連付けるための関連付け用データとを前記他の情報処理装置に送信可能であり、
前記通信対象データ決定部は、前記コンテンツ生成装置が前記コンテンツ要約データ及び前記関連付け用データを前記他の情報処理装置に送信した場合に、前記コンテンツデータ及び前記関連付け用データを前記通信対象データに決定する、前記（２２）記載の情報処理装置。
（２４）
前記通信対象データ決定部は、前記通信対象データの内容に関する状態データを前記通信対象データに付与する、前記（２２）または（２３）記載の情報処理装置。
（２５）
コンテンツデータを取得することと、
コンテンツ要約データを生成することと、
前記コンテンツ要約データを他の情報処理装置に送信することと、を含む、情報処理方法。
（２６）
コンピュータに、
コンテンツデータを取得するコンテンツ取得機能と、
コンテンツ要約データを生成するコンテンツ要約データ生成機能と、
前記コンテンツ要約データを他の情報処理装置に送信する通信機能と、を実現させる、プログラム。
（２７）
ユーザ装置から出力されたコンテンツデータを受領する第１の情報処理装置と、
前記コンテンツデータに対するタイムスタンプをタイムスタンプ付与部に要求する第２の情報処理装置と、
前記コンテンツデータと、前記コンテンツデータに付与されたタイムスタンプとを記憶する第３の情報処理装置と、
前記コンテンツデータを識別するためのコンテンツ識別データと、前記コンテンツデータの前記第３の情報処理装置内での所在を示すコンテンツパスデータと、前記タイムスタンプの前記第３の情報処理装置内での所在を示すタイムスタンプパスデータと、を関連付けて記憶する第４の情報処理装置と、を備える情報処理システム。
【符号の説明】
【０２６５】
１０  コンテンツシェアリングサーバ
２０  タイムスタンプ付与サーバ
３０  タイムスタンプオーソリティ
４０  ユーザ端末
４１  ユーザ
５０  ネットワーク
１２  記憶部
１３  データ生成部
１４  検証部
１００  情報処理システム
１３１  コンテンツ要約データ生成部
１３２  コンテンツ情報データ生成部
１３３  コンテンツ情報要約データ生成部
１３４  集約化コンテンツ情報要約データ生成部
１３５  要求データ生成部
１３６  コンテンツパッケージデータ生成部
２００  情報処理システム
６０    ユーザ端末
７０    コンテンツ生成装置
８０    コンテンツシェアリングシステム
６３    接続検知部
６６１、７６１  コンテンツ取得部
６６２、７６２  コンテンツ要約データ生成部
６６３、７６３  通信対象データ決定部
６６４  検証部
８１    ウェブサーバ
８２    ストレージサーバ
８３    データベースサーバ
８４    タイムスタンプ取得エンジン
【図１】
2012170047.tif 000003
【図２】
2012170047.tif 000004
【図３】
2012170047.tif 000005
【図４】
2012170047.tif 000006
【図５】
2012170047.tif 000007
【図６】
2012170047.tif 000008
【図７】
2012170047.tif 000009
【図８】
2012170047.tif 000010
【図９】
2012170047.tif 000011
【図１０】
2012170047.tif 000012
【図１１】
2012170047.tif 000013
【図１２】
2012170047.tif 000014
【図１３】
2012170047.tif 000015
【図１４】
2012170047.tif 000016
【図１５】
2012170047.tif 000017
【図１６】
2012170047.tif 000018
【図１７】
2012170047.tif 000019
【図１８】
2012170047.tif 000020
【図１９】
2012170047.tif 000021
【図２０】
2012170047.tif 000022
【図２１】
2012170047.tif 000023
【図２２】
2012170047.tif 000024
【図２３】
2012170047.tif 000025
【図２４】
2012170047.tif 000026
【図２５】
2012170047.tif 000027
【図２６】
2012170047.tif 000028
【図２７】
2012170047.tif 000029
【図２８】
2012170047.tif 000030
【図２９】
2012170047.tif 000031
【図３０】
2012170047.tif 000032
【図３１】
2012170047.tif 000033