(57)【要約】【課題】  暗号化してバックアップされたデータの復元が不正に行われるのを防ぎつつ、サーバ装置に対する依存度を抑えてその復元を行う端末装置を提供する。【解決手段】  端末装置３００は、自らが属するドメインに共通のドメイン鍵を保持するドメイン鍵格納部３１１と、そのドメインで共用されるデータを複製することによりバックアップデータを生成するバックアップ処理部３０３と、ドメイン鍵格納部３１１に保持されているドメイン鍵を用い、バックアップデータを暗号化して暗号化バックアップデータを生成する暗号・復号部３０６とを備え、バックアップ処理部３０３は暗号化バックアップデータをネットワークストレージ２００に格納する。【選択図】      図２
2004259262.tif 000002
【特許請求の範囲】
【請求項１】
端末装置群たる第１のドメインに属する端末装置であって、
前記第１のドメインに共通の第１のドメイン鍵を保持する鍵保持手段と、
前記第１のドメインで共用されるデータを複製することにより複製データを生成する複製手段と、
前記鍵保持手段に保持されている第１のドメイン鍵を用い、前記複製データを暗号化して暗号化複製データを生成する暗号化手段と、
前記暗号化複製データを記憶媒体に格納するデータ格納手段と
を備えることを特徴とする端末装置。
【請求項２】
前記端末装置は、さらに、
前記鍵保持手段に保持されている第１のドメイン鍵を用い、前記記憶媒体に格納されている暗号化複製データを復号化して前記複製データに復元する復号化手段を備える
ことを特徴とする請求項１記載の端末装置。
【請求項３】
前記端末装置は、さらに、前記第１のドメインと異なる第２のドメインに属しており、
前記鍵保持手段は、さらに、前記第２のドメインに共通の第２のドメイン鍵を保持し、
前記複製手段は、前記第１又は第２のドメインで共用されるデータを複製することにより、前記第１又は第２のドメインに対応する前記複製データを生成し、
前記暗号化手段は、前記複製データが第１のドメインに対応するものであれば、前記第１のドメイン鍵を用いて前記複製データを暗号化し、前記複製データが第２のドメインに対応するものであれば、前記第２のドメイン鍵を用いて前記複製データを暗号化することにより前記暗号化複製データを生成し、
前記復号化手段は、前記記憶媒体に格納されている暗号化複製データを復号化するときには、前記暗号化複製データの暗号化に用いられた前記第１又は第２のドメイン鍵を用いる
ことを特徴とする請求項２記載の端末装置。
【請求項４】
前記データ格納手段は、前記暗号化手段によって生成された前記暗号化複製データを記憶媒体に格納するときには、前記暗号化複製データの暗号化に用いられた第１又は第２のドメイン鍵を識別するための識別子を、前記暗号化復号データに付して前記記憶媒体に格納し、
前記復号化手段は、前記記憶媒体に格納されている暗号化複製データを復号化するときには、前記暗号化複製データに付された識別子に基いて、前記暗号化複製データの暗号化に用いられた第１又は第２のドメイン鍵を特定し、特定した第１又は第２のドメイン鍵を用いて前記暗号化複製データの復号化を行う
ことを特徴とする請求項３記載の端末装置。
【請求項５】
前記複製手段は、複製した複製データの内容に応じて、前記複製データの一部を削除し、
前記暗号化手段は、前記削除された残りの複製データを暗号化して前記暗号化複製データを生成する
ことを特徴とする請求項４記載の端末装置。
【請求項６】
前記第１及び第２のドメインのそれぞれで共用されるデータは、デジタル著作物であるコンテンツを利用するために必要なコンテンツ鍵と前記利用の条件とを示し、
前記複製手段は、前記データに対する複製データのうち、コンテンツ鍵を示す部分を削除する
ことを特徴とする請求項５記載の端末装置。
【請求項７】
前記端末装置は、さらに、
外部装置と通信回線を介した通信を行うことにより、前記復号化手段により復号化されたデータに対して、前記複製手段により削除された部分を前記外部装置に補完させる補完手段を備える
ことを特徴とする請求項６記載の端末装置。
【請求項８】
前記復号化手段は、通信回線を介して接続されたサーバ装置から、前記暗号化複製データの復号化に対して許可を受けている場合に、前記暗号化複製データの復号化を行う
ことを特徴とする請求項２記載の端末装置。
【請求項９】
前記復号化手段は、前記暗号化複製データを復号化するときには、前記サーバ装置に復号化が可能か否かを問合せ、可能であるとの応答を受けた場合に、前記暗号化複製データの復号化を行う
ことを特徴とする請求項８記載の端末装置。
【請求項１０】
前記端末装置は、さらに、
前記復号化手段により復元された複製データの内容をユーザに参照させる参照手段を備える
ことを特徴とする請求項２記載の端末装置。
【請求項１１】
前記データ格納手段は、前記暗号化複製データの取り扱いに関する内容を示す付加情報を、当該暗号化複製データに付して前記記憶媒体に格納する
ことを特徴とする請求項２記載の端末装置。
【請求項１２】
前記暗号化手段は、データ内容の開示が認められて改変が禁止される複製データに対しては、デジタル署名により前記暗号化複製データを生成する
ことを特徴とする請求項２記載の端末装置。
【請求項１３】
前記端末装置は、さらに、
前記第１及び第２のドメイン鍵を配信する鍵サーバ装置と通信回線を介して通信する通信手段を備え、
前記鍵保持手段は、前記鍵サーバ装置から前記通信手段を介して前記第１及び第２のドメイン鍵を取得して保持する
ことを特徴とする請求項２記載の端末装置。
【請求項１４】
前記鍵保持手段は、
前記通信手段を介して前記鍵サーバ装置に前記第１及び第２のドメイン鍵を要求することにより、前記第１及び第２のドメイン鍵を取得して保持する
ことを特徴とする請求項１３記載の端末装置。
【請求項１５】
前記第１及び第２のドメイン鍵のうち少なくとも１つは、共通鍵暗号化方式の暗号鍵である
ことを特徴とする請求項１４記載の端末装置。
【請求項１６】
端末装置群たる第１のドメイン、及び前記各端末装置と通信するサーバ装置を備えて、前記ドメインが共用するデータを保護するデータ保護システムであって、
前記サーバ装置は、前記第１のドメインに属する各端末装置に対して共通の第１のドメイン鍵を配信し、
前記第１のドメインに属する端末装置は、
前記第１のドメイン鍵を前記サーバ装置から取得して保持する鍵保持手段と、
前記第１のドメインで共用されるデータを複製することにより複製データを生成する複製手段と、
前記鍵保持手段に保持されている前記第１のドメイン鍵を用い、前記複製データを暗号化して暗号化複製データを生成する暗号化手段と、
前記暗号化複製データを記憶媒体に格納するデータ格納手段とを備える
ことを特徴とするデータ保護システム。
【請求項１７】
前記第１のドメインに属する端末装置は、さらに、
前記鍵保持手段に保持されている第１のドメイン鍵を用い、前記記憶媒体に格納されている暗号化複製データを復号化して前記複製データに復元する復号化手段を備える
ことを特徴とする請求項１６記載のデータ保護システム。
【請求項１８】
前記サーバ装置は、さらに、前記第１のドメインと異なる第２のドメインに属する各端末装置に対して共通の第２のドメイン鍵を配信しており、
前記第１のドメインに属する端末装置は、さらに、前記第２のドメインに属し、
前記鍵保持手段は、さらに、前記第２のドメイン鍵を前記サーバ装置から取得して保持し、
前記複製手段は、前記第１又は第２のドメインで共用されるデータを複製することにより、前記第１又は第２のドメインに対応する前記複製データを生成し、
前記暗号化手段は、前記複製データが第１のドメインに対応するものであれば、前記第１のドメイン鍵を用いて前記複製データを暗号化し、前記複製データが第２のドメインに対応するものであれば、前記第２のドメイン鍵を用いて前記複製データを暗号化することにより前記暗号化複製データを生成し、
前記復号化手段は、前記記憶媒体に格納されている暗号化複製データを復号化するときには、前記暗号化複製データの暗号化に用いられた前記第１又は第２のドメイン鍵を用いる
ことを特徴とする請求項１７記載のデータ保護システム。
【請求項１９】
前記複製手段は、複製した複製データの内容に応じて、前記複製データの一部を削除し、
前記暗号化手段は、前記削除された残りの複製データを暗号化して前記暗号化複製データを生成する
ことを特徴とする請求項１８記載のデータ保護システム。
【請求項２０】
前記第１及び第２のドメインのそれぞれで共用されるデータは、デジタル著作物であるコンテンツを利用するために必要なコンテンツ鍵と前記利用の条件とを示し、
前記複製手段は、前記データに対する複製データのうち、コンテンツ鍵を示す部分を削除する
ことを特徴とする請求項１９記載のデータ保護システム。
【請求項２１】
前記データ保護システムは、さらに、
前記第１のドメインに属する端末装置と通信することにより、前記復号化手段により復号化されたデータに対して、前記複製手段により削除された部分を補完する補完サーバ装置を備える
ことを特徴とする請求項２０記載のデータ保護システム。
【請求項２２】
前記復号化手段は、前記サーバ装置から前記暗号化複製データの復号化に対して許可を受けている場合に、前記暗号化複製データの復号化を行う
ことを特徴とする請求項１８記載のデータ保護システム。
【請求項２３】
前記復号化手段は、前記暗号化複製データを復号化するときには、前記サーバ装置に復号化が可能か否かを問合せ、前記サーバ装置から可能であるとの応答を受けた場合に、前記暗号化複製データの復号化を行う
ことを特徴とする請求項２２記載のデータ保護システム。
【請求項２４】
端末装置群たる第１のドメインに属する端末装置が前記第１のドメインで共用されるデータを保護する方法であって、
前記第１のドメインに共通の第１のドメイン鍵を取得する鍵取得ステップと、
前記第１のドメインで共用されるデータを複製することにより複製データを生成する複製ステップと、
前記鍵取得ステップで取得された前記第１のドメイン鍵を用い、前記複製データを暗号化して暗号化複製データを生成する暗号化ステップと、
前記暗号化複製データを記憶媒体に格納するデータ格納ステップと
を含むことを特徴とするデータ保護方法。
【請求項２５】
前記端末装置は、さらに、第１のドメインと異なる第２のドメインに属しており、
前記鍵取得ステップでは、さらに、前記第２のドメインに共通の第２のドメイン鍵を取得し、
前記複製ステップでは、前記第１又は第２のドメインで共用されるデータを複製することにより、前記第１又は第２のドメインに対応する前記複製データを生成し、
前記暗号化ステップでは、前記複製データが第１のドメインに対応するものであれば、前記第１のドメイン鍵を用いて前記複製データを暗号化し、前記複製データが第２のドメインに対応するものであれば、前記第２のドメイン鍵を用いて前記複製データを暗号化することにより前記暗号化複製データを生成する
ことを特徴とする請求項２４記載のデータ保護方法。
【請求項２６】
前記データ格納ステップでは、前記暗号化複製データの暗号化に用いられた第１又は第２のドメイン鍵を識別するための識別子を、前記暗号化複製データに付して前記記憶媒体に格納する
ことを特徴とする請求項２５記載のデータ保護方法。
【請求項２７】
端末装置群たるドメインに属する端末装置が前記ドメインで共用されるデータを保護するためのプログラムであって、
前記ドメインに共通のドメイン鍵を取得する鍵取得ステップと、
前記データを複製することにより複製データを生成する複製ステップと、
前記鍵取得ステップで取得されたドメイン鍵を用い、前記複製データを暗号化して暗号化複製データを生成する暗号化ステップと、
前記暗号化複製データを記憶媒体に格納するデータ格納ステップと
をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを保護する端末装置及びデータ保護システムに関し、特にバックアップによりデータを保護する端末装置及びデータ保護システムに関する。
【背景技術】
【０００２】
近年、音楽、映像、ゲーム等のデジタルコンテンツ（以下、コンテンツと記述）や、そのコンテンツを利用するための権利、といった価値あるデータを、インターネット等の通信やデジタル放送等を通じて、サーバ装置から端末装置に配信する、データ配信システムが実用化段階に入っている。
一般に、データ配信システムでは、会員登録をする、あるいは対価を払うなどにより、サーバ装置から端末装置にユーザにとって有益なデータが配信され、端末装置が保持するＨＤＤなどの記憶媒体に格納される。
【０００３】
しかし、端末装置の記憶媒体は、クラッシュなどにより、ユーザの落ち度なしにデータが破損、あるいは消失することが起こりうる。対価を支払って取得したデータはユーザの資産であり、ユーザの資産保護という立場から、端末装置が保持するデータの保護の必要性が増してきている。データ保護の一手法としては、端末装置が保持するデータをバックアップし、バックアップしたデータを用いてデータを復元するという手法が広く知られている。
【０００４】
また、データ配信者の権利保護の観点、および、端末装置所有者のプライバシー保護の観点から、第３者へのデータの復元は許可しない仕組みが必要となってきている。例えば、従来のデータ保護システムでは、端末装置は、バックアップ対象のデータを複製するとともに、自ら生成した端末装置固有の鍵を用いてその複製されたデータを暗号化する（例えば、特開２０００−１２４８９０号公報参照。）。さらにその端末装置は、その暗号化によって生成された暗号化バックアップデータと、暗号化に用いた鍵をサーバ装置の公開鍵で暗号化した暗号化バックアップ鍵とを共に外部記憶媒体に格納する。そしてデータ復元時には、端末装置は、暗号化バックアップデータと、暗号化バックアップ鍵とを外部記憶媒体から取得してサーバ装置に送信する。サーバ装置は、暗号化バックアップ鍵の復号処理及び暗号化バックアップデータの復号処理を行い、その処理によって復元されたデータを端末装置に送信する。即ち、上記従来のデータ保護システムでは、上述の第３者へのデータの復元を許可しない仕組みを構築するため、端末装置の鍵はサーバ装置の公開鍵を用いて暗号化されることとし、暗号化バックアップデータの復元処理にはサーバ装置の許可を要することとしている。つまり、サーバ装置が、処理を依頼してきた端末装置を認証し、正当な端末装置であればその依頼を引き受けることで、不正な復元を防いで上述の権利保護及びプライバシー保護が図られている。
【特許文献１】特開２０００−１２４８９０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
しかしながら、従来のデータ保護システムでは、次のような問題点がある。端末装置が暗号化バックアップデータの復元処理、あるいは暗号化バックアップデータの内容の参照を行う際、必ずサーバ装置に処理を依頼しなければならない。
したがって、数多くの端末装置が同時に復元処理に伴う処理をサーバ装置に依頼した場合、サーバ装置の負荷が大きくなり、処理ができない、あるいは処理時間が長くなりすぎるという問題点がある。また、ネットワークに無用な負荷をかけることになる。
【０００６】
次に、サーバ装置とオフライン環境にある端末装置では暗号化バックアップデータの復元処理ができないという問題点がある。すなわち、従来、サーバ装置とオフライン環境にある端末装置で復元処理を行う方法が知られていなかった。
本発明は、かかる問題に鑑みてなされたものであり、暗号化してバックアップされたデータの復元が不正に行われるのを防ぎつつ、サーバ装置に対する依存度を抑えてその復元を行う端末装置を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記目的を達成するために、本発明の端末装置は、端末装置群たる第１のドメインに属する端末装置であって、前記第１のドメインに共通の第１のドメイン鍵を保持する鍵保持手段と、前記第１のドメインで共用されるデータを複製することにより複製データを生成する複製手段と、前記鍵保持手段に保持されている第１のドメイン鍵を用い、前記複製データを暗号化して暗号化複製データを生成する暗号化手段と、前記暗号化複製データを記憶媒体に格納するデータ格納手段とを備えることを特徴とする。好ましくは、前記端末装置は、さらに、前記鍵保持手段に保持されている第１のドメイン鍵を用い、前記記憶媒体に格納されている暗号化複製データを復号化して前記複製データに復元する復号化手段を備える。
【０００８】
これによって、端末装置はデータを複製して第１のドメイン鍵を用いて暗号化し、その結果を暗号化複製データとして記憶媒体に格納するため、その記憶媒体に格納された暗号化複製データが、端末装置の第１のドメインに属さない装置によって不正に復元されるのを防ぐことができる。さらに、端末装置は暗号化複製データを復元するきには、暗号化に利用したドメイン鍵でその暗号化複製データを復号してこれを復元することができ、従来例のようにサーバ装置に頼ることなく復元を行うことができる。つまり、端末装置はオフライン環境であってもその復元を行うことができ、サーバ装置に対する処理負担やネットワーク上の通信負担を軽減することができる。
【０００９】
また、前記端末装置は、さらに、前記第１のドメインと異なる第２のドメインに属しており、前記鍵保持手段は、さらに、前記第２のドメインに共通の第２のドメイン鍵を保持し、前記複製手段は、前記第１又は第２のドメインで共用されるデータを複製することにより、前記第１又は第２のドメインに対応する前記複製データを生成し、前記暗号化手段は、前記複製データが第１のドメインに対応するものであれば、前記第１のドメイン鍵を用いて前記複製データを暗号化し、前記複製データが第２のドメインに対応するものであれば、前記第２のドメイン鍵を用いて前記複製データを暗号化することにより前記暗号化複製データを生成し、前記復号化手段は、前記記憶媒体に格納されている暗号化複製データを復号化するときには、前記暗号化複製データの暗号化に用いられた前記第１又は第２のドメイン鍵を用いることを特徴としても良い。
【００１０】
好適には、前記データ格納手段は、前記暗号化手段によって生成された前記暗号化複製データを記憶媒体に格納するときには、前記暗号化複製データの暗号化に用いられた第１又は第２のドメイン鍵を識別するための識別子を、前記暗号化復号データに付して前記記憶媒体に格納し、前記復号化手段は、前記記憶媒体に格納されている暗号化複製データを復号化するときには、前記暗号化複製データに付された識別子に基いて、前記暗号化複製データの暗号化に用いられた第１又は第２のドメイン鍵を特定し、特定した第１又は第２のドメイン鍵を用いて前記暗号化複製データの復号化を行う。
【００１１】
これにより、端末装置が第１及び第２のドメインに属していても、第１のドメインに共用されるデータは第１のドメイン鍵で暗号化され、第２のドメインに共用されるデータは第２のドメイン鍵で暗号化されるため、例えば第１のドメインにのみ属する他の端末装置によって、第２のドメインに共用されるデータの暗号化複製データが復元されるのを防ぐことができる。
【００１２】
また、前記複製手段は、複製した複製データの内容に応じて、前記複製データの一部を削除し、前記暗号化手段は、前記削除された残りの複製データを暗号化して前記暗号化複製データを生成することを特徴としても良い。例えば、前記第１及び第２のドメインのそれぞれで共用されるデータは、デジタル著作物であるコンテンツを利用するために必要なコンテンツ鍵と前記利用の条件とを示し、前記複製手段は、前記データに対する複製データのうち、コンテンツ鍵を示す部分を削除する。
【００１３】
これにより、複製データのうち例えばコンテンツ鍵の部分が削除されて、利用条件の部分のみがバックアップされるため、重要なデータであるコンテンツ鍵の不正な復元を確実に防ぐことができる。
ここで、前記端末装置は、さらに、外部装置と通信回線を介した通信を行うことにより、前記復号化手段により復号化されたデータに対して、前記複製手段により削除された部分を前記外部装置に補完させる補完手段を備えることを特徴としても良い。
【００１４】
これにより、例えば、復号化手段により復号化された利用条件にコンテンツ鍵が補完されるため、重要なデータの不正な復元を確実に防ぎつつ、暗号化複製データを削除前の元の複製データに復元することができる。
また、前記復号化手段は、通信回線を介して接続されたサーバ装置から、前記暗号化複製データの復号化に対して許可を受けている場合に、前記暗号化複製データの復号化を行うことを特徴としても良い。例えば、前記復号化手段は、前記暗号化複製データを復号化するときには、前記サーバ装置に復号化が可能か否かを問合せ、可能であるとの応答を受けた場合に、前記暗号化複製データの復号化を行う。
【００１５】
これにより、復号化手段が暗号化複製データを復号化するときには、サーバ装置の許可を要するため、不正なデータの復元を確実に防ぐことができる。
なお、本発明は、上記端末装置を備えるデータ保護システムや、データ保護方法、プログラムとしても実現することもできる。
【発明の効果】
【００１６】
本発明の端末装置は、端末装置のドメインに属さない装置によって暗号化複製データが不正に復元されるのを防ぐことができるとともに、従来例のようにサーバ装置に頼ることなく復元を行うことができるという作用効果を奏する。
【発明を実施するための最良の形態】
【００１７】
（実施の形態１）
以下、本発明における実施の形態１について、図面を用いて詳細に説明する。
図１は、本発明における実施の形態１のデータ保護システムＳの全体の概略構成を示す図である。
このデータ保護システムＳは、端末装置が保持するデータが破損、および消失した際に、可能な範囲でデータを保護するシステムであって、ドメイン管理を行うドメイン管理サーバ１００と、暗号化バックアップデータを格納するネットワークストレージ２００と、バックアップ対象となるデータを保持する端末装置３００ａ〜３００ｃと、これらを相互に接続する伝送路Ｎと、から構成されている。
【００１８】
ここで詳細の説明に先立ち、本発明におけるドメインの定義を行う。あるデータ配信サービスにおいて、データの共有や移動が相互に可能な端末装置が存在する場合に、それらの端末装置群は論理的にグルーピングが可能である。そしてグルーピングした端末装置群の属する単位をドメインと定義する。また、異なるドメインに属する端末装置間でのデータの移動や共有は許可しないこととする。
【００１９】
一般に、データ配信サービスを提供する事業者のデータの権利保護の観点と、ユーザのプライバシー保護の観点と、からドメインを設定する単位が決定されるが、データ配信サービスの契約者としてのユーザごとにドメインを設定するのが典型例である。
なお、ドメインの設定において、１つの端末装置のみが属するドメインを形成するとしてもよいし、１つの端末装置が２つ以上のドメインに属するとしてもよい。
【００２０】
ドメイン管理サーバ１００は、ドメインに属する端末装置３００ａ〜３００ｃの管理、および、ドメインごとに設定されるドメイン鍵を生成、管理し、端末装置３００ａ〜３００ｃにドメイン鍵を送信するサーバ装置である。具体的には、ドメイン管理サーバ１００は、ドメイン、およびドメイン鍵を管理しており、端末装置３００ａ〜３００ｃからの要求に基づき、伝送路Ｎを通じて、ドメイン鍵をその端末装置３００ａ〜３００ｃに送信する。また、このようなドメイン管理サーバ１００はワークステーション等により実現される。
【００２１】
ここで、ドメイン鍵とは同一ドメインに属する端末装置が共有する共通鍵暗号方式の暗号鍵であり、データのバックアップ時の暗号化、あるいはデータ復元時の復号化の際に使用される。なお、ドメイン鍵は同一ドメイン内で許可されるデータ共有や、移動、あるいは認証などの処理に用いるとしてもよい。
なお、ドメイン鍵等のセキュアに管理する必要のあるデータを、伝送路Ｎを通じて、ドメイン管理サーバ１００と端末装置３００ａ〜３００ｃとの間で送受信する場合には、セキュリティを確保するため、安全な認証チャネル（Ｓｅｃｕｒｅ  Ａｕｔｈｅｎｔｉｃａｔｅｄ  Ｃｈａｎｎｅｌ、以下、ＳＡＣと記述）を確立してから、データの送受信を行う。ＳＡＣの確立には、例えばＳＳＬ（Ｓｅｃｕｒｅ  Ｓｏｃｋｅｔ  Ｌａｙｅｒ）やＴＬＳ（Ｔｒａｎｓｐｏｒｔ  Ｌａｙｅｒ  Ｓｅｃｕｒｉｔｙ）を利用することができる。
【００２２】
ネットワークストレージ２００は、伝送路Ｎを通じて端末装置３００ａ〜３００ｃより受信した暗号化バックアップデータの格納や、端末装置３００ａ〜３００ｃの要求に応じて暗号化バックアップデータを端末装置３００ａ〜３００ｃに送信する。また、このようなネットワークストレージ２００は、ワークステーション等により実現される。
具体的には、ネットワークストレージ２００は、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）などの記憶媒体を備え、その記憶媒体は、テープによるデータのバックアップや、ＲＡＩＤ（Ｒｅｄｕｎｄａｎｔ  Ａｒｒａｙ  ｏｆ  Ｉｎｄｅｐｅｎｄｅｎｔ  Ｄｉｓｋｓ）などにより、クラッシュ耐性に優れたものとして構成される。
【００２３】
伝送路Ｎは、ドメイン管理サーバ１００とネットワークストレージ２００および端末装置３００ａ〜３００ｃとを相互に接続するネットワークである。例えば、伝送路Ｎは、インターネット等の通信ネットワークや、デジタル放送、あるいは、これらが複合したネットワークである。
端末装置３００ａ〜３００ｃは、伝送路Ｎと接続する機能を有し、ユーザがコンテンツ等のデータをモニター画面などで利用したり、ドメインごとのデータを保持し、データのバックアップや、データの復元を行う装置である。具体的には、端末装置３００ａ〜３００ｃは、デジタル放送を受信するためのＳＴＢ（Ｓｅｔ  Ｔｏｐ  Ｂｏｘ）、デジタルＴＶ、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｃ）レコーダ、ＨＤＤ（Ｈａｒｄ  Ｄｉｓｋ  Ｄｒｉｖｅ）レコーダ、ＰＣ（Ｐｅｒｓｏｎａｌ  Ｃｏｍｐｕｔｅｒ）などのコンテンツ表示装置、その他のレコーダ、あるいは、これらの複合機器である。
【００２４】
このようなデータ保護システムＳにおいて、本実施の形態では、端末装置３００ａ〜３００ｃがデータのバックアップを行い、データを復元するまでの処理の流れについて図面を用いて詳細に説明する。
ここで、ドメイン識別子とは、データ保護システムＳにおいてドメインを一意に特定するための情報である。また、端末識別子とは、データ保護システムＳにおいて端末装置を一意に特定するための情報である。なお、本実施の形態では端末装置３００ａの端末識別子は「ＴＥＲＭＩＮＡＬ−ＩＤ−０００１」として説明する。また、端末識別子は端末装置３００ａ〜３００ｃのそれぞれのＲＯＭに記憶されているとして以降の説明を行う。
【００２５】
図２は、図１に示されるドメイン管理サーバ１００、ネットワークストレージ２００、および端末装置３００ａ〜３００ｃの詳細な構成を示す機能ブロック図である。なお、図２において端末装置３００ａ〜３００ｃの機能構成は、端末装置３００ａをその代表とし、端末装置３００として図示している。
まず、ドメイン管理サーバ１００の詳細な構成について説明する。ドメイン管理サーバ１００は、ドメイン情報を格納するドメイン情報格納部１１１と、ドメイン鍵を格納するドメイン鍵格納部１１２と、端末装置３００と通信を行う通信部１０１と、ドメイン情報格納部１１１にドメイン情報の登録を行うドメイン情報登録部１０２と、端末装置３００が属するドメインを判定するドメイン判定部１０３と、ドメイン鍵格納部１１２からドメイン鍵を取得するドメイン鍵取得部１０４と、ドメイン鍵の生成を行うドメイン鍵生成部１０５とを備える。
【００２６】
次に、ネットワークストレージ２００の詳細な構成について説明を行う。ネットワークストレージ２００は、データを格納するデータ格納部２１１と、端末装置３００と通信を行う通信部２０１と、データのデータ格納部２１１への登録と、通信部２０１を介したデータの取得と、データ格納部２１１からのデータの取得とを行うデータ取得・格納部２０２とを備えている。
【００２７】
最後に、端末装置３００の詳細な構成について説明を行う。端末装置３００は、ドメイン管理サーバ１００から取得したドメイン鍵を格納するドメイン鍵格納部３１１と、端末装置３００が保持するデータをドメインごとに格納するデータ格納部３１２と、ドメイン管理サーバ１００およびネットワークストレージ２００と通信を行う通信部３０１と、ドメイン鍵要求メッセージを生成し、ドメイン管理サーバ１００にドメイン鍵の取得要求を行うドメイン鍵要求部３０２と、バックアップデータを生成し、バックアップデータが暗号化された暗号化バックアップデータをネットワークストレージ２００に送信するバックアップ処理部３０３と、ネットワークストレージ２００から暗号化バックアップデータを取得し、暗号化バックアップデータの復元を行うデータ復元部３０４と、ネットワークストレージ２００から暗号化バックアップデータを取得し、バックアップデータの内容をユーザに提示するバックアップデータ参照部３０５と、バックアップデータの暗号及び暗号化バックアップデータの復号を行う暗号・復号部３０６とを備えている。
【００２８】
このようなドメイン管理サーバ１００及びネットワークストレージ２００並びに端末装置３００を構成する例えばドメイン鍵格納部３１１などのデータを格納する各構成要素（格納部）は、ＨＤＤ等の記憶媒体で実現される。また、ドメイン管理サーバ１００及びネットワークストレージ２００並びに端末装置３００を構成する上記各格納部以外の構成要素（例えばドメイン鍵要求部３０２など）は、ＬＳＩ等のハードウェアあるいはＣＰＵ、ＲＡＭ、ＲＯＭ等を利用して実行されるプログラム等によって実現される。なお、端末装置３００において各構成要素は、ハード的あるいはソフト的に耐タンパされていることが望ましい。
【００２９】
ここで、本実施の形態で扱うデータ、およびデータ構造について説明する。まず、各格納部が保持するデータのデータ構造を、ドメイン管理サーバ１００、ネットワークストレージ２００、端末装置３００の順で説明し、最後に本実施の形態においてバックアップ対象のデータの一例を説明し、さらにバックアップ対象のデータの一例であるライセンス、およびそのライセンスのデータ構造について説明する。
【００３０】
（ドメイン管理サーバ１００の各格納部が保持するデータ）
まず、ドメイン管理サーバ１００の各格納部が保持するデータについて図を参照して説明する。
図３は、ドメイン管理サーバ１００のドメイン情報格納部１１１が保持するドメイン管理テーブルのデータ構造を示す図である。
【００３１】
ドメイン情報格納部１１１は、ドメインに関する情報を管理するためのドメイン管理テーブルＤ３００を保持するデータベースであって、このドメイン管理テーブルＤ３００はドメインと、前記ドメインに属する端末装置３００とを関連付ける。具体的には、ドメイン情報格納部１１１は、図３に示すドメイン管理テーブルＤ３００を有し、ドメイン識別子Ｄ３０１と、端末識別子Ｄ３０２とを管理している。
【００３２】
例えば、図３に示すドメイン管理テーブルＤ３００は、ドメイン識別子Ｄ３０１が「ＤＯＭＡＩＮ−ＩＤ−０００１」であるドメインに、端末識別子Ｄ３０２が「ＴＥＲＭＩＮＡＬ−ＩＤ−０００１」である端末装置３００ａが属していることを示している。
また、このドメイン管理テーブルＤ３００は、ドメイン識別子Ｄ３０１が「ＤＯＭＡＩＮ−ＩＤ−０００２」であるドメインに、端末識別子Ｄ３０２が「ＴＥＲＭＩＮＡＬ−ＩＤ−１００１」、「ＴＥＲＭＩＮＡＬ−ＩＤ−１００２」という２つの端末装置３００が属していることを示している。
【００３３】
また、このドメイン管理テーブルＤ３００は、「ＤＯＭＡＩＮ−ＩＤ−０００３」のドメインには、端末識別子Ｄ３０２が「ＴＥＲＭＩＮＡＬ−ＩＤ−０００１」、「ＴＥＲＭＩＮＡＬ−ＩＤ−３３３３」という２つの端末装置３００が属していることを示しており、端末識別子Ｄ３０２が「ＴＥＲＭＩＮＡＬ−ＩＤ−０００１」の端末装置３００ａは、ドメイン識別子Ｄ３０１が「ＤＯＭＡＩＮ−ＩＤ−０００１」のドメインと、ドメイン識別子Ｄ３０１が「ＤＯＭＡＩＮ−ＩＤ−０００３」のドメインとに属していることを示している。
【００３４】
図４は、ドメイン鍵格納部１１２が保持するドメイン鍵管理テーブルのデータ構造を示す図である。
ドメイン鍵格納部１１２は、バックアップデータの暗号処理、および暗号化バックアップデータの復号処理に用いるドメイン鍵を管理するためのドメイン鍵管理テーブルＤ４００を保持するデータベースである。このドメイン鍵管理テーブルＤ４００は、端末装置３００からのドメイン鍵取得要求に対してドメイン鍵が送信される際に、ドメイン鍵取得要求に含まれる端末識別子に対応するドメインのドメイン鍵を取得するために用いられる。具体的には、ドメイン鍵格納部１１２は、図４に示すドメイン鍵管理テーブルＤ４００を有し、ドメイン識別子Ｄ４０１と、ドメイン鍵Ｄ４０２とを管理している。
【００３５】
例えば、図４に示すドメイン鍵管理テーブルＤ４００は、ドメイン識別子Ｄ４０１が「ＤＯＭＡＩＮ−ＩＤ−０００１」であるドメインに属する端末装置３００に用いられるドメイン鍵が「ＤＯＭＡＩＮ−ＫＥＹ−０００１」であることを示している。
なお、ドメイン情報格納部１１１、およびドメイン鍵格納部１１２へのデータ登録は、端末装置３００を所有するユーザが、伝送路Ｎを通じて、データ配信サービスを運営する事業者のＷｅｂサイト（ドメイン管理サーバ１００）に接続し、ドメイン登録画面により、オンラインで行われる。なお、そのデータ登録は登録用の葉書を用いる等、オフラインで行ってもよい。
【００３６】
ドメイン新規登録処理では、まず前記事業者が、ユーザに対してドメイン識別子Ｄ３０１を割り当て、割り当てたドメイン識別子Ｄ３０１に対応するドメイン鍵をドメイン鍵生成部１０５が生成する。ドメイン鍵生成部１０５は、ドメイン識別子Ｄ４０１とドメイン鍵Ｄ４０２とを関連付けて、ドメイン鍵格納部１１２のドメイン鍵管理テーブルＤ４００に登録する。
【００３７】
その後、端末装置３００は、端末識別子Ｄ３０２をオンラインまたはオフラインにより前記事業者（ドメイン管理サーバ１００）に通知するので、ドメイン管理サーバ１００のドメイン情報登録部１０２は、ドメイン識別子Ｄ３０１と端末識別子Ｄ３０２とを関連付け、ドメイン情報格納部１１１のドメイン管理テーブルＤ３００に登録する。以上のようなドメイン新規登録処理が行われる結果、ドメイン情報格納部１１１のドメイン管理テーブルＤ３００が構築される。
【００３８】
ドメインへの端末装置３００を追加する処理は、同様にユーザ（端末装置３００）が前記事業者のＷｅｂサイト（ドメイン管理サーバ１００）に接続し、端末装置追加画面により、ドメインのドメイン識別子と、追加対象となる端末装置３００の端末識別子を送信する。これにより、ドメイン情報登録部１０２は、ドメイン情報格納部１１１のドメイン管理テーブルＤ３００のドメイン識別子Ｄ３０１に対応する端末識別子Ｄ３０２に、上述のように送信された端末識別子を追加することにより実現する。
【００３９】
（ネットワークストレージ２００の格納部が保持するデータ）
次に、ネットワークストレージ２００の格納部が保持するデータについて図を参照して説明する。
図５の（ａ）は、ネットワークストレージ２００のデータ格納部２１１が保持するデータ管理テーブルのデータ構造を示す図である。
【００４０】
データ格納部２１１は、暗号化バックアップデータを管理するためのデータベースであって、端末装置３００からのバックアップ要求に対して、受信した暗号化バックアップデータを格納し、バックアップデータ取得要求に含まれるドメイン識別子に対応した暗号化バックアップデータを送信するために用いられる。
具体的には、データ格納部２１１は、図５の（ａ）に示すデータ管理テーブルＤ５００を保持し、そのデータ管理テーブルＤ５００はドメイン識別子Ｄ５０１と格納データＤ５０２とを関連付けている。
【００４１】
例えば、図５の（ａ）に示すデータ管理テーブルＤ５００は、ドメイン識別子Ｄ５０１が「ＤＯＭＡＩＮ−ＩＤ−０００１」であるドメインにおける暗号化バックアップデータとして、「ＤＡＴＡ−０００１」の格納データＤ５０２が格納されていることを示している。
【００４２】
（端末装置３００の格納部が保持するデータ）
端末装置３００のドメイン鍵格納部３１１は、バックアップデータの暗号処理、および復号処理に用いるドメイン鍵を管理するためのデータベースであって、ドメイン管理サーバ１００より取得したドメイン鍵を格納するために用いられる。具体的に、ドメイン鍵格納部３１１は、ドメイン鍵格納部１１２が保持するドメイン管理テーブルＤ４００と同様のテーブルを保持する。
【００４３】
図５の（ｂ）は、端末装置３００のデータ格納部３１２が保持するデータ管理テーブルのデータ構造を示す図である。
データ格納部３１２は、端末装置３００が保持するデータをドメインごとに管理するためのデータベースであって、図５の（ｂ）に示すデータ管理テーブルＤ５１０を保持する。そしてこのデータ管理テーブルＤ５１０は、ドメイン識別子Ｄ５１１と、データ識別子Ｄ５１２と、格納データＤ５１３とを関連付けている。
【００４４】
ここで、データ識別子Ｄ５１１とは、ドメイン識別子Ｄ５１１との組み合わせにより、データを一意に特定することが可能な情報である。例えば、図５の（ｂ）に示すデータ管理テーブルＤ５１０は、ドメイン識別子Ｄ５１１が「ＤＯＭＡＩＮ−ＩＤ−０００１」でデータ識別子Ｄ５１２が「ＤＡＴＡ−ＩＤ−０００１」に対応する格納データＤ５１３として「ＤＡＴＡ−０００１」が格納されていることを示している。
【００４５】
ここで、端末装置３００が２つ以上のドメインに属する場合の、データ格納部３１２におけるデータ管理方法について説明する。先のドメインの定義によれば、端末装置３００に保持するデータはドメインごとに分離して管理する必要がある。なぜなら、端末装置３００ａが２つのドメインαとβに、端末装置３００ｂがドメインαに、端末装置３００ｃがドメインβに属している場合に、ドメインごとにデータを分離して管理しないと、端末装置３００ｂが保持するデータが端末装置３００ａを介して、端末装置３００ｃに移動することが可能となる。これは異なるドメインに属する端末装置間でのデータ移動を許可しないドメインの定義に矛盾するためである。
【００４６】
なお、データ格納部３１２へのデータ登録は、伝送路Ｎを通じてサーバ装置から取得したり、パッケージメディアから取得するなど考えられるが、本発明の本質ではないため説明を省略する。
但し、データの格納はドメインごとに行う必要があり、データがデータ格納部３１２に格納される際、そのデータは少なくともいずれか１つのドメインに属するデータとして格納されなければならない。なお、データがどのドメインに属するかは、端末装置３００がデータを要求するデータ要求時、データ配信側のデータ配信時、端末装置３００がデータを取得するデータ取得時など、どのタイミングで決定してもよい。以上の理由から、端末装置３００は、データをドメインごとに管理し、データのバックアップ処理、および、データの復元処理もドメインごとに行う。
【００４７】
最後に本実施の形態において、データ格納部３１２に保持され、バックアップの対象となるデータの一例であるライセンスと、そのライセンスのデータ構造について説明する。
ライセンスは、データ配信システムの代表例であるコンテンツ配信システムで用いられるデータの１つである。ここで、コンテンツ配信システムについて簡単に説明する。
コンテンツ配信システムとは、コンテンツを、インターネット等の通信やデジタル放送等を通じて、サーバ装置から端末装置に配信し、端末装置においてコンテンツを利用することが可能となるシステムであり、コンテンツの著作権を保護し、悪意あるユーザ等によるコンテンツの不正利用を防止するため、著作権保護技術が用いられる。
【００４８】
著作権保護技術とは、具体的には、暗号技術等を用いて、ユーザがコンテンツを再生したり、記録メディアにコピーしたりといったようなコンテンツの利用を、セキュアに制御する技術である。例えば、サーバ装置が、端末装置において利用可能なコンテンツの再生回数などの利用条件と、暗号化コンテンツの復号を行うためのコンテンツ鍵とを含むライセンスを生成し、端末装置に配信し、端末装置は前記ライセンスのコンテンツ鍵で、別途取得した暗号化コンテンツを復号し、利用条件に基づいてコンテンツの利用を制御するシステムがある。
【００４９】
一般に、コンテンツ鍵、およびライセンスはコンテンツ単位で付与され、コンテンツ識別子と関連付けられる。ここで、コンテンツ識別子とは、コンテンツ配信システムにおいて、コンテンツを一意に特定するための情報である。本実施の形態では、ライセンスはコンテンツ単位で付与されるものとして説明する。
以上で、コンテンツ配信システム、およびライセンスについて説明した。
【００５０】
次に、ライセンスのデータ構造について図６を参照して説明する。
図６は、ライセンスのデータ構造を示す図である。
ライセンス６００は、コンテンツの利用可能な情報からなる利用条件６０１と、ライセンス６００に対応する暗号化コンテンツの復号を行うためのコンテンツ鍵６０２とからなる。ここで、利用条件６０１とは、ライセンス６００に対応するコンテンツの利用可能な回数、例えば「１０回」や、利用可能な期間、例えば「２００２年１２月１日〜２００３年２月１３日」などである。
【００５１】
なお、ライセンス６００は、データ格納部３１２およびライセンス６００に関する処理において、コンテンツ識別子と関連付ける必要がある。例えば、端末装置３００におけるライセンス６００とコンテンツ識別子を関連付けるといった処理を省略するため、予めライセンス６００にコンテンツ識別子を含めるとしてもよい。
以上で、ライセンスのデータ構造について説明した。
【００５２】
ここで、端末装置３００が、データ格納部３１２に保持するデータの種別について説明する。端末装置３００が保持するデータには、ユーザがデータの内容を参照して意味のあるデータと、ユーザがデータ内容を意識する必要がない、あるいは参照できてはならないデータがある。前者は、少なくともユーザに提示可能な可読情報であり、前記ライセンスの例では利用条件がこれにあたる。後者は、主に制御などに用いられる情報であり、前記ライセンスの例ではコンテンツ鍵がこれにあたる。コンテンツ鍵はユーザが参照できてはならないデータの典型例である。
【００５３】
以上で、本実施の形態１で扱うデータのデータ構造について説明した。
ここで、データ保護システムＳにおいて、データ保護に必要となる処理について説明する。
まず、データを保護するために端末装置３００が保持するデータのバックアップ処理、および、バックアップしたデータに基づくデータ復元処理が必要である。また、本発明においてバックアップ処理およびデータ復元処理時にはドメイン鍵を予め取得しておく必要がある。また、バックアップしたデータのデータ内容を参照する処理が必要となる場合も想定される。例えば、保護対象のデータがライセンスの場合、バックアップしているライセンスの利用条件を、ユーザに提示する場合が想定される。
【００５４】
以上の構成のデータ保護システムＳにおいて、端末装置３００がドメイン管理サーバ１００よりドメイン鍵を取得する際の処理、端末装置３００がデータのバックアップを行う際の処理、端末装置３００がバックアップしたデータの内容参照を行う際の処理、端末装置３００が暗号化バックアップデータの復元を行う際の処理、の順番で図を参照して説明する。
【００５５】
各処理の説明に先立ち、本実施の形態１で扱う通信メッセージについて説明する。
図７は、ドメイン管理サーバ１００およびネットワークストレージ２００と端末装置３００との間の通信において送受信される通信メッセージのメッセージフォーマットの内容を示す図である。この図７に示す通信メッセージＭ７００は、メッセージヘッダＭ７０１とメッセージ本体Ｍ７０２とからなる。
【００５６】
ここで、メッセージヘッダＭ７０１は、少なくとも送信先を特定するための情報と、送信元を特定するための情報とを含んでいる。その送信先を特定するための情報は、メッセージの宛先として参照され、その送信元を特定するための情報は、メッセージに対して返信する際に宛先として参照される。前記送信元、あるいは送信先を特定するための情報の典型例としてＩＰアドレスがある。また、メッセージヘッダＭ７０１に、認証処理に必要となる情報を含めても良い。この場合、通信メッセージＭ７００の送受信を行うデータ管理サーバ１００及びネットワークストレージ２００並びに端末装置３００の間で認証処理を行うことができる。
一方、メッセージ本体Ｍ７０２は各々の通信メッセージＭ７００で固有の情報を含む。
【００５７】
（ドメイン鍵取得処理）
まず、上述のドメイン鍵取得処理について説明する。
ドメイン鍵取得処理に関係する通信メッセージＭ７００のデータ構造について図８および図９を参照して説明する。
【００５８】
図８は、端末装置３００がドメイン管理サーバ１００にドメイン鍵を要求するときにドメイン管理サーバ１００に対して送信される通信メッセージＭ７００のメッセージ本体Ｍ７０２の構成を示す図である。
この図８に示すように、メッセージ本体Ｍ７０２は、ドメイン鍵要求メッセージ本体Ｍ８００として構成され、そのドメイン鍵要求メッセージ本体Ｍ８００は端末識別子Ｍ８０１からなる。
【００５９】
図９は、ドメイン管理サーバ１００が端末装置３００にドメイン鍵を受け渡すときにドメイン管理サーバ１００から送信される通信メッセージＭ７００のメッセージ本体Ｍ７０２の構成を示す図である。
この図９に示すように、メッセージ本体Ｍ７０２は、ドメイン鍵送信メッセージ本体Ｍ９００として構成され、そのドメイン鍵送信メッセージ本体Ｍ９００はドメイン識別子Ｍ９０１とドメイン鍵Ｍ９０２とからなる。
【００６０】
以上で、ドメイン鍵取得処理に関係する通信メッセージＭ７００のデータ構造について説明した。次に、端末装置３００が、ドメイン管理サーバ１００からドメイン鍵を取得するまでの各部の処理について図１０を参照して説明する。
【００６１】
図１０は、ドメイン鍵取得処理を示すフロー図である。
端末装置３００は、ユーザの端末アプリケーションへのドメイン鍵取得指示により、ドメイン鍵取得処理を開始する。即ち、ドメイン鍵取得指示を受けた端末アプリケーションは、ドメイン鍵要求部３０２にドメイン鍵取得指示を行う。
【００６２】
ドメイン鍵要求部３０２は、メッセージ本体Ｍ７０２としてドメイン鍵要求メッセージ本体Ｍ８００を含む通信メッセージＭ７００（ドメイン鍵要求メッセージ）を生成し、通信部３０１を通じてドメイン管理サーバ１００に送信する（ステップＳ１９３１）。ドメイン鍵要求メッセージ本体Ｍ８００に含まれる端末識別子Ｍ８０１は、端末装置３００のＲＯＭから取得された端末識別子である。ここでは「ＴＥＲＭＩＮＡＬ−ＩＤ−０００１」が端末識別子Ｍ８０１として含まれる。
【００６３】
ドメイン管理サーバ１００は、通信部１０１を通じて前記ドメイン鍵要求メッセージを受信する（ステップＳ１９１１）。ドメイン判定部１０３は、ドメイン鍵要求メッセージ本体Ｍ８００から端末識別子Ｍ８０１を抽出し、ドメイン情報格納部１１１のドメイン管理テーブルＤ３００から端末識別子Ｍ８０１を検索し、端末装置３００がドメインに登録されているか否かを確認する（ステップＳ１９１２）。
【００６４】
検索の結果、端末識別子Ｍ８０１が存在しない場合は、ドメインに属していない旨をメッセージ本体Ｍ７０２に含む通信メッセージＭ７００（返信メッセージ）を端末装置３００に送信する。端末装置３００は、その返信メッセージを受信する（ステップＳ１９３２）と、ユーザにその旨を提示して処理を終了する。
検索の結果、端末識別子Ｍ８０１が存在する場合は、ドメイン判定部１０３は、端末装置３００が属するドメインのドメイン識別子Ｄ３０１を特定して取得する（ステップＳ１９１３）。
【００６５】
また、端末装置３００が複数のドメインに属する場合は、上述の検索により複数のドメイン識別子がヒットする。この場合は、各々のドメイン識別子ごとに以降の処理（ステップＳ１９１３からの処理）を行う。なお、ドメイン鍵とドメイン識別子の組のリストをメッセージ本体Ｍ７０２に含む通信メッセージＭ７００（ドメイン鍵送信メッセージ）を送信するとしてもよいし、端末装置３００にヒットした複数のドメイン識別子をメッセージ本体Ｍ７０２に含む通信メッセージＭ７００（返信メッセージ）を送信し、ユーザに１つのドメイン識別子を選択させ、以降の処理（ステップＳ１９１３からの処理）を行うとしてもよい。
【００６６】
ドメイン鍵取得部１０４は、ドメイン鍵格納部１１２のドメイン鍵管理テーブルＤ４００にあるドメイン識別子Ｄ４０１から、ステップＳ１９１３で取得されたドメイン識別子を検索し、そのドメイン識別子に対応するドメインのドメイン鍵Ｄ４０２を特定して取得する（ステップＳ１９１４）。
ドメイン鍵取得部１０４は、ステップＳ１９１３で取得されたドメイン識別子と、ステップＳ１９１４で取得されたドメイン鍵とをメッセージ本体Ｍ７０２に含める。そしてドメイン鍵取得部１０４は、そのメッセージ本体Ｍ７０２にメッセージヘッダＭ７０１をつけて通信メッセージＭ７００（ドメイン鍵送信メッセージ）を生成し、通信部１０１を通じて端末装置３００に送信する（ステップＳ１９１５）。
【００６７】
端末装置３００は、通信部３０１を通じてそのドメイン鍵送信メッセージを受信すると（ステップＳ１９３３）、そのドメイン鍵送信メッセージに含まれるドメイン識別子およびドメイン鍵を抽出し、両者を関連付けてドメイン鍵格納部３１１に格納する（ステップＳ１９３４）。
なお、端末装置３００が複数のドメインに属する場合には、端末装置３００は、ユーザによって選択されたドメインに対応するドメイン鍵をドメイン管理サーバ１００から取得して、その取得したドメイン鍵を上述のドメインのドメイン識別子に関連付けてドメイン鍵格納部３１１に格納しても良い。この場合には、端末装置３００は、ユーザによって選択されたドメインのドメイン識別子をドメイン鍵要求メッセージに格納することで、そのドメイン識別子をドメイン管理サーバ１００に伝え、そのドメイン識別子を一時的に記憶しておく。そして、端末装置３００は、上述のように一時的に記憶していたドメイン識別子に、ドメイン管理サーバ１００から取得したドメイン鍵を関連付ける。
以上で、ユーザがドメイン鍵取得指示を行い、端末装置３００がドメイン管理サーバ１００よりドメイン鍵を取得するまでの処理について説明した。
【００６８】
（データのバックアップ処理）
次に、端末装置３００が、データのバックアップを行う際の処理について図を参照して説明する。まず、バックアップ時の処理に関係する通信メッセージＭ７００のメッセージ本体Ｍ７０２のデータ構造について図１１、および図１２を参照して説明する。
【００６９】
図１１は、端末装置３００がネットワークストレージ２００に暗号化バックアップデータの格納を要求するときに送信される通信メッセージＭ７００（バックアップ要求メッセージ）のメッセージ本体Ｍ７０２の構成を示す図である。
図１１に示すように、このメッセージ本体Ｍ７０２は、バックアップ要求メッセージ本体Ｍ１０００として構成され、このバックアップ要求メッセージ本体Ｍ１０００は、バックアップデータが暗号化された暗号化バックアップデータＭ１００１とドメイン識別子Ｍ１００２とからなる。
【００７０】
図１２は、端末装置３００からの要求に対してネットワークストレージ２００が端末装置３００に返信する通信メッセージＭ７００（バックアップ要求返信メッセージ）のメッセージ本体Ｍ７０２の構成を示す図である。
図１２に示すように、このメッセージ本体Ｍ７０２は、バックアップ要求返信メッセージ本体Ｍ１１００として構成され、このバックアップ要求返信メッセージ本体Ｍ１１００は、端末装置３００からの要求に対してネットワークストレージ２００で行われた処理の結果を示す処理結果Ｍ１１０１からなる。
【００７１】
以上で、バックアップ処理に関係する通信メッセージＭ７００のデータ構造について説明した。次に、端末装置３００が、自らが保持するデータをバックアップする処理、即ちバックアップ対象のデータを複製して暗号化してネットワークストレージ２００に格納するまでの処理について図１３を参照して説明する。
【００７２】
図１３は、バックアップ処理を示すフロー図である。
端末装置３００は、ユーザの端末アプリケーションへのバックアップ指示により、端末装置３００が保持するデータのバックアップ処理を開始する。即ち、ユーザからバックアップ指示を受けた端末アプリケーションは、バックアップ処理部３０３にバックアップ指示を行う。
ここで、ユーザは、端末装置３００が２つ以上のドメインに属する場合は、バックアップ対象となるデータが、どのドメインに対応するかを特定する情報を入力する。ここではドメイン識別子を入力するとして説明する。また、ドメインに対応するデータの一部のみをバックアップする場合は、さらにデータを限定する情報を入力する。以上のドメイン識別子、およびデータを限定する情報をまとめて、バックアップ対象データ限定情報とする。
【００７３】
まず、バックアップ処理部３０３は、バックアップ対象データ限定情報に基づき、データ格納部３１２に格納されているデータからバックアップ対象となるデータを特定して複製し、バックアップデータを生成する。（ステップＳ２０３１）。
バックアップ処理部３０３は、ドメイン鍵格納部３１１より、ドメイン鍵を取得する（ステップＳ２０３２）。
【００７４】
ここで、ドメイン鍵格納部３１１に２つ以上のドメイン鍵が存在する場合は、上述のドメイン識別子をキーとしてドメイン鍵を特定して取得する。なお、ドメイン鍵格納部３１１にドメイン鍵が１つしか存在しない場合も、バックアップ処理部３０３が上述のドメイン識別子による確認を行っても良い。また、ドメイン鍵がドメイン鍵格納部３１１に格納されていない場合には、端末装置３００は、先に説明したドメイン鍵取得の処理の流れに従いドメイン鍵を取得する。
【００７５】
バックアップ処理部３０３は、ステップＳ２０３１で生成したバックアップデータ、およびステップＳ２０３２で取得したドメイン鍵を暗号・復号部３０６に送信する。
暗号・復号部３０６は受信したバックアップデータをドメイン鍵を用いて暗号化し、暗号化バックアップデータを生成（ステップＳ２０３３）し、バックアップ処理部３０３に送信する。
【００７６】
バックアップ処理部３０３は、上述のバックアップ要求メッセージを生成し、通信部３０１を通じてネットワークストレージ２００に送信する（ステップＳ２０３４）。バックアップ要求メッセージ本体Ｍ１０００に含まれるドメイン識別子Ｍ１００２は、ステップＳ２０３２で取得されたドメイン鍵に対応するドメイン識別子である。
ネットワークストレージ２００は、通信部２０１を通じて上述のバックアップ要求メッセージを受信する（ステップＳ２０２１）。データ取得・格納部２０２は、バックアップ要求メッセージ本体Ｍ１０００からドメイン識別子Ｍ１００２を抽出し、データ格納部２１１のデータ管理テーブルＤ５００からドメイン識別子Ｍ１００２を検索し、そのドメイン識別子Ｍ１００２に対応するドメインの暗号化バックアップデータである格納データＤ５０２の存在の有無を確認する（ステップＳ２０２２）。ドメイン識別子Ｍ１００２に対応するドメインの暗号化バックアップデータが存在しない場合は、データ取得・格納部２０２は、新規のレコードを作成して暗号化バックアップデータＭ１００１を格納（ステップＳ２０２３）し、ドメイン識別子Ｍ１００２に対応するドメインの暗号化バックアップデータが存在する場合は、既存の暗号化バックアップデータのレコードに暗号化バックアップデータＭ１００１を上書き（ステップＳ２０２４）する。
【００７７】
データ取得・格納部２０２は、バックアップ処理が完了するとバックアップ処理完了を示す処理結果Ｍ１１０１を含むバックアップ要求返信メッセージを作成し、端末装置３００に送信する（ステップＳ２０２５）。また、何らかの原因でバックアップ処理が完了しなかった場合は、異常終了を示す処理結果Ｍ１１０１を含むバックアップ要求返信メッセージを端末装置３００に送信する。
【００７８】
端末装置３００は、そのバックアップ要求返信メッセージを受信し（ステップＳ２０３５）、例えば、その受信した処理結果Ｍ１１０１の内容をユーザに提示する。
〈バックアップ処理の変形例１：付加データ〉
ここで、端末装置３００は上述のようにバックアップデータを暗号化してネットワークストレージ２００に格納するときには、以下の処理をしても良い。
【００７９】
即ち、端末装置３００は、その暗号化されたバックアップデータに付加データを付加する。この付加データは、復元可否の制御に関わる情報を示すものであって、例えば、復元可能な期間を示す復元有効期限、バックアップされた時刻を示すバックアップ処理時刻、バックアップデータのデータバージョン、暗号化バックアップデータを参照するために用いられる参照専用データ、バックアップデータの暗号アルゴリズムを識別するための暗号アルゴリズム識別子、バックアップを行った端末装置３００の端末識別子、又はバックアップデータの出所であるデータ配信サーバを示すサーバ識別子などを示す。
【００８０】
付加データが復元有効期限を示す場合、端末装置３００は、例えば、データ配信サービスを運営する事業者のサーバからの指示に基き、その復元有効期限を示す付加データを生成して暗号化バックアップデータに付加する。ここで、バックアップデータに複数のライセンスが含まれる場合には、端末装置３００は、複数のライセンスの復元有効期限の中で最長または最短のものを示す付加データを生成しても良い。具体的に、復元有効期限が「２００３／２／１３まで有効」のライセンスと、「２００３／３／１４まで有効」のライセンスと、「２００３／３／２５まで有効」のライセンスとを端末装置３００がバックアップする場合、端末装置３００は、最短の復元有効期限「２００３／２／１３」を示す付加データを生成したり、最長の復元有効期限「２００３／３／２５」を示す付加データを生成したりする。
【００８１】
付加データがバックアップ処理時刻を示す場合、端末装置３００は、バックアップデータを暗号化して暗号化バックアップデータを生成した時刻を特定して、その時刻を上述のバックアップ処理時刻として付加データを生成し、その付加データを暗号化バックアップデータに付加する。
付加データがデータバージョンを示す場合、端末装置３００は、暗号化バックアップデータの生成回数をカウントして、そのカウント値をデータバージョンとして付加データを生成し、その付加データを暗号化バックアップデータに付加する。
【００８２】
付加データが参照専用データを示す場合、端末装置３００は、バックアップデータの例えば利用条件が平文で表された内容を上述の参照専用データとして付加データを生成し、その付加データを暗号化バックアップデータに付加する。
付加データが暗号アルゴリズム識別子を示す場合、端末装置３００は、暗号化バックアップデータを生成するために用いた例えばＡＥＳ（Ａｄｖａｎｃｅｄ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）やＴｒｉｐｌｅ  ＤＥＳ（Ｄａｔａ  Ｅｎｃｒｙｐｔｉｏｎ  Ｓｔａｎｄａｒｄ）等の共通鍵暗号アルゴリズムなどを示す識別子を上述の暗号アルゴリズム識別子として付加データを生成し、その付加データを暗号化バックアップデータに付加する。ここで、暗号アルゴリズムとしては、ＡＥＳやＴｒｉｐｌｅ  ＤＥＳ等の共通鍵暗号アルゴリズムが一般的である。なお、データ保護システムＳにおいて複数の暗号アルゴリズムをサポートする場合は、暗号化バックアップデータに、暗号化を行った暗号アルゴリズムの情報を付加する必要がある。
【００８３】
付加データが端末識別子を示す場合、端末装置３００は、自らが保持するＲＯＭに記憶されている端末識別子を読み出してその端末識別子を示す付加データを生成しその付加データを暗号化バックアップデータに付加する。
付加データがサーバ識別子を示す場合、端末装置３００は、バックアップデータの元のデータの出所となるサーバ、即ちそのデータを配信しているサーバから、そのデータとともにサーバ識別子（例えば、ＵＲＬ（uniform resource locator）や位置情報など）を予め取得しておく。そして、端末装置３００はそのデータから暗号化バックアップデータを生成したときには、そのサーバ識別子を示す付加データを生成してその暗号化バックアップデータに付加する。
【００８４】
なお、復元有効期限などを示す付加データは端末装置３００が生成するとして説明したが、ネットワークストレージ２００が、バックアップ時に生成しても良いし、バックアップデータ取得要求メッセージの受信時に生成しても良い。
また、図１３のステップＳ２０２４において、ドメイン識別子Ｍ１００２に対応する暗号化バックアップデータが存在する場合、上書きするとして説明したが、既存の暗号化バックアップデータに付加データとしてデータバージョン又はバックアップ処理時刻が付加されていれば、同様の付加データが付加された新たな暗号化バックアップデータＭ１００１を上書きすることなく追加的に格納しても良い。
〈バックアップ処理の変形例２：ドメインのデータをバックアップ〉
また、端末装置３００は、同一ドメインに属する他の端末装置３００が保持するデータを取得して、取得したデータに基づいて暗号化バックアップデータを生成する。
【００８５】
例えば、端末装置３００がデータＤＡ，ＤＢ，ＤＣを保持し、他の端末装置３００がデータＤＢ，ＤＣ，ＤＤを保持している場合には、端末装置３００は、他の端末装置３００からデータＤＢ，ＤＣ，ＤＤを取得して、データＤＡ，ＤＢ，ＤＣ，ＤＤの暗号化バックアップデータを生成する。又は、端末装置３００は、他の端末装置３００から取得したデータと自らが保持するデータとの重複するデータＤＢ，ＤＣの暗号化バックアップデータを生成する。
【００８６】
ここで、重複するデータのバックアップ処理について説明する。
バックアップの対象となるデータがライセンスの場合、「データが重複する」とは、それぞれのライセンスに対応するコンテンツ識別子が同一であることを意味する。そして、複数のライセンスが重複している、つまり複数のライセンスに対応するコンテンツ識別子が同一であるときには、端末装置２００は何れかのライセンスをバックアップデータとしても良い。
【００８７】
ここで、複数のライセンスが重複しているものの、その内容が異なっている場合、例えばそれらのライセンスに含まれる利用条件が異なっている場合には、端末装置３００は、所定の制御ルールに従い、何れかのライセンスをバックアップデータとして選択する。上述の所定の制御ルールは、例えば、（１）「利用条件においてユーザに有利なライセンスを選択すること」や、（２）「事業者に有利なライセンスを選択すること」などである。また、そのような制御ルールは、端末装置３００の出荷時にその端末装置３００に設定されたり、事業者のサーバからの送信により端末装置３００に設定されたりする。例えば、利用条件として再生可能回数「２回」のライセンスと、同じく利用条件として再生可能回数「５回」のライセンスとが重複し、端末装置３００に（１）の制御ルールが設定されている場合には、端末装置３００は再生可能回数「５回」のライセンスをバックアップデータとして選択する。また、端末装置３００に（２）の制御ルールが設定されている場合には、端末装置３００は再生可能回数「２回」のライセンスをバックアップデータとして選択する。
【００８８】
〈バックアップ処理の変形例３：複数のストレージに格納〉
また、端末装置３００は、生成した暗号化バックアップデータをそのデータ種別に応じて異なるネットワークストレージ２００に格納する。即ち、データ保護システムＳはセキュリティレベルが異なる複数のネットワークストレージ２００を備えており、端末装置３００は、そのバックアップデータであるライセンスを、利用条件とコンテンツ鍵とに分けて暗号化したときには、利用条件を示す暗号化バックアップデータを低セキュリティレベルのネットワークストレージ２００に格納し、コンテンツ鍵を示す暗号化バックアップデータを高セキュリティレベルのネットワークストレージ２００に格納する。また、端末装置３００は、データ種別に関わりなく、１つの暗号化バックアップデータを分割し、複数のネットワークストレージ２００に分散して格納しても良い。なお、このように暗号化バックアップデータが分散して格納された場合、分散されたデータのうち何れか１つでも取得することができなければ、元のバックアップデータに復元することができなくなる。
【００８９】
〈バックアップ処理の変形例４：複数ドメインに関連付け〉
端末装置３００は、自らが保持するデータが複数のドメインに関連付けられている場合には、そのデータをドメインの数だけ複製し、それぞれのバックアップデータを、各ドメインに対応するドメイン鍵で暗号化し、複数の暗号化バックアップデータを生成する。
【００９０】
又は、端末装置３００は、自らが保持するデータが複数のドメインに関連付けられている場合には、そのデータを１つだけ複製し、そのバックアップデータを、その複数のドメインのうちの何れか１つのドメインに対応するドメイン鍵で暗号化し、１つの暗号化バックアップデータを生成しても良い。このような場合、端末装置３００は、複数のドメインの中から、ユーザによる操作に応じたドメインを特定するか、ドメイン管理サーバ１００からの制御に基いてドメインを特定し、そのドメインに対応するドメイン鍵を上記暗号化に使用する。
【００９１】
〈バックアップ処理の変形例５：別々に暗号化〉
以上の説明では、バックアップデータであるライセンスの構成要素である利用条件とコンテンツ鍵を意識することなく、一緒に暗号化し、バックアップするとして説明したが、利用条件と、コンテンツ鍵とを別々に暗号化処理するとしてもよい。具体的には、利用条件はドメイン鍵で暗号化し、コンテンツ鍵は端末装置３００ごとに設定された共通鍵暗号方式の鍵で暗号化する、などである。この場合、利用条件の内容参照はドメイン内の端末装置３００であれば可能だが、コンテンツ鍵のデータ復元処理は、バックアップを行った端末装置３００でのみ可能となる。
【００９２】
また、利用条件をドメイン鍵で、コンテンツ鍵をドメイン管理サーバ１００の公開鍵で暗号化すると、利用条件の内容参照はドメイン内の端末装置３００であれば自由に行えるが、コンテンツ鍵のデータ復元処理は、ドメイン管理サーバ１００に復号処理を依頼する必要があり、重要なデータの復元の可、不可をドメイン管理サーバ１００が制御可能となる。
【００９３】
〈バックアップ処理の変形例６：署名〉
また、「コンテンツ鍵は、データ自体の保護が必要なため、暗号化する必要があるが、利用条件は、改ざんされなければよい」という運用も考えられる。その場合は、バックアップ処理時に、利用条件は暗号化ではなく、改ざん検出の一手法としての署名を行うとしてもよい。署名する鍵は、ドメインごとに設定される公開鍵暗号方式の秘密鍵、あるいは端末装置３００ごとに設定される公開鍵暗号方式の秘密鍵、あるいはドメイン管理サーバ１００に設定される公開鍵暗号方式の秘密鍵が想定される。
【００９４】
以上で、ユーザがバックアップ指示を行い、端末装置３００が、自らが保持するデータをネットワークストレージ２００にバックアップするまでの処理について説明した。次に、端末装置３００が、ネットワークストレージ２００にバックアップしているデータの内容参照を行う際の処理について図を参照して説明する。
【００９５】
（暗号化バックアップデータの内容参照を行う際の処理）
まず、内容参照時の処理に関係する通信メッセージＭ７００のメッセージ本体Ｍ７０２のデータ構造について図１４、および図１５を参照して説明する。
【００９６】
図１４は、端末装置３００がネットワークストレージ２００に格納されている暗号化バックアップデータを取得するために送信される通信メッセージＭ７００（バックアップデータ取得要求メッセージ）のメッセージ本体Ｍ７０２の構成を示す図である。
図１４に示すように、このメッセージ本体Ｍ７０２は、バックアップデータ取得要求メッセージ本体Ｍ１２００として構成され、そのバックアップデータ取得要求メッセージ本体Ｍ１２００はドメイン識別子Ｍ１２０１からなる。
【００９７】
図１５は、端末装置３００からの取得要求に対してネットワークストレージ２００が端末装置３００に返信する通信メッセージＭ７００（バックアップデータ送信メッセージ）のメッセージ本体Ｍ７０２の構成を示す図である。
図１５に示すように、このメッセージ本体Ｍ７０２は、バックアップデータ送信メッセージ本体Ｍ１３００として構成され、このバックアップデータ送信メッセージ本体Ｍ１３００は、暗号化バックアップデータＭ１３０１と、ドメイン識別子Ｍ１３０２とからなる。
【００９８】
以上で、内容参照処理に関係する通信メッセージＭ７００のデータ構造について説明した。
端末装置３００が、ネットワークストレージ２００に格納されている暗号化バックアップデータの内容を参照するまでの処理について図１６を参照して説明する。
【００９９】
図１６は、参照処理を示すフロー図である。
端末装置３００は、ユーザの端末アプリケーションへのバックアップデータ内容参照指示により、ネットワークストレージ２００に格納されている暗号化バックアップデータの内容の参照処理を開始する。即ち、ユーザから内容参照指示を受けた端末アプリケーションは、バックアップデータ参照部３０５に内容参照指示を行う。ここで、ユーザは、参照する暗号化バックアップデータに対応するドメイン識別子を入力する。
【０１００】
バックアップデータ参照部３０５は、上述のバックアップデータ取得要求メッセージを生成し、通信部３０１を通じてネットワークストレージ２００に送信する（ステップＳ２１３１）。
バックアップデータ取得要求メッセージ本体Ｍ１２００に含まれるドメイン識別子Ｍ１２０１は、内容参照の対象となる暗号化バックアップデータに対応するドメイン識別子である。
【０１０１】
ネットワークストレージ２００は、通信部２０１を通じてそのバックアップデータ取得要求メッセージを受信する（ステップＳ２１２１）。データ取得・格納部２０２は、バックアップデータ取得要求メッセージ本体Ｍ１２００からドメイン識別子Ｍ１２０１を抽出し、データ格納部２１１のデータ管理テーブルＤ５００からドメイン識別子Ｍ１２０１を検索する。さらにデータ取得・格納部２０２は、そのドメイン識別子Ｍ１２０１に対応するドメインの暗号化バックアップデータである格納データＤ５０２を特定し、これを取得する（ステップＳ２１２２）。ドメイン識別子Ｍ１２０１に対応するドメインの暗号化バックアップデータが存在しない場合は、データ取得・格納部２０２は、暗号化バックアップデータが存在しない旨をメッセージ本体Ｍ７０２に含む通信メッセージＭ７００（返信メッセージ）を端末装置３００に送信する。
【０１０２】
暗号化バックアップデータが存在するときには、データ取得・格納部２０２は、その暗号化バックアップデータである格納データＤ５０２とドメイン識別子Ｍ１２０１とを含むメッセージ本体Ｍ７０２に、メッセージヘッダＭ７０１をつけて通信メッセージＭ７００（バックアップデータ送信メッセージ）を生成し、通信部２０１を通じて端末装置３００に送信する（ステップＳ２１２３）。
【０１０３】
バックアップデータ参照部３０５は、通信部３０１を通じてそのバックアップデータ送信メッセージを受信する（ステップＳ２１３２）。
バックアップデータ参照部３０５は、そのバックアップデータ送信メッセージより、ドメイン識別子Ｍ１３０２を抽出し、ドメイン鍵格納部３１１においてドメイン識別子Ｍ１３０２をキーとしてドメイン鍵を特定し、これを取得する。なお、ネットワークストレージ２００は、バックアップデータ送信メッセージ本体Ｍ１３００にドメイン識別子Ｍ１３０２を含めなくても良い。この場合、端末装置３００は、バックアップデータ取得要求メッセージに含めたドメイン識別子Ｍ１２０１を一時的に記憶しておき、その記憶しておいたドメイン識別子１２０１に対応するドメイン鍵をドメイン鍵格納部３１１から特定してこれを取得する。
【０１０４】
また、ドメイン鍵がドメイン鍵格納部３１１に格納されていない場合は、端末装置３００は、先に説明したドメイン鍵取得の処理の流れに従いドメイン鍵を取得する。
バックアップデータ参照部３０５は、暗号化バックアップデータＭ１３０１とドメイン鍵とを暗号・復号部３０６に送信する。暗号・復号部３０６は、受信したその暗号化バックアップデータＭ１３０１の復号処理を行い（ステップＳ２１３３）、復号されたバックアップデータをバックアップデータ参照部３０５に送信する。バックアップデータ参照部３０５は、受信したバックアップデータの中でユーザが参照したいデータ内容をユーザに提示する（ステップＳ２１３４）。本実施の形態ではユーザが確認したい内容とはライセンスの利用条件である。なお、ユーザが参照したいデータを指定する情報を入力し、端末装置３００はその情報に従い、ユーザに提示するデータ内容を変えてもよい。
【０１０５】
〈参照処理の変形例〉
ここで、ネットワークストレージ２００に格納されている暗号化バックアップデータに上述の例えば復元有効期限を示す付加データが付加されている場合には、端末装置３００は、その付加データの内容を表示してユーザに知らしめる。
【０１０６】
また、ネットワークストレージ２００に格納されている暗号化バックアップデータに上述の参照専用データを示す付加データが付加されている場合には、端末装置３００は、その参照用データの内容を表示してユーザに知らしめる。暗号化バックアップデータがライセンスであって、その参照専用データが利用条件であれば、端末装置３００は利用条件の参照時に復号処理を必要としないため、処理を簡素化することができる。なお、この参照専用データは、参照用のみに利用され、復元処理には用いられない。また、暗号化バックアップデータが署名されている場合には、端末装置３００は、署名検証による改ざん検出を行い、改ざんされていない場合のみ、その暗号化バックアップデータの内容を表示してユーザに知らしめても良い。
【０１０７】
以上で、ユーザがバックアップデータ内容参照指示を行い、端末装置３００が、ネットワークストレージ２００より暗号化バックアップデータを取得し、その内容をユーザに提示するまでの処理について説明した。次に、端末装置３００が、ネットワークストレージ２００に格納している暗号化バックアップデータを復元する際の処理について図を参照して説明する。
【０１０８】
（暗号化バックアップデータの復元を行う際の処理）
データ復元時の処理に関係する通信メッセージのデータ構造は、上述の内容参照時に関する通信メッセージのデータ構造と同様である。
端末装置３００が、ネットワークストレージ２００に格納してある暗号化バックアップデータを復元するまでの処理について図１７を参照して説明する。
【０１０９】
図１７は、暗号化バックアップデータの復元処理を示すフロー図である。
端末装置３００は、ユーザの端末アプリケーションへのデータ復元指示により、ネットワークストレージ２００に格納されている暗号化バックアップデータの復元処理を開始する。即ち、ユーザからデータ復元指示を受けた端末アプリケーションは、データ復元部３０４にデータ復元指示を行う。ここで、ユーザは、復元の対象となる暗号化バックアップデータに対応するドメイン識別子を入力する。
【０１１０】
ここで、データ復元部３０４が、ネットワークストレージ２００に暗号化バックアップデータを要求し、復号するまでの処理（ステップＳ２２３１〜ステップＳ２２３３、およびステップＳ２２２１〜ステップＳ２２２３）は、上述のバックアップデータ参照時のバックアップデータ参照部３０５の処理（図１６のステップＳ２１３１〜ステップＳ２１３３、およびステップＳ２１２１〜ステップＳ２１２３）と同じであるため説明を省略する。
【０１１１】
データ復元部３０４は、復号したバックアップデータをドメイン識別子Ｍ１３０２と関連付けてデータ格納部３１２に格納する（ステップＳ２２３４）。そして、データ復元部３０４は、復号したバックアップデータをデータ格納部３１２に格納するときには、そのバックアップデータと同一のドメイン識別子に対応する元のデータを削除する。なお、復元処理を開始する前に予め元のデータを削除しておいても良い。また、データ復元部３０４は、復元処理によりデータが重複してしまう場合、その重複する元のデータのみを削除しても良い。例えば、端末装置３００が同の一ドメイン識別子に対応付けて保持する元のデータとして、コンテンツ識別子「ＣＯＮＴＥＮＴ−ＩＤ−９００１」のライセンスと、コンテンツ識別子「ＣＯＮＴＥＮＴ−ＩＤ−９００２」のライセンスとがあり、暗号化バックアップデータとしてコンテンツ識別子「ＣＯＮＴＥＮＴ−ＩＤ−９００１」のライセンスがある場合、データ復元部３０４は、その暗号化バックアップデータに対する復元処理を行うときには、元のデータであるコンテンツ識別子「ＣＯＮＴＥＮＴ−ＩＤ−９００１」のライセンスのみを削除し、コンテンツ識別子「ＣＯＮＴＥＮＴ−ＩＤ−９００２」のライセンスは削除しない。
〈復元処理の変形例１：付加データ〉
ここで、端末装置３００は上述のように暗号化バックアップデータを復元するときには、以下の処理をしても良い。
【０１１２】
即ち、端末装置３００は、その暗号化バックアップデータに上述の付加データが付加されているときには、その付加データにより示される内容に応じた処理を行う。
例えば、付加データが復元有効期限を示す場合、端末装置３００は、その付加データが付加された暗号化バックアップデータをネットワークストレージ２００から取得して、その付加データが示す復元有効期限を確認する。そして、端末装置３００は、現在の日時が復元有効期限を経過してしまっていると判断したときには、暗号化バックアップデータに対する復元を行わず、復元有効期限を経過していないと判断したときには、暗号化バックアップデータに対する復元を行う。
【０１１３】
付加データがバックアップ処理時刻を示す場合、端末装置３００は、ネットワークストレージ２００に格納されている暗号化バックアップデータから、最新のバックアップ処理時刻を示す付加データが付加された暗号化バックアップデータを選択し、その暗号化バックアップデータを取得して復元する。つまり、端末装置３００がバックアップ処理を複数回行った場合には、ネットワークストレージ２００には、その処理によって生成された複数の暗号化バックアップデータが格納されている。そして、これらの暗号化バックアップデータには上述の付加データが付加されているので、端末装置３００は、最近にバックアップ処理を行った暗号化バックアップデータに対して復元処理を行うのである。また、端末装置３００は、バックアップ処理時刻から一定時間を加えたものを復元有効期限として、その復元有効期限を経過してしまった暗号化バックアップデータに対する復元処理を中止しても良い。
【０１１４】
付加データがデータバージョンを示す場合、端末装置３００は、ネットワークストレージ２００に格納されている暗号化バックアップデータから、最新のデータバージョンを示す付加データが付加された暗号化バックアップデータを選択し、その暗号化バックアップデータを取得して復元する。なお、ネットワークストレージ２００が所定の制御ルールに従って暗号化バックアップデータを選択しても良い。例えば、その所定の制御ルールとして「最新の暗号化バックアップデータを選択すること」がネットワークストレージ２００に設定されている場合には、ネットワークストレージ２００は、上述のデータバージョンやバックアップ処理時刻から最新の暗号化バックアップデータを選択する。そして、ネットワークストレージ２００は、その選択した暗号化バックアップデータを端末装置３００に受け渡す。
【０１１５】
付加データが暗号アルゴリズム識別子を示す場合、端末装置３００は、ネットワークストレージ２００から暗号化バックアップデータを取得すると、その暗号化バックアップデータに付加されている付加データの示す暗号アルゴリズム識別子から、暗号アルゴリズムを特定する。そして、端末装置３００は、その特定した暗号アルゴリズムに従って暗号化バックアップデータに対する復元処理を行う。なお、端末装置３００は、暗号化バックアップデータに付加されている暗号アルゴリズム識別子に対応する暗号アルゴリズムを保持していないときには、他の端末装置やサーバと通信することで、その暗号アルゴリズムを取得しても良い。
【０１１６】
付加データが端末識別子を示す場合、端末装置３００は、ネットワークストレージ２００から暗号化バックアップデータを取得すると、その暗号化バックアップデータに付加されている付加データの示す端末識別子から端末装置を特定する。端末装置３００は、その特定した端末装置が自らでない場合、その特定した端末装置に対して、取得した暗号化バックアップデータを復元しても良いか否かを問い合わせる。ここで、他の端末装置から復元の許可が得られたときには、端末装置３００はその暗号化バックアップデータに対する復元処理を行い、許可が得られなかったときには、その暗号化バックアップデータに対する復元処理を中止する。
【０１１７】
ここで、端末装置３００の復元許可判定について説明する。
端末装置３００は、上述のように他の端末装置に対して復元を許可するか否かを判定するため、復元が許可される端末装置の端末識別子が登録されたリストを管理している。即ち、他の端末装置が端末装置３００に復元の問合せをするときには、その他の端末装置は自らの端末識別子を通知する。そしてその通知を受けた端末装置３００は、その通知により示される端末識別子を上述のリストから検索し、リストにその端末識別子があれば、問合せをしてきた端末装置に対して復元を許可し、リストにその端末識別子がなければ、問合せをしてきた端末装置に対して復元を許可しない。また、端末装置３００は、リストにその端末識別子があっても、その端末識別子の端末装置に対して既に所定の回数だけ復元を許可している場合には、その端末装置に対して復元を許可しなくても良い。
【０１１８】
付加データがサーバ識別子を示す場合、端末装置３００は、ネットワークストレージ２００から暗号化バックアップデータを取得すると、その暗号化バックアップデータに付加されている付加データの示すサーバ識別子からサーバを特定する。端末装置３００は、その特定したサーバに対して、取得した暗号化バックアップデータを復元しても良いか否かを問い合わせる。ここで、サーバから復元の許可が得られたときには、端末装置３００はその暗号化バックアップデータに対する復元処理を行い、許可が得られなかったときには、その暗号化バックアップデータに対する復元処理を中止する。また、端末装置３００は、暗号化バックアップデータに対して復元できるか否かを、サーバに事前に問い合わせていても良い。
【０１１９】
ここで、サーバの復元許可判定について説明する。
サーバは、上述のように端末装置３００に対して復元を許可するか否かを判定するため、端末装置３００又はユーザごとに、これまで復元を許可してきた回数（データ復元回数）を管理する。即ち、端末装置は３００は、サーバに対して復元をしても良いか否かを問い合わせるときには、自らの端末識別子をサーバに通知する。サーバは、その通知に示される端末識別子から、問い合わせてきた端末装置３００又はそのユーザを特定し、その端末装置３００又はユーザに対するデータ復元回数が所定の回数以下であれば、その端末装置３００に対して復元を許可し、データ復元回数が所定の回数を上回る場合には、その端末装置３００に対する復元を許可しない。なお、上述では端末装置３００は、付加データの示すサーバに対して復元をしても良いか否かを問合せたが、サービスから一意に特定されるサーバや、端末装置３００から一意に特定されるサーバに対して問い合わせても良い。
【０１２０】
〈復元処理の変形例２：整合性〉
また、ドメインごとに管理されるデータは、ドメインに含まれる端末装置３００のデータ取得あるいは、データ消費処理により、時間と共に変化するものである。端末装置３００は、バックアップ時、およびデータ復元時において、ドメイン内に含まれる端末装置３００間で通信を行いドメインとして保持するデータの整合性チェックを行っても良い。
【０１２１】
例えば、端末装置３００ａは、暗号化バックアップデータを復元した後、その復元されたバックアップデータに対応する元のデータが端末装置３００ｂに保持されていると判断すると、そのバックアップデータと、端末装置３００ｂのデータとの整合性をチェックする。そのチェックの結果、整合性がなくバックアップデータの方が新しい場合には、端末装置３００ａはそのバックアップデータを残し、端末装置３００ｂのデータを破棄させる。また、端末装置３００ｂのデータの方が新しい場合には、端末装置３００ａはそのデータを残し、バックアップデータを破棄する。
【０１２２】
また、端末装置３００ａは、上述と同様に整合性をチェックした結果、整合性がないと判断したときには、そのバックアップデータを無効とする。即ち、端末装置３００ａは復元処理を行わなかったこととする。例えば、バックアップデータが再生回数３回を示す利用条件であって、元のデータが再生回数５回を示す利用条件である場合、端末装置３００ａはそのバックアップデータを無効とする。つまり、利用条件としての再生回数は通常、時間とともに単調減少するものであり、元のデータの再生回数が、バックアップデータの再生回数よりも多いのは不自然である。そして、このような場合には不正な処理が行われた可能性が高いため、端末装置３００ａは上述のようにバックアップデータを無効にするのである。また、端末装置３００ａは、整合性がないと判断したときには、上述のように不正な処理が行われたと判断し、元のデータを削除したり、その元のデータの利用を不可能にするなどの処理を行っても良い。
【０１２３】
なお、整合性をチェックするために、端末装置３００ａは先に暗号化バックアップデータを復元したが、暗号化バックアップデータに付加された付加データなどから整合性をチェックすることができるような場合には、端末装置３００ａは先に暗号化バックアップデータを復元することなく整合性をチェックし、整合性がない場合には、復元処理を中止するようにしても良い。
【０１２４】
また、バックアップデータ及びその元のデータがライセンスであって、端末装置３００がそのライセンスの利用履歴を蓄積しているような場合、端末装置３００は、暗号化バックアップデータの復元後、復元されたバックアップデータから、バックアップ時以降に元のデータが利用された利用分を減算する。つまり、バックアップデータの再生可能回数が５回であって、そのバックアップデータの復元時には元のデータは既に消失しているものの、利用履歴として２回再生されたことが記録されている場合には、端末装置３００はバックアップデータの再生可能回数を５−２＝３回とする。
【０１２５】
以上で、ユーザがデータ復元指示を行い、端末装置３００が、ネットワークストレージ２００より暗号化バックアップデータを取得し、暗号化バックアップデータを復元するまでの処理について説明した。
ここで、本実施の形態の全体的な処理に関する変形例について説明する。
【０１２６】
〈全体的な変形例１：鍵〉
上記説明では、バックアップデータの暗号・復号は、ドメインごとに設定される共通鍵暗号方式の鍵であるドメイン鍵を用いて行われるとしたが、以下のような鍵を用いて暗号・復号をしてもよい。
【０１２７】
まず、ドメインごとに設定される公開鍵暗号方式の鍵であるドメイン公開鍵及びドメイン秘密鍵を用いる方法について説明する。ドメイン公開鍵及びドメイン秘密鍵の鍵ペアは、ドメイン管理サーバ１００が生成する。端末装置３００は、ドメイン秘密鍵をドメイン鍵と同様の方法で取得しセキュアに管理しておく。ドメイン公開鍵は、ドメイン管理サーバ１００が公開しておく。この場合、バックアップ時には、ドメイン公開鍵でバックアップデータは暗号化され、データ復元時には、暗号化バックアップデータはドメイン秘密鍵で復号化される。
【０１２８】
ここまで、ドメイン内でデータの共有が可能となるように、ドメインごとにバックアップ時の暗号化処理に用いる鍵が設定されるとして説明したが、バックアップ時の暗号化処理に用いる鍵を端末装置３００ごとに設定するとしてもよい。なお、この場合は、暗号化処理を行った端末装置３００のみが暗号化バックアップデータの復元処理を行うことができる。
【０１２９】
端末装置３００ごとに設定される鍵としては、共通鍵暗号方式の鍵、あるいは公開鍵暗号方式の鍵ペアが考えられる。また、鍵の取得方法と、バックアップデータに対する暗号化及び復号化の方法とについては、ドメインごとに鍵が設定される場合と同様である。
また、バックアップデータを暗号化する鍵として、ドメイン管理サーバ１００の共通鍵暗号方式の鍵、あるいは公開鍵暗号方式の鍵ペアも考えられる。例えば、端末装置３００がドメイン管理サーバ１００の公開鍵とドメイン鍵とを保持しており、暗号化バックアップデータの復元をドメイン管理サーバ１００の制御なしに端末装置３００が自由に行ってよい場合は、端末装置３００は、ドメイン鍵でバックアップデータの暗号化を行う。また、ドメイン管理サーバ１００が暗号化バックアップデータの復元の可否を制御する場合は、端末装置３００は、ドメイン管理サーバ１００の公開鍵で、バックアップデータの暗号化を行うとしてもよい。ドメイン管理サーバ１００の公開鍵でバックアップデータが暗号化された場合、端末装置３００はデータ復元時にドメイン管理サーバ１００に暗号化バックアップデータの復号処理を依頼する必要がある。つまり、ドメイン管理サーバ１００は、暗号化バックアップデータの復元の可否を制御することができる。なお、バックアップデータの暗号化をどちらの鍵で行うかは、ドメイン管理サーバ１００が決定してもよいし、端末装置３００が決定するとしてもよい。
【０１３０】
〈全体的な変形例２：データ種別に応じて処理〉
本変形例に係る端末装置３００は、データ配信サーバから取得したデータに対するバックアップ処理や、暗号化バックアップデータの復元処理、暗号化バックアップデータの参照処理などの各処理を行うときには、そのデータや暗号化バックアップデータに設定されたデータ種別に応じた処理を行う。ここで、データ種別は、データ配信サーバにより各データに対して設定されたものである。端末装置３００は、データ配信サーバからそのデータ種別が設定されたデータを取得し、そのデータ種別が設定されたデータを複製してバックアップデータを生成する。
【０１３１】
例えば、端末装置３００は、データをバックアップするときには、そのデータのデータ種別に応じた暗号鍵、暗号方法、あるいは署名方法を用いる。即ち、端末装置３００はデータ種別に応じて暗号鍵などを切り換える。なお、端末装置３００は、データ保護システムＳにおいて、求められるセキュリティおよびプライバシー保護のレベルなどをデータ種別から特定し、その特定したレベルに応じて、複数の暗号鍵、暗号方法、および署名方法を組み合わせて利用してもよい。
【０１３２】
また、端末装置３００は、データをバックアップするときには、そのデータに設定されたデータ種別から、上述の付加データのデータバージョンやバックアップ処理時刻などと言った種別（付加データ種別）を特定し、その特定した付加データ種別の付加データを暗号化バックアップデータに付加する。
さらに、端末装置３００は、暗号化バックアップデータを復元するときには、その暗号化バックアップデータに設定されているデータ種別から、そのバックアップデータを復元できるか否かを判別する。端末装置３００は、復元できると判別したときには、復元処理を行い、復元できないと判別したときには、復元処理を中止する。
【０１３３】
またさらに、端末装置３００は、バックアップデータの参照処理を行うときには、その暗号化バックアップデータに付加されている付加データの内容の中から、その暗号化バックアップデータに設定されているデータ種別に対応する内容を選定する。そして端末装置３００は、その選定した内容（例えば利用条件）を取得して表示する。
【０１３４】
〈全体的な変形例３：バックアップデータの削除〉
本変形例に係るネットワークストレージ２００は、端末装置３００からの暗号化バックアップデータを限られた記憶容量に格納するために、端末装置３００から暗号化バックアップデータを取得するごとに、既に格納されている暗号化バックアップデータのうち、例えば最も古い暗号化バックアップデータを削除する。
【０１３５】
また、ネットワークストレージ２００は、端末装置３００からの要求に基いて、格納している暗号化バックアップデータをその端末装置３００に送信した後、その暗号化バックアップデータを削除する。
また、ネットワークストレージ２００は、格納している暗号化バックアップデータに上述の付加データが付加されている場合には、その付加データの内容に応じて暗号化バックアップデータの削除を行う。即ち、付加データに復元有効期限が示されているときには、ネットワークストレージ２００は、現在の日時がその付加データの復元有効期限を経過しているか否かを判別する。そしてネットワークストレージ２００は、復元有効期限を経過していればその付加データに対応する暗号化バックアップデータを削除する。
また、ネットワークストレージ２００は、格納している暗号化バックアップデータを例えば古いものから順に定期的に削除する。
【０１３６】
〈全体的な変形例４：制御情報〉
本変形例に係る端末装置３００は、ドメイン管理サーバ１００又はデータ配信サーバから配信される制御情報に基いて、バックアップ処理や復元処理やデータ参照処理などの制御を行う。
【０１３７】
例えば、バックアップ処理に対して暗号鍵、暗号方法、又は署名方法の種別を示す制御情報が端末装置３００に配信されたときには、端末装置３００はその種別に応じたバックアップを行う。また、データバージョンやバックアップ処理時刻などの付加データの種別（付加データ種別）を示す制御情報が端末装置３００に配信されたときには、端末装置３００は、暗号化バックアップデータにその付加データ種別に応じた付加データを付加する。さらに、バックアップ処理に対して復元有効期限の最長や最短の種別を示す制御情報が端末装置３００に配信されたときには、端末装置３００は、複数のライセンスから構成される暗号化バックアップデータに対して、各ライセンスに対して与えられる復元有効期限のうち、その制御情報が示す種別（最長又は最短）の復元有効期限を示す付加データを付加する。
【０１３８】
また、復元処理に対して上述のような付加データ種別を示す制御情報が端末装置３００に配信されたときには、端末装置３００は、暗号化バックアップデータに付加された付加データに含まれるデータバージョンやバックアップ処理時刻や復元有効期限などから、制御情報により示される付加データ種別を特定する。例えば、その特定した付加データ種別が復元有効期限であれば、端末装置３００は、現在の日時がその復元有効期限を経過しているか否かを判別する。そして、復元有効期限を経過しているときには、端末装置３００は暗号化バックアップデータを復元できないと判別する。
【０１３９】
さらに、データ参照処理に対して利用条件や復元有効期限などの種別（参照データ種別）を示す制御情報が端末装置３００に配信されたときには、端末装置３００は、その参照データ種別に対応する利用条件や復元有効期限などの内容を表示する。
ドメイン管理サーバ１００又はデータ配信サーバは、このような制御情報を生成するための制御情報一覧表を有している。
【０１４０】
図１８は、制御情報一覧表の内容を示す内容表示図である。
このような制御情報一覧表Ｃｄ１には、バックアップ処理や復元処理などの処理種別と、各処理種別に対して制御単位や制御対象などの制御情報に含める必要がある項目と、各項目に対するデータ内容とが記録されている。
【０１４１】
図１９は、制御情報のデータ構成を示すデータ構成図である。
制御情報Ｃｉ１は、制御単位と、処理種別及び制御内容からなる処理別制御情報とを含む。
ドメイン管理サーバ１００又はデータ配信サーバは、例えば、端末装置３００ごとにバックアップ処理に対する制御を行うときには、制御単位として所定の端末装置３００の端末識別子を格納し、処理種別としてバックアップ処理を格納し、制御内容として制御対象と暗号アルゴリズム種別と署名方法と処理種別と付加データ種別とを格納する。例えば、ドメイン管理サーバ１００又はデータ配信サーバは、制御対象として「利用条件」を格納し、暗号アルゴリズム種別として「ＤＥＳ」を格納し、署名方法として「署名なし」を格納し、処理種別として「コンテンツ鍵を削除してバックアップ」を格納し、付加種別として「復元有効期限」を格納する。このような制御情報Ｃｉ１を取得した端末装置３００は、バックアップ処理を行うときには、ライセンスに含まれる利用条件のみを「ＤＥＳ」で暗号化して暗号化バックアップデータを生成し、その暗号化バックアップデータに対して復元有効期限を示す付加データを付加する。また、制御情報Ｃｉ１には、制御対象や暗号アルゴリズム種別などの各項目に対して編集可否フラグが格納される。この編集可否フラグは、端末装置３００のユーザによる操作に基いて編集可能か否かを示す。
【０１４２】
また、ドメイン管理サーバ１００又はデータ配信サーバは、例えば、端末装置３００ごとに復元処理に対する制御を行うときには、制御単位としてその端末装置の端末識別子を格納し、可否判定種別として「復元可能回数」などを格納し、可否判定情報として復元可能回数に応じた例えば「３回」といった情報と、補完データ種別として「補完データなし」を格納し、補完要求先として「要求先なし」を格納する。このような制御情報Ｃｉ１を取得した端末装置３００は、暗号化バックアップデータを復元するときには、その暗号化バックアップデータの復元可能回数を特定し、その特定した回数が上述の「３回」未満であるときには復元を行い、「３回」以上であるときには復元を行わずに処理を終了する。
【０１４３】
ここで、上述のような制御情報Ｃｉ１をユーザが端末装置３００に入力しても良い。例えば、その制御情報Ｃｉ１が参照データ種別として利用条件を示しているときには、端末装置３００はデータ参照処理時に暗号化バックアップデータの利用条件を表示する。
以上、本発明について本実施の形態及び変形例を用いて説明したが、本発明はこれらに限定されるものではない。
【０１４４】
例えば、暗号化バックアップデータはネットワークストレージ２００に送信されて格納されるとしたが、端末装置３００に直接接続される外部記憶媒体に格納されるようにしてもよい。
また、ネットワークストレージ２００と端末装置３００との通信においてもＳＡＣを確立するとしてもよい。
【０１４５】
さらに、復元処理時に暗号化バックアップデータであるライセンスの内容に基いて、ネットワークストレージ２００がライセンスの復元を制限したり、ライセンスを更新してもよい。
例えば、復元処理時に、ライセンスの利用条件の有効期間が切れている場合、ネットワークストレージ２００は、有効期間が切れているライセンスを端末装置３００に送信しない、あるいは利用条件の内容を変更して端末装置３００に送信する。また、暗号化バックアップデータとしてライセンスが複数存在し、一部のライセンスの有効期限が切れている場合、ネットワークストレージ２００はその一部の有効期限が切れているライセンスに対してのみ上記処理をしても良いし、全てのライセンスに対して上記処理を行っても良い。
【０１４６】
（実施の形態２）
以下、本発明における実施の形態２について、図面を用いて詳細に説明する。
図２０は、本発明における実施の形態２のデータ保護システムの構成を示す構成図である。
本実施の形態のデータ保護システムは、図１に示したデータ保護システムＳの構成要素と、データ補完サーバ４００とを備える。ドメイン管理サーバ１００、ネットワークストレージ２００、および端末装置３００の詳細な構成は、実施の形態１と同様であるため説明を省略する。ここでは、実施の形態１と構成の異なるデータ補完サーバ４００の詳細な構成について説明する。なお、端末装置３００ａ〜３００ｃは、実施の形態１と同様、何れも同一の構成を有するため、端末装置３００ａ〜３００ｃのうち何れか１つを端末装置３００として図２０に表す。
【０１４７】
本実施の形態における端末装置３００は、データをバックアップするときには、そのデータの内容に応じてバックアップデータから一部を削除し、残りのバックアップデータを暗号化する。つまり、端末装置３００が暗号化バックアップデータを単に復号しても、その暗号化バックアップデータは元のデータに復元されないのである。
そこで本実施の形態におけるデータ補完サーバ４００は、その暗号化バックアップデータが復号化されたバックアップデータを端末装置３００から受信し、そのバックアップデータに欠落した情報を補完することで、元のデータに復元する。そしてデータ補完サーバ４００はその復元したデータを端末装置３００に送信する。具体的には、データ補完サーバ４００は、ドメイン識別子、コンテンツ識別子と利用条件、および、コンテンツ識別子とコンテンツ鍵を管理しており、端末装置３００からのデータ復元要求に基づき、データの復元処理を行い、伝送路Ｎを通じて、復元したデータを端末装置３００ａ〜３００ｃに配信する。なお、本実施の形態では、復号処理及び補完処理からデータの復元を行う。
【０１４８】
一般に、データ補完サーバ４００は、端末装置３００にデータ配信を行ったデータ配信サーバと同一であると考えられる。
データ補完サーバ４００は、利用条件を格納する利用条件格納部４１１と、コンテンツ鍵を格納するコンテンツ鍵格納部４１２と、端末装置３００と通信を行う通信部４０１と、利用条件格納部４１１、およびコンテンツ鍵格納部４１２からデータを取得し、データを補完し、復元データの生成を行うデータ補完部４０２とから構成される。
【０１４９】
以上で、データ補完サーバ４００の詳細な構成について説明した。
ここで、本実施の形態２で新たに扱うデータのデータ構造について説明する。データ補完サーバ４００の各格納部が保持するデータについて図を参照して説明する。
利用条件格納部４１１は、利用条件を管理するための利用条件管理テーブルを有するデータベースであって、その利用条件管理テーブルは、利用条件を識別するための情報と利用条件との関連付けを示す。
【０１５０】
図２１は、上述の利用条件管理テーブルの内容を示す図である。
利用条件格納部４１１は、図２１に示す利用条件管理テーブルＤ１５００を有し、利用条件を識別するための情報としてのドメイン識別子Ｄ１５０１およびコンテンツ識別子Ｄ１５０２と、利用条件としてのライセンスの有効期間Ｄ１５０３およびコンテンツの利用可能回数Ｄ１５０４とを管理している。
【０１５１】
例えば、図２１において、利用条件管理テーブルＤ１５００は、ドメイン識別子Ｄ１５０１が「ＤＯＭＡＩＮ−ＩＤ−０００１」でコンテンツ識別子Ｄ１５０２が「ＣＯＮＴＥＮＴ−ＩＤ−０００１」である利用条件は、有効期間Ｄ１５０３が「２００３／３／１まで有効」で且つ、利用可能回数Ｄ１５０４が「１０回」であることを示している。
コンテンツ鍵格納部４１２は、コンテンツ鍵を管理するためのコンテンツ鍵管理テーブルを有するデータベースであって、そのコンテンツ鍵管理テーブルはコンテンツ識別子とコンテンツ鍵との関連付けを示す。
【０１５２】
図２２は、上述のコンテンツ鍵管理テーブルの内容を示す図である。
コンテンツ鍵格納部４１２は、図２２に示すコンテンツ鍵管理テーブルＤ１６００を有し、コンテンツ識別子Ｄ１６０１とコンテンツ鍵Ｄ１６０２とを管理している。
例えば、図２２において、コンテンツ鍵管理テーブルＤ１６００は、「ＣＯＮＴＥＮＴ−ＩＤ−０００１」のコンテンツ識別子Ｄ１６０１に対応するコンテンツのコンテンツ鍵Ｄ１６０２が「ＣＯＮＴＥＮＴ−ＫＥＹ−０００１」であることを示している。
【０１５３】
以上で、本実施の形態２で新たに扱うデータのデータ構造について説明した。
実施の形態１ではバックアップ対象のデータであるライセンスを構成する利用条件およびコンテンツ鍵の両者を暗号化又は署名を行ってバックアップする方法について説明した。実施の形態２ではライセンスを構成する利用条件およびコンテンツ鍵のいずれか一方のみをバックアップし、復元処理時に、データ補完サーバ４００を利用してデータを復元する方法について説明する。
【０１５４】
ここでは、バックアップ時にコンテンツ鍵を削除し、利用条件のみをバックアップする方法について説明する。これは、セキュリティの観点からコンテンツ鍵のバックアップが許されず、且つ、データ参照時にはデータ補完サーバ４００との通信が必要とされないため、有効である。
以上の構成のデータ保護システムにおいて、端末装置３００がデータのバックアップを行う際の処理、および端末装置３００が暗号化バックアップデータの復元を行う際の処理について図を参照して説明する。
【０１５５】
なお、端末装置３００がドメイン管理サーバ１００よりドメイン鍵を取得する際の処理は実施の形態１で説明した処理と同様のため、説明を省略する。
【０１５６】
（データのバックアップ処理）
まず、端末装置３００がデータのバックアップを行う際の処理について図２３を参照して説明する。
なお、バックアップ処理に関係する通信メッセージＭ７００のデータ構造については、実施の形態１のバックアップ処理に関する通信メッセージＭ７００と同様であるため、説明を省略する。
図２３は、バックアップ処理を示すフロー図である。
端末装置３００は、ユーザの端末アプリケーションへのバックアップ指示により、端末装置３００が保持するデータのバックアップ処理を開始する。即ち、ユーザからバックアップ指示を受けた端末アプリケーションは、バックアップ処理部３０３にバックアップ指示を行う。ここで、ユーザは必要であればバックアップ対象データ限定情報を入力する。
【０１５７】
バックアップ処理部３０３は、バックアップ対象データ限定情報に基づき、データ格納部３１２に格納されているデータからバックアップ対象となるデータ、すなわちライセンス群を特定し、それ複製することによりバックアップデータを生成する（ステップＳ２３３１）。
バックアップ処理部３０３は、そのバックアップデータから各々のライセンスのコンテンツ鍵をセキュアに削除する（ステップＳ２３３２）。ここでセキュアに削除するとは、コンテンツ鍵を第３者に盗聴されることなく、コンテンツ鍵のデータを消去することである。また、バックアップ処理部３０３は、コンテンツ鍵が削除されたバックアップデータに対して、そこに含まれる各ライセンスに対応するコンテンツ識別子を関連付ける。
【０１５８】
バックアップ処理部３０３は、このように生成されたバックアップデータを用いて、ステップＳ２３３３〜Ｓ２３３６の処理を行い、ネットワークストレージ２００はステップＳ２３２１〜Ｓ２３２５までの処理を行う。
なお、バックアップ処理部３０３がドメイン鍵を取得してからバックアップ対象のデータをバックアップするまでの処理（ステップＳ２３３３〜ステップＳ２３３６）、およびネットワークストレージ２００が行う処理（ステップＳ２３２１〜ステップＳ２３２５）は、実施の形態１のバックアップ処理で説明した処理（図２０のステップＳ２０３２〜ステップＳ２０３５、およびステップＳ２０２１〜ステップＳ２０２５）と同じであるため説明を省略する。
【０１５９】
〈バックアップ処理の変形例：付加データ〉
ここで、端末装置３００は、上述のようにデータを複製し暗号化してネットワークストレージ２００にバックアップするときには、実施の形態１と同様、暗号化バックアップデータに付加データを付加しても良い。また、本変形例における付加データは、復元有効期限などの他、データ補完サーバ４００を識別するための補完サーバ識別子であっても良い。
【０１６０】
以上で、ユーザがバックアップ指示を行い、端末装置３００が、ライセンス群のバックアップデータからコンテンツ鍵を削除して暗号化された暗号化バックアップデータを、ネットワークストレージ２００に格納するまでの処理について説明した。次に、端末装置３００が、ネットワークストレージ２００に格納されている暗号化バックアップデータを用いて、データの復元を行う際の処理について図を参照して説明する。
【０１６１】
（暗号化バックアップデータの復元を行う際の処理）
まず、データ復元処理に関係する通信メッセージＭ７００のデータ構造について図を参照して説明する。
図２４は、端末装置３００がデータ補完サーバ４００に対してデータの補完を要求するときに送信される通信メッセージＭ７００（データ復元要求メッセージ）のメッセージ本体Ｍ７０２のデータ構造を示す図である。
【０１６２】
図２４に示すように、メッセージ本体Ｍ７０２は、データ復元要求メッセージ本体Ｍ１７００として構成され、このデータ復元要求メッセージ本体Ｍ１７００は、１つ以上の復元用データＭ１７０１〜Ｍ１７０３からなる。各々の復元用データＭ１７０１〜Ｍ１７０３は利用条件Ｍ１７１１とコンテンツ識別子Ｍ１７１２とからなる。
図２５は、データ補完サーバ４００から端末装置３００に送信される通信メッセージＭ７００（復元データ送信メッセージ）のメッセージ本体Ｍ７０２のデータ構造を示す図である。
【０１６３】
図２５に示すように、メッセージ本体Ｍ７０２は、復元データ送信メッセージ本体Ｍ１８００として構成され、この復元データ送信メッセージ本体Ｍ１８００は、１つ以上の復元データＭ１８０１〜Ｍ１８０３からなる。各々の復元データＭ１８０１〜Ｍ１８０３は利用条件Ｍ１８１１とコンテンツ識別子Ｍ１８１２とからなる。
また、端末装置３００がネットワークストレージ２００から暗号化バックアップデータを取得する処理に関係する通信メッセージＭ７００のメッセージ本体Ｍ７０２のデータ構造については、実施の形態１の図１４および図１５に示すデータ構造と同一であるため、説明を省略する。
【０１６４】
以上で、データ復元処理に関係する通信メッセージＭ７００のデータ構造について説明した。次に、端末装置３００が、ネットワークストレージ２００に格納されている暗号化バックアップデータを用いて、データの復元を行うまでの各部の処理について図２６を参照して説明する。
【０１６５】
図２６は、データ復元処理を示すフロー図である。
ユーザのデータ復元指示により、端末装置３００がネットワークストレージ２００に暗号化バックアップデータを要求し、復号するまでの処理（ステップＳ２４３１〜ステップＳ２４３３、およびステップＳ２４２１〜ステップＳ２４２３）は、実施の形態１の図２２に示す処理（ステップＳ２２３１〜ステップＳ２２３３、およびステップＳ２２２１〜ステップＳ２２２３）と同じであるため説明を省略する。
【０１６６】
データ復元部３０４は、上述のデータ復元要求メッセージを生成し、通信部３０１を通じて、これをデータ補完サーバ４００に送信する（ステップＳ２４３４）。
ここで、データ復元要求メッセージ本体Ｍ１７００に含まれる利用条件Ｍ１７１１は、復号化されたバックアップデータの利用条件であって、コンテンツ識別子Ｍ１７１２は、バックアップデータにおいてその利用条件と関連付けられているコンテンツ識別子である。
【０１６７】
データ補完サーバ４００は、通信部４０１を通じてそのデータ復元得要求メッセージを受信する（ステップＳ２４４１）。
データ補完部４０２は、そのデータ復元要求メッセージより、復元用データＭ１７０１のコンテンツ識別子Ｍ１７１２を抽出し、コンテンツ鍵格納部４１２において、コンテンツ識別子Ｍ１７１２をキーとしてコンテンツ鍵Ｄ１６０２を特定し、これを取得する。そしてデータ補完部４０２は、利用条件Ｍ１７１１とコンテンツ鍵Ｄ１６０２とから復元データＭ１８０１を生成する、すなわちコンテンツ鍵を補完することによりデータを復元する。上記データ復元処理は復元用データＭ１７０１ごとに繰り返され、データの復元が行われる（ステップＳ２４４２）。
【０１６８】
データ補完部４０２は、上述の復元データ送信メッセージを生成し、通信部４０１を通じて端末装置３００に送信する（ステップＳ２４４３）。
復元データ送信メッセージ本体Ｍ１８００に含まれる復元データＭ１８０１はステップＳ２４４２で復元したデータである。
データ復元部３０４は、通信部３０１を通じてその復元データ送信メッセージを受信する（ステップＳ２４３５）。
【０１６９】
データ復元部３０４は、前記復元データ送信メッセージより、復元データを抽出し、バックアップデータ送信メッセージ本体Ｍ１３００に含まれるドメイン識別子Ｍ１３０２と関連付けてデータ格納部３１２に格納する（ステップＳ２４３６）。
なお、ここでは端末装置３００が利用条件とコンテンツ識別子とをデータ補完サーバ４００に送信し、データ補完サーバ４００がデータを復元するとして説明したが、端末装置３００がコンテンツ識別子のみをデータ補完サーバ４００に送信して、対応するコンテンツ鍵を取得し、端末装置３００のデータ復元部３０４がデータの復元を行うとしてもよい。
【０１７０】
〈復元処理の変形例：付加データ〉
ここで、本変形例に係る端末装置３００は、実施の形態１と同様、暗号化バックアップデータに付加データが付加されている場合には、その付加データにより示される内容に応じた処理を行う。例えば、付加データが補完サーバ識別子を示す場合、端末装置３００は、その補完サーバ識別子により示されるデータ補完サーバ４００に対してデータの復元を要求する。
【０１７１】
（暗号化バックアップデータの内容参照を行う際の処理）
本実施の形態の端末装置３００は、実施の形態１の端末装置３００と同様、暗号化バックアップデータの内容を表示するとともに、暗号化バックアップデータに付加データが付加されているときには、その付加データの内容を表示する。例えば、その付加データが補完サーバ識別子を示すときには、その補完サーバ識別子や、その補完サーバ識別子に対応するデータ補完サーバ４００の名称などを表示する。
【０１７２】
ここで、本実施の形態の全体的な処理に関する変形例について説明する。
〈全体的な変形例１：制御情報〉
本変形例に係る端末装置３００は、実施の形態１の変形例と同様、ドメイン管理サーバ１００又はデータ配信サーバから配信される制御情報に基いて、バックアップ処理や復元処理やデータ参照処理などの制御を行う。
【０１７３】
例えば、復号化されたバックアップデータに対する補完の可否を示す制御情報が端末装置３００に配信されたときには、端末装置３００はその制御情報に基づいて、データの補完をデータ補完サーバ４００に要求することができるか否かを判別する。その結果、端末装置３００は、要求することができないと判別すると、その要求を行わず、要求することができると判別すると、データ補完サーバ４００に対してデータの補完を要求する。
【０１７４】
〈全体的な変形例２：データ種別に応じて処理〉
本変形例に係る端末装置３００は、実施の形態１の変形例と同様、データ配信サーバから取得したデータに対するバックアップ処理や、暗号化バックアップデータの復元処理、バックアップデータの参照処理などの各処理を行うときには、そのデータやバックアップデータに設定されたデータ種別に応じた処理を行う。
【０１７５】
例えば、端末装置３００は、データをバックアップするときには、そのデータのデータ種別に応じた暗号鍵、暗号方法、あるいは署名方法を用いる。なお、端末装置３００は、データ保護システムにおいて、求められるセキュリティおよびプライバシー保護のレベルなどをデータ種別から特定し、その特定したレベルに応じて、複数の暗号鍵、暗号方法、および署名方法を組み合わせて利用してもよい。
【０１７６】
また、端末装置３００は、暗号化バックアップデータを復元するときには、その暗号化バックアップデータに設定されているデータ種別から、そのデータを復元できるか否かを判別する。端末装置３００は、復元できると判別したときには、復元処理を行い、復元できないと判別したときには、復元処理を中止する。
また、端末装置３００は、データの補完をデータ補完サーバ４００に要求するときには、バックアップデータのデータ種別に応じて、その要求ができるか否かを先に判別する。その結果、端末装置３００は、要求することができないと判別すると、その要求を行わず、要求することができると判別すると、データ補完サーバ４００に対してデータの補完を要求する。
【０１７７】
なお、データ補完サーバ４００が、データ復元時に暗号化バックアップデータであるライセンスの内容に基づいて、データの復元を制限したり、そのライセンスを更新してもよい。例えば、データ補完サーバ４００は、データ補完時に、ライセンスの利用条件の有効期間が切れている場合、有効期間が切れているライセンスのデータの補完を行わず、未補完のデータを端末装置３００に送信する。あるいは、データ補完サーバ４００は、復元したバックアップデータを端末装置３００に送信しなかったり、利用条件の内容を変更して端末装置３００に送信してもよい。
【０１７８】
また、バックアップデータとしてライセンスが複数存在し、一部のライセンスの有効期限が切れている場合、データ補完サーバ４００は、その一部の有効期限が切れているライセンスに対してのみ上記処理をしてもよいし、全てのライセンスに対して上記処理を行ってもよい。
以上、本発明について本実施の形態及び変形例を用いて説明したが、本発明はこれらに限定されるものではない。
【０１７９】
例えば、暗号化バックアップデータはネットワークストレージ２００に送信されて格納されるとしたが、端末装置３００に直接接続される外部記憶媒体に格納されるようにしてもよい。
例えば本実施の形態では、コンテンツ鍵を削除したが、利用条件を削除しても良い。この場合には、暗号化されたコンテンツ鍵が暗号化バックアップデータとしてネットワークストレージ２００に格納され、データ復元時に、データ補完サーバ４００がそのコンテンツ鍵に利用条件を補完する。また、データを復元するために、データ補完サーバ４００は、利用条件を特定するための情報とコンテンツ鍵とを関連付けた利用条件管理テーブルＤ１５００を保持しなければならない。例えば、この利用条件管理テーブルＤ１５００は、図２１で説明した利用条件管理テーブルＤ１５００のドメイン識別子Ｄ１５０１とコンテンツ識別子Ｄ１５０２の組の代わりに、利用条件を特定するための情報を保持する。
【産業上の利用可能性】
【０１８０】
本発明に係る端末装置は、暗号化してバックアップされたデータの復元が不正に行われるのを防ぎつつ、サーバ装置に対する依存度を抑えてその復元を行うことができ、例えばコンテンツ及びそのライセンスを扱うデータ配信システムなどの端末装置に適している。
【図面の簡単な説明】
【０１８１】
【図１】本発明における実施の形態１のデータ保護システムの全体の概略構成を示す図である。
【図２】同上のドメイン管理サーバ、ネットワークストレージ、および端末装置の詳細な構成を示す機能ブロック図である。
【図３】同上のドメイン管理サーバのドメイン情報格納部が保持するドメイン管理テーブルのデータ構造を示す図である。
【図４】同上のドメイン鍵格納部が保持するドメイン鍵管理テーブルのデータ構造を示す図である。
【図５】（ａ）は、同上のネットワークストレージのデータ格納部が保持するデータ管理テーブルのデータ構造を示す図であり、（ｂ）は、端末装置のデータ格納部が保持するデータ管理テーブルのデータ構造を示す図である。
【図６】同上のライセンスのデータ構造を示す図である。
【図７】同上のドメイン管理サーバおよびネットワークストレージと端末装置との間の通信において送受信される通信メッセージのメッセージフォーマットの内容を示す図である。
【図８】同上の端末装置がドメイン管理サーバにドメイン鍵を要求するときにドメイン管理サーバに対して送信される通信メッセージのメッセージ本体の構成を示す図である。
【図９】同上のドメイン管理サーバが端末装置３００にドメイン鍵を受け渡すときにドメイン管理サーバから送信される通信メッセージのメッセージ本体の構成を示す図である。
【図１０】同上のドメイン鍵取得処理を示すフロー図である。
【図１１】同上の端末装置がネットワークストレージに暗号化バックアップデータの格納を要求するときに送信されるバックアップ要求メッセージのメッセージ本体の構成を示す図である。
【図１２】同上の端末装置からの要求に対してネットワークストレージが端末装置に返信するバックアップ要求返信メッセージのメッセージ本体の構成を示す図である。
【図１３】同上のバックアップ処理を示すフロー図である。
【図１４】同上の端末装置がネットワークストレージに格納されている暗号化バックアップデータを取得するために送信されるバックアップデータ取得要求メッセージのメッセージ本体の構成を示す図である。
【図１５】同上の端末装置からの取得要求に対してネットワークストレージが端末装置に返信するバックアップデータ送信メッセージのメッセージ本体の構成を示す図である。
【図１６】同上の参照処理を示すフロー図である。
【図１７】同上の暗号化バックアップデータの復元処理を示すフロー図である。
【図１８】同上の制御情報一覧表の内容を示す内容表示図である。
【図１９】同上の制御情報のデータ構成を示すデータ構成図である。
【図２０】本発明における実施の形態２のデータ保護システムの構成を示す構成図である。
【図２１】同上の利用条件管理テーブルの内容を示す図である。
【図２２】同上のコンテンツ鍵管理テーブルの内容を示す図である。
【図２３】同上のバックアップ処理を示すフロー図である。
【図２４】同上の端末装置がデータ補完サーバ４００に対してデータの補完を要求するときに送信されるデータ復元要求メッセージのメッセージ本体のデータ構造を示す図である。
【図２５】同上のデータ補完サーバから端末装置に送信される復元データ送信メッセージのメッセージ本体のデータ構造を示す図である。
【図２６】同上のデータ復元処理を示すフロー図である。
【符号の説明】
【０１８２】
１００  ドメイン管理サーバ
１０１  通信部
１０２  ドメイン情報登録部
１０３  ドメイン判定部
１０４  ドメイン鍵取得部
１０５  ドメイン鍵生成部
１１１  ドメイン情報格納部
１１２  ドメイン鍵格納部
２００  ネットワークストレージ
２０１  通信部
２０２  データ取得・格納部
２１１  データ格納部
３００，３００ａ〜３００ｂ  端末装置
３０１  通信部
３０２  ドメイン鍵要求部
３０３  バックアップ処理部
３０４  データ復元部
３０５  バックアップデータ参照部
３０６  暗号・復号部
３１１  ドメイン鍵格納部
３１２  データ格納部
Ｓ  データ保護システム
【図１】
2004259262.tif 000003
【図２】
2004259262.tif 000004
【図３】
2004259262.tif 000005
【図４】
2004259262.tif 000006
【図５】
2004259262.tif 000007
【図６】
2004259262.tif 000008
【図７】
2004259262.tif 000009
【図８】
2004259262.tif 000010
【図９】
2004259262.tif 000011
【図１０】
2004259262.tif 000012
【図１１】
2004259262.tif 000013
【図１２】
2004259262.tif 000014
【図１３】
2004259262.tif 000015
【図１４】
2004259262.tif 000016
【図１５】
2004259262.tif 000017
【図１６】
2004259262.tif 000018
【図１７】
2004259262.tif 000019
【図１８】
2004259262.tif 000020
【図１９】
2004259262.tif 000021
【図２０】
2004259262.tif 000022
【図２１】
2004259262.tif 000023
【図２２】
2004259262.tif 000024
【図２３】
2004259262.tif 000025
【図２４】
2004259262.tif 000026
【図２５】
2004259262.tif 000027
【図２６】
2004259262.tif 000028