(57)【特許請求の範囲】
【請求項１】
機械によって実行される場合に、前記機械に、
ナンスを生成するステップと、
前記ナンスをホストに接続されたポータブル記憶装置であるストアに送信するステップと、
前記ストアから、前記ストアを前記ホストに対して認証するためのセッションキーを受信するステップであって、前記セッションキーが前記ナンスを使用して生成され前記ホストに関連する公開キーを使用して暗号化される、ステップと、
前記ストアから、前記ホストが前記ストアに含まれるコンテンツにアクセスするためのコンテンツキーを受信するステップであって、前記ストアは、前記コンテンツを再生するためのライセンスを認証すると、前記コンテンツキーを前記セッションキーで暗号化して前記ホストへ送信する、ステップと、
前記ストアが前記ホストから取り外されて第２のホストに挿入された場合には、前記ホストが前記ライセンスを保持しないように前記ライセンスが前記ストアに関連づけられたまま前記ストアとともに移動されるように、前記ライセンスを前記ストア及び前記コンテンツに関連づけるステップと、
を含む認証手順であって、
前記第２のホストは、前記ストアが１つ又は複数のトークンを有しているか否かに少なくとも部分的に基づいて、前記第２のホストが前記コンテンツを再生する許可を得ているか否かを判定するために、前記ストアを処理する、
認証手順を実行させる機械可読命令を含む、機械可読記憶媒体。
【請求項２】
前記認証手順が、前記ナンスを前記ストアに送信する前に前記ナンスを暗号化するステップをさらに含む、請求項１に記載の機械可読記憶媒体。
【請求項３】
前記ナンスが前記ストアに関連する公開キーを使用して暗号化される、請求項２に記載の機械可読記憶媒体。
【請求項４】
前記認証手順が、前記ストアからストア証明書を受信するステップをさらに含み、前記ストア証明書がストア公開キーを含む、請求項１に記載の機械可読記憶媒体。
【請求項５】
前記認証手順が、少なくとも１つの証明書失効リストと突き合わせて前記ストア証明書の有効性をチェックするステップをさらに含む、請求項４に記載の機械可読記憶媒体。
【請求項６】
前記ナンスを送信する前記ステップは、前記ストア公開キーを使用して前記ナンスを暗号化して、前記暗号化されたナンスを送信するステップである、請求項４に記載の機械可読記憶媒体。
【請求項７】
前記認証手順が、前記ストアにホスト証明書を送信するステップをさらに含む、請求項６に記載の機械可読記憶媒体。
【請求項８】
前記ライセンスとストアに含まれるコンテンツとを関連づけるステップが、前記セッションキーを受信した後に、前記ライセンスを前記ストアからの前記セッションキーとバインドするステップを含み、前記ライセンスが、ホストが前記ストア上に含まれるコンテンツにアクセスできるようにするライセンスである、請求項１に記載の機械可読記憶媒体。
【請求項９】
請求項１に記載の機械可読記憶媒体を含む、前記機械としてのモバイルメディアプレーヤーデバイス。
【請求項１０】
機械によって実行される場合に、前記機械に、
ストアと関連するホストから暗号化されたナンスを受信するステップであって、前記ストアは前記ホストに着脱可能に接続されたポータブル記憶装置である、ステップと、
前記暗号化されたナンスに少なくとも部分的に基づいてセッションキーを生成するステップと、
前記ポータブル記憶装置を認証するために前記ホストに前記セッションキーを送信するステップと、
前記ストアに含まれるコンテンツに前記ホストがアクセスするためのコンテンツキーを前記ホストへ送信するステップであって、前記コンテンツを再生するためのライセンスを認証すると、前記コンテンツキーを前記セッションキーで暗号化して前記ホストへ送信する、ステップと、
前記ライセンスが、前記ストアとともに移動可能であり、前記コンテンツの移動後も前記ストア内に保持されるように、前記コンテンツを前記ライセンスとバインドするステップと、
を含む作業であって、
前記ホストは、
前記ストアが１つ又は複数のトークンを有しているか否かを判定し、
前記ストアが前記１つ又は複数のトークンを有することの判定に少なくとも部分的に基づいて、前記１つ又は複数のトークンが有効であるか否かを判定するために前記１つ又は複数のトークンを解析し、
前記ストアが前記１つ又は複数のトークンを有していないことの判定に少なくとも部分的に基づいて、トークン付与サービスからトークンを要求する、
ことによって、前記コンテンツを再生する許可を得ていることを判定する、
作業を実行させる機械可読命令を含む、機械可読記憶媒体。
【請求項１１】
前記作業が、ホスト証明書を受信するステップをさらに含み、前記ホスト証明書が少なくとも前記ホストに関連する公開キーを含む、請求項１０に記載の機械可読記憶媒体。
【請求項１２】
前記作業が、少なくとも１つの証明書失効リストと突き合わせて前記ホスト証明書をチェックするステップをさらに含む、請求項１１に記載の機械可読記憶媒体。
【請求項１３】
前記作業が、ストア証明書に対するクエリーを受信するステップをさらに含む、請求項１０に記載の機械可読記憶媒体。
【請求項１４】
前記作業が、ストア証明書を送信するステップをさらに含み、前記ストア証明書が少なくとも前記ストアに関連する公開キーを含む、請求項１０に記載の機械可読記憶媒体。
【請求項１５】
前記暗号化されたナンスは、前記ストアに関連する公開キーを使用して暗号化されたものである、請求項１０に記載の機械可読記憶媒体。
【請求項１６】
前記作業が、前記ホストに関連する公開キーを使用して前記ランダムセッションキーを暗号化するステップをさらに含む、請求項１０に記載の機械可読記憶媒体。
【請求項１７】
前記作業が、前記セッションキーを受信した後に前記ホストに前記ライセンスを与えるステップをさらに含み、前記ライセンスは前記ストア上に含まれるコンテンツに前記ホストがアクセスできるようにするライセンスである、請求項１０に記載の機械可読記憶媒体。
【請求項１８】
前記機械可読記憶媒体がポータブルメモリーデバイスである、請求項１０に記載の機械可読記憶媒体。
【請求項１９】
前記ポータブルメモリーデバイスがフラッシュメモリー、ＳＤカード、またはＳＩＭカードの何れかである、請求項１８に記載の機械可読記憶媒体。
【請求項２０】
前記機械としてのモバイルメディアプレーヤーデバイスであって、ポータブルメモリーデバイスであるところの請求項１８に記載の機械可読記憶媒体が挿入されたモバイルメディアプレーヤーデバイス。
【発明の詳細な説明】
【背景技術】
【０００１】
リムーバブルストレージユニット上で様々なタイプのコンテンツがますます使用可能になりつつある。これらのストレージユニットは、様々なデバイスに容易に挿入することができて、そのデバイスがストレージ中に含まれるコンテンツにアクセスできるようにする。
【０００２】
一部の例では、このコンテンツは、デジタル著作権管理（ＤＲＭ）システムが管理するライセンスの適用対象であり得る。そのような例では、コンテンツは所与のストレージのインスタンスにバインドされ、またはライセンスされることがあるが、そのコンテンツは様々な異なるデバイスからアクセスすることができる。これらの環境では、ライセンスポリシーや制限の遵守を管理することはＤＲＭシステムへの課題を提示することがある。
【発明の概要】
【課題を解決するための手段】
【０００３】
コンテンツライセンスをポータブル記憶装置にバインドするためのシステム、方法、および／または技法（「ツール」）について記載する。コンテンツライセンスをポータブル記憶装置（「ストア」）にバインドすることに関連し、コンテンツと対話しまたはコンテンツに対する操作を実行するためのデバイス（「ホスト」）は、ナンス（ｎｏｎｃｅ）を生成するステップと、そのナンスをストアに送信するステップと、そのナンスを使用して生成されたセッションキーをストアから受信するステップとを含む認証手順を実行することができる。ストアは、ホストからナンスを受信するステップと、そのナンスに基づいてランダムセッションキーを生成するステップと、そのセッションキーをホストに送信するステップとを含む認証手順を実行するとができる。
【０００４】
この概要は、以下の詳細な説明でさらに説明される概念の選択されたものを簡単な形で紹介するために提供される。この概要は、請求項に記載の主題の重要な特徴または本質的な特徴を特定することを意図しておらず、また請求項に記載の主題の範囲を決定する際の補助として使用されることも意図していない。例えば「ツール」という用語は、この文書の上記のおよび全体の文脈によって認められるような１つまたは複数のシステム、１つまたは複数の方法、コンピューター可読命令、および／または１つもしくは複数の技法を指すことができる。
【０００５】
コンテンツライセンスをポータブル記憶装置にバインドすることに関連するツールを、以下の図面に関連して説明する。本開示および諸図面全体にわたって同じ番号を使用して同様の構成要素および機能を参照する。参照番号の１桁目はその参照番号が初めて出た図面を示す。
【図面の簡単な説明】
【０００６】
【図１】関係するデータの流れとともに、コンテンツライセンスをポータブル記憶装置にバインドするための運用環境を示すブロック図である。
【図２】図１に示すライセンスサーバー、ストア、およびホストの追加の態様を示すブロック図である。
【図３】ホストおよびストアに対して証明書および公開キー／秘密キーを発行するための基盤を示すブロック図である。
【図４】ホストおよびストアが互いに認証することができる手順を示す流れ図である。
【図５】ホストとストアとの間でセッションキーを確立するためのプロセスを示す流れ図である。
【図６】ストア上にライセンス記憶域を実装するためのデータ構造を示すブロック図である。
【図７】ユーザーがアクセスするためにホスト上でコンテンツを選択するときに実行され得る手順を示す流れ図であって、ホストがユーザーからの要求を選択されたコンテンツに適用されるライセンスポリシーと突き合わせて評価する、手順を示す流れ図である。
【図８】図７に示すプロセスの流れの追加の態様を示す流れ図である。
【図９】ユーザーがアクセスするためにホスト上でコンテンツを選択するときに実行され得る手順を示す流れ図であって、ストアがユーザーからの要求を選択されたコンテンツに適用されるライセンスポリシーと突き合わせて評価する、手順を示す流れ図である。
【図１０】図９に示すプロセスの流れの追加の態様を示す流れ図である。
【図１１】トークン付与サービスを含む運用環境を示すブロック図である。
【図１２】ストアが一時ライセンスまたは一時証明書をホストに発行できる運用環境を示すブロック図である。
【発明を実施するための形態】
【０００７】
概説
以下の文書は、多くの技法およびプロセスを実行しかつ／またはサポートすることができるツールについて記載する。以下の解説は、コンテンツライセンスをポータブル記憶装置にバインドするためにこのツールが提供する例示的方法を記載する。この解説は、このツールが実行することができる他の技法および／またはプロセスについても記載する。
【０００８】
図１は、コンテンツライセンスをポータブル記憶装置にバインドするための運用環境１００を示す。運用環境１００は、１人または複数人のユーザー１０２がコンテンツを入手し、後で閲覧しアクセスするためにそれを１つまたは複数の記憶装置に記憶できるようにすることができる。図１は、限定するためではなく便宜上、１０４でコンテンツを全体として示し、２つのコンテンツのインスタンスを１０４ａおよび１０４ｎで表す。図１は、コンテンツまたはメディアソース１０６からコンテンツ１０４ａを得ることができ、そのコンテンツを記憶装置１０８中に読み込むことができる１人のユーザー１０２も示す。図１は、２台の記憶装置１０８を１０８ａおよび１０８ｎで示すが、前と同じく限定するためではなく例示目的にすぎない。図１は、コンテンツ１０４ａが記憶装置１０８ａ（本明細書では便宜上「ストア」と略称する）に記憶され、コンテンツ１０４ｎが記憶装置１０８ｎに記憶されることを示す。
【０００９】
概して、運用環境１００は、任意の数のユーザー１０２が、任意の数のコンテンツソース１０６から、任意の数のコンテンツのインスタンス１０４を得られるようにする。さらにこの運用環境は、任意の数のストア１０８を含むことができる。図１は、限定するためではなく、専ら記載を簡略化するためにこのシナリオを図のように示す。
【００１０】
コンテンツ１０４は、歌曲、音楽、本や雑誌の録音された朗読、等、などの音声コンポーネントを含むことができる。コンテンツ１０４は、映画、ビデオクリップ、等、などの音声および／または映像コンポーネントを含むこともできる。必ずしも全てではないが一部の例では、映像コンポーネントは、対応する音声コンポーネントと組み合わされてマルチメディアコンテンツを提供することができる。コンテンツ１０４は、静止画、ゲーム、着信音、無声映像、テキスト、または他の任意の形式のデジタル化された情報を単独で、または音声および／もしくは映像コンポーネントと組み合わせて含むこともできる。
【００１１】
コンテンツソース１０６は、ユーザー１０２がコンテンツ１０４をダウンロードできるようにする、インターネットなどの広域通信ネットワークを介してアクセス可能なサービスを表すことができる。以下の例で可能な実施例を限定することなく、コンテンツソース１０６は、ユーザーがコンテンツを無料で（例えば広告を受け取るのと引き換えに）ダウンロードできるようにすることができ、またはユーザーがコンテンツを有料でダウンロードできるようにすることができる。さらにユーザーは、加入してコンテンツを受信することもできる。
【００１２】
記憶装置すなわちストア１０８について見ると、このようなデバイスの例には、フラッシュメモリー１１０、ＳＤ（セキュアデジタル）カード１１２、ＳＩＭ（加入者識別モジュール）カード１１４、ハードドライブ、ＵＳＢ（ユニバーサルシリアルバス）バスを介して通信するドングル、等、などのポータブルメモリーデバイスを含むことができるが、それだけに限定されることはない。
【００１３】
運用環境１００は、１１６で全体として示す１つまたは複数のライセンスサーバーまたはライセンスサービスも含むことができる。概してこのライセンスサーバーは、ユーザー１０２が、コンテンツ１０４について再生し、別の方法で対話し、または操作を実行するために適当な任意のライセンスを得られるようにする。このライセンスは、特定の条件に基づいてコンテンツと対話しもしくはコンテンツに対する操作を実行することを許可することができ、またはコンテンツと対話しもしくはコンテンツに対する操作を実行することに適用されるポリシーや制限を指定することができる。そのようなポリシーや制限の例には、カウント、時間制限、等を含むことができるが、それだけに限定されることはない。
【００１４】
場合によっては、ライセンスサーバー１１６は、コンテンツのライセンスだけでなく、コンテンツ自体も提供することができる。そのため図１では、サーバー１１６をライセンス／コンテンツサーバーとして表記する。これらの例では、１つのエンティティが、ライセンスサーバー１１６およびコンテンツソース１０６の両方の機能を果たすことができる。他の例では、ユーザー１０２は、コンテンツソース１０６として機能する１つのエンティティからコンテンツをダウンロードすることができ、そのコンテンツを再生するための適当なライセンスを取得するために別個のライセンスサーバーと対話することができる。
【００１５】
ユーザー１０２またはそのユーザーに代わって行動する任意のエンティティがそのコンテンツを再生するのに適当なライセンスを得ると、この運用環境は、そのライセンスをストア１０８にバインドすることができる。本明細書で使用する場合、ライセンスと「バインドする」という用語は、特定のデバイス（例えばストア１０８）に関係する特定のコンテンツのライセンスを、暗号を使用して関連付けることを指し、それによりそのデバイスは、そのライセンスの条件に基づいてそのコンテンツと対話しまたはそのコンテンツに対する操作を実行することが許可される。図１に示すように、デバイス１０８ａに暗号を使用してバインドされたコンテンツ１０４ａのライセンスを、全体として矢印１１８ａで表し、さらにデバイス１０８ｎに暗号を使用してバインドされたコンテンツ１０４ｎのライセンスを、全体として矢印１１８ｎで表す。
【００１６】
運用環境１００は、コンテンツ１０４について再生し、閲覧し、他の方法で対話し、または操作を実行するための１つまたは複数のホストデバイス１２０（「ホスト」）を含むことができる。図１は、限定するためではなく、専ら例示目的で２つのホスト１２０ａおよび１２０ｎを示す。図１は、コンテンツ１２２ａおよび１２２ｎが記憶装置１０８ｎ上に読み込まれ、２つの異なるホスト１２０ａおよび１２０ｎによってアクセスされる一例を示す。
【００１７】
ホスト１２０についてより詳しく見ると、このホストには、携帯電話、スマートフォン、ワイヤレスＰＤＡ（携帯情報端末）、等に相当し得るモバイルワイヤレスデバイス１２４などのデバイスが含まれ得る。ホスト１２０には、ポータブルメディアプレーヤー１２６が含まれてもよい。デバイス１２４または１２６のいずれも音声、映像、または他のコンテンツ１２２を再生するのに適していてよい。
【００１８】
上記に説明したように、特定のコンテンツの１つまたは複数のライセンスは、矢印１１８によって表されるように個々の記憶装置１０８に暗号を使用してバインドされる。ライセンスをストアにバインドすることは、ライセンスを特定のホスト１０２にバインドすることとは対照的である。コンテンツのライセンスが暗号を使用してストア１０８にバインドされるので、このライセンスはストア１０８とともに「移動」する。これらのライセンスは、暗号を使用してライセンスがバインドされる対象のストアと通信する任意のホストが、有効なホスト証明書を有し、基準に適合したホスト機能の実装を提供することを条件に、コンテンツを再生できるようにする。
【００１９】
図１は、ライセンス１１８に関するいくつかのシナリオを示す。一部のシナリオではライセンスがまずホストに移動し、次いでストアに移動することができる。図１は、ブロック１１６からブロック１２０ａに、次いでブロック１０８ａに続く破線１１８ａによって表されるように、このシナリオの一例を示す。他のシナリオでは、ライセンスがまずストアに移動し、次いでホストに移動することができる。図１は、ブロック１１６からブロック１０８ｎに、次いでブロック１２０ｎに続く破線１１８ｎによって表されるように、このシナリオの一例を示す。
【００２０】
このライセンスシナリオの一例として、図１は、破線１１８ｎによって表されるように、ストア１０８ｎに暗号を使用してバインドされるコンテンツ１０４ｎのライセンス１１８ｎを示す。ユーザー１０２と同じまたは異なる者とすることができるユーザー１２８は、例えばストア１０８ｎをホスト１２０ａに挿入し、ホスト１２０ａに適当なコマンドを発行することにより、このライセンス１１８ｎの条件に基づいてコンテンツ１０４ｎを再生することができる。図１は、ホスト１２０ａ内のコンテンツ１０４ｎを再生することを１２２ａで全体として表す。しかし、その後ユーザー１２８がホスト１２０ａからストア１０８ｎを取り外し、ストア１０８ｎを別のホスト１２０ｎに挿入する場合、コンテンツ１０４ｎのライセンスはストア１０８ｎとともにその別のホスト１２０ｎに移動する。最初のホスト１２０ａは、コンテンツ１０４ｎを再生するための残余権を保持しない。次いでユーザー１２８は、この別のホスト１２０ｎに適当なコマンドを発行することにより、この別のホスト上でコンテンツ１０４ｎを再生することができる。このシナリオは、任意の数のホスト１２０に対して任意の回数繰り返すことができる。
【００２１】
図１に示すような運用環境１００を説明したので、次に解説を、今度は図２で示すライセンスサーバー１１６、ストア１０８、およびホスト１２０に関するさらなる詳細の説明に向ける。
【００２２】
図２は、図１に示すようなライセンスサーバー１１６、ストア１０８、およびホスト１２０の追加の態様２００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図２に繰り越され、同じ参照符号で示される。
【００２３】
ライセンスサーバー１１６についてまず見ると、ライセンスサーバー１１６は、２０２で示す１個または複数個のプロセッサーを含むコンピューターベースシステムとすることができる。これらのプロセッサーは、所与のタイプまたはアーキテクチャーを有するとして分類されまたは特徴付けられてもよいが、同じタイプまたはアーキテクチャーを有しても有さなくてもよい。
【００２４】
ライセンスサーバー１１６は、２０４で全体として示す１つまたは複数の機械可読記憶媒体またはコンピューター可読記憶媒体のインスタンスを含むこともできる。コンピューター可読媒体２０４は、プロセッサー２０２によって実行される場合に、ライセンスサーバーによって実行されるものとして本明細書に記載されるツールまたは関連機能のいずれかを実行する命令を含むことができる。このプロセッサーは、このコンピューター可読媒体上に埋め込まれまたはコード化された命令にアクセスしかつ／または実行することができ、かつ／またはこのコンピューター可読媒体中に記憶されたデータにアクセスすることができる。
【００２５】
コンピューター可読媒体２０４に関するさらなる詳細について見ると、コンピューター可読媒体２０４は、１つまたは複数のＤＲＭ（デジタル著作権管理）モジュール２０６のインスタンスを含むことができる。このＤＲＭモジュール２０６は、例えば、プロセッサーに読み込まれ、実行される場合にライセンスサーバーにデジタルコンテンツ（例えば図１のコンテンツ１０４）に適用されるライセンスを管理する１つまたは複数のソフトウェアモジュールを含むことができる。
【００２６】
別の実施例では、このライセンスサーバーは、直接的ライセンス取得または間接的ライセンス取得（それぞれＤＬＡおよびＩＬＡ）シナリオを可能にすることができる。直接的ライセンスシナリオという用語は、デバイスがライセンスサーバーから直接ライセンスを得る場合を指す。間接的ライセンスシナリオという用語は、デバイスが、パーソナルコンピューターや他のプロキシなど、１台または複数台の中間デバイスを介して通信することにより、ライセンスサーバーから間接的にライセンスを得る場合を指す。
【００２７】
さらに、このＤＲＭモジュールは、ユーザー（例えば図１の１０２）に与えられるライセンスに対する任意の権利および制限を解釈し、実施することができる。これらの制限は、ユーザーが特定のコンテンツを何回再生できるのかを指定することができ、コンテンツの再生に適用される任意の時間制限、等を指定することができる。概してこのＤＲＭモジュールは、コンテンツの特定のインスタンスと対話しまたは特定のインスタンスに対する操作を実行することに適用されるポリシーを確立（ｅｓｔａｂｌｉｓｈ）することができる。
【００２８】
次に記憶装置すなわちストア１０８について見ると、ストア１０８は、プロセッサー２０２と同じタイプまたは同じアーキテクチャーであってもなくてもよいプロセッサー２０８を含むことができる。ストア１０８は、プロセッサー２０８と通信するコンピューター可読媒体２１０も含むことができる。コンピューター可読媒体２１０は、プロセッサー２０８によって実行される場合に、ストア１０８によって実行されるものとして本明細書に記載されるツールまたは関連機能のいずれかを実行する命令を含むことができる。プロセッサー２０８は、コンピューター可読媒体２１０上に埋め込まれまたはコード化された命令にアクセスし、実行することができ、コンピューター可読媒体２１０中に記憶されたデータにアクセスすることができる。
【００２９】
コンピューター可読媒体２１０は、ストア上に読み込まれる任意のコンテンツ（例えば図１のコンテンツ１０４）用の記憶域を含むことができる。図２は、これらのコンテンツ記憶域を全体として２１２で示す。コンテンツ記憶域２１２は、ストアがどれ位の量のコンテンツを含むのかにもよるが、任意の数の別個のコンテンツのインスタンスを記憶するための領域を含むことができる。
【００３０】
コンピューター可読媒体２１０は、ストア中に読み込まれるコンテンツに関連するライセンス用の記憶域も含むことができる。図２は、これらのライセンス記憶域を２１３で示す。ライセンス記憶域２１３は、どれ位の量のコンテンツをストアが含み、このコンテンツのうちのどれ位の量がライセンスの適用対象であるのかにもよるが、任意の数の別個のコンテンツライセンスのインスタンスを記憶するための領域を含むことができる。
【００３１】
コンピューター可読媒体２１０は、ライセンスサーバー１１６によって提供されるＤＲＭモジュール２０６と協働しかつ／または通信する１つまたは複数のソフトウェアモジュールを含むことができる、ＤＲＭ構成要素２１４を含むことができる。このＤＲＭ構成要素２１４および／またはＤＲＭモジュール２０６は、コンテンツ記憶２１２中に記憶されるコンテンツに適用される任意のライセンスを管理することができる。より具体的には、このＤＲＭ構成要素は、コンテンツに適用されるライセンスの遵守を追跡するのに適した任意の情報を記憶することができる。例えば、このＤＲＭ構成要素は、コンテンツが何回アクセスされたか、コンテンツがいつアクセスされたか、等を追跡することができる。
【００３２】
コンテンツ／ライセンス記憶域２１２について再び簡潔に述べると、一部の実施例では、このコンテンツ／ライセンス記憶域のうちライセンスを記憶する部分は、ライセンスを管理することに関係する任意の情報への不正アクセスを妨げる（あるいは防ぐ）ために保護されかつ／または隠されることが可能である。
【００３３】
コンピューター可読媒体２１０は、図２に暗号モジュール２１６として示す暗号モジュールを含むことができる。暗号モジュール２１６には、プロセッサー２０８が通信する別個のハードウェアモジュールが含まれ得る。しかし図を簡略化するために、暗号モジュール２１６をコンピューター可読媒体２１０中にあるソフトウェアモジュールとして示す。この暗号モジュールは、プロセッサー２０８中に読み込むことができ、実行してストアがホスト１２０とのセキュリティーで保護されたセッションを確立し、維持し、切断できるようにする１つまたは複数のソフトウェアモジュールを含むことができる。これらのセキュリティーで保護されたセッションに関するさらなる詳細を以下に提供する。さらに、暗号モジュール２１６は、これらのセキュリティーで保護されたセッションの一環として、または他の任意の暗号操作の一環としてストアに割り当てられる任意の公開キー／秘密キーを保つことができる。暗号モジュール２１６は、暗号操作を実行するための暗号アルゴリズムの実装を含むこともできる。
【００３４】
次にホスト１２０について見ると、ホスト１２０は、プロセッサー２０２および２０８と同じタイプおよびアーキテクチャーであってもなくてもよいプロセッサー２１８を含むことができる。プロセッサー２１８は、例えばユーザーが記憶装置１０８を挿入することができるスロットやコネクターを含み得るメディアインターフェイス２２０と通信しまたは協働することができる。
【００３５】
ホスト１２０は、ＤＲＭ構成要素２２４を含むことができるコンピューター可読媒体２２２も含むことができる。一部の例では、このＤＲＭ構成要素２２４は、ライセンスサーバー１１６上のＤＲＭモジュール２０６と、またはストア１０８の１つまたは複数上のＤＲＭ構成要素２１４と通信しもしくは協働することができる。他の例では、ＤＲＭ構成要素２２４は、ＤＲＭモジュール２０６およびＤＲＭ構成要素２１４の両方と通信しまたは協働することができる。
【００３６】
コンピューター可読媒体２２２は、ホストに代わって暗号操作を実行することができる暗号モジュール２２５を含むことができる。暗号モジュール２２５は、例えばストア上の暗号モジュール２１６と間接的に協働することができる。動作状況面での相違は別にして、暗号モジュール２１６についての上記の説明は、暗号モジュール２２５に等しく適用できる。例えば、暗号モジュール２２５は、プロセッサー２１８が通信し得る別個のハードウェアモジュールとして実装することができる。
【００３７】
ホスト１２０は、ストア１０８がメディアインターフェイス２２０に挿入されたという指示を受信することができる。これらの指示には、電気信号、ソフトウェアおよび／またはハードウェア割り込み、ソフトウェア報告イベント、等が含まれ得る。この指示に応答して、ＤＲＭ構成要素２２４が、ライセンスの適用対象である任意のコンテンツを求めてストア１０８を検索することができ、そのコンテンツに適用される任意のライセンスを特定することができ、そのライセンスをそのストアにバインドすることができる。さらにこのＤＲＭ構成要素は、例えば再生カウント、時間制限、等など、コンテンツの再生に適用される任意のポリシーをホスト１２０が実施できるようにする。
【００３８】
場合によっては、例えばホストが提供するスロットにユーザーがストアを挿入する場合など、ホスト１２０はストア１０８に直接アクセスすることができる。他の例では、このホストは、他のデバイスを介して間接的にストアにアクセスすることができる。例えば、図２に示すようなホスト１２０は、ユーザーがストアを挿入する別のホストへの無線リンクを含むことができる。
【００３９】
コンピューター可読媒体２２２は、メディアプレーヤーアプリケーション２２６を含むことができる。様々な可能な実施例において、このメディアプレーヤーアプリケーションは、ユーザー１２８に向けてコンテンツ（例えばコンテンツ１２２）を再生し、または他の形でユーザー１２８がコンテンツにアクセスできるようにするための１つまたは複数のソフトウェアモジュールを含む。例えば、このメディアプレーヤーアプリケーションには、特定の実施例に含まれるコンテンツの性質やタイプに応じて、映画または映像閲覧アプリケーション、音声再生アプリケーション、等が含まれ得る。
【００４０】
図を明瞭にするために図２には示していないが、コンピューター可読媒体２２２は、ホスト上で再生されまたはアクセスされ得る様々なタイプのコンテンツを復号するための１つまたは複数のコンテンツデコーダーモジュールを含むことができる。コンピューター可読媒体２２２は、ホストとサーバー１１６との間の通信を助ける１つまたは複数の伝送モジュールも含むことができる。
【００４１】
コンピューター可読媒体２２２は、ＤＲＭ構成要素２２４がメディアプレーヤーアプリケーション２２６によるアクセスのためにコンテンツを読み込む、コンテンツ記憶域２２８を含むことができる。例えばこのコンテンツ記憶域２２８は、メディアプレーヤーアプリケーション用にコンテンツを記憶するためのバッファまたは他の適したデータ構造を含むことができる。
【００４２】
コンピューター可読媒体２２２は、ＤＲＭ構成要素がライセンス情報を読み込むライセンス記憶域２３０も含むことができる。例えば、ＤＲＭ構成要素が所与のコンテンツのインスタンスを、ストアからコンテンツ記憶域２２８中に読み込んだと仮定し、そのコンテンツがライセンスポリシーの適用対象であると仮定した場合、このＤＲＭ構成要素は、これらのポリシーを実施しまたは管理することに関係する任意の情報をライセンス記憶域２３０中に読み込むことができる。
【００４３】
以下にさらに詳述するが、ＤＲＭ構成要素２２４は、コンテンツ記憶域２２８中に読み込まれた任意のコンテンツに適用される任意のライセンスポリシーを実施することができる。ユーザー（例えば図１のユーザー１２８）がメディアインターフェイス２２０にストア１０８を挿入すると、そのユーザーはそのストアに含まれる任意のコンテンツを閲覧することができ、再生しまたはアクセスするコンテンツを選択することができる。次いでこのＤＲＭ構成要素は、選択されたコンテンツがライセンスポリシーの適用対象であるかどうかを判定することができ、そのライセンスポリシーが何なのかをさらに特定することができる。このＤＲＭ構成要素はさらに、これらのポリシーを表す情報をライセンス記憶域２３０中に読み込むことができ、選択されたコンテンツをコンテンツ記憶域２２８中に読み込むことができる。該当する任意のライセンス制限またはライセンスポリシーの遵守を仮定して、このＤＲＭ構成要素は、メディアプレーヤーアプリケーションがユーザー２２０に向けて選択されたコンテンツに対する要求操作を実行する許可を出すことができる。不遵守のどんな場合にも、このＤＲＭ構成要素は、不遵守を忠告し、ことによると適当なライセンスを得ることにより遵守を実現する方法を提案する適当なエラーメッセージをユーザーに提示することができる。
【００４４】
前述の機能を果たすために、ＤＲＭ構成要素２２４は、一部の例ではストア上のＤＲＭ構成要素２１４と通信することができる。他の例では、ＤＲＭ構成要素２２４は、ライセンスサーバー１１６上のＤＲＭモジュール２０６と通信することができる。場合によっては、ＤＲＭ構成要素２２４は、ＤＲＭモジュール２０６およびＤＲＭ構成要素２１４の両方と通信することができる。
【００４５】
図２のライセンスサーバー１１６、ストア１０８、およびホスト１２０の追加の態様を説明したので、次に解説を、今度は図３で示すホストおよびストアに対して発行されるものとしての証明書および公開キー／秘密キーの説明に向ける。
【００４６】
図３は、ホスト（例えばホスト１２０）およびストア（例えばストア１０８）に対して証明書および公開キー／秘密キーを発行するための基盤３００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図３に繰り越され、同じ参照符号で示される。
【００４７】
図３は、破線３０６によって示されるように証明書３０４をホストに発行する証明機関３０２を示す。図を簡略化するために図３では１つの証明機関３０２を示すが、証明機関３０２は、証明機関の系統または他のより大きな群のうちにあってよい。同様の線に沿って、証明書３０４は証明機関３０２によって発行される単一の証明書とすることができ、または証明機関系統内のパスに対応する証明書の集合を表すこともできる。
【００４８】
一部の例では、ホスト証明書３０４は、少なくともホスト秘密キー３０８とホスト公開キー３１０とを含むことができる。他の例では、このホスト証明書は少なくともホスト公開キー３１０を含むことができ、ホスト秘密キーは別途送られる。ホストは、ホスト公開キーに対応するホスト秘密キーにアクセスすることができる。さらに、証明機関３０２は、証明機関３０２または証明機関系統内の任意の証明機関によって前に発行された任意の証明書の現在の状態を列挙する証明書失効リスト３１２を保持することもできる。より具体的には、証明書失効リスト３１２は、１つまたは複数の所与の証明書が失効しており、または他の形で無効になったかどうかを示すことができる。
【００４９】
図３は、破線３１８によって表されるようにストア１０８に証明書３１６を発行することができる証明機関３１４も示す。一部の例では、ストア証明書３１６は、少なくともストア秘密キー３２０とストア公開キー３２２とを含むことができる。他の例では、このホスト証明書は少なくともストア公開キー３２２を含むことができ、ストア秘密キーは別途送られる。このストアは、ストア公開キーに対応するストア秘密キーにアクセスすることができる。さらに、証明機関３１４は、証明機関３１４または証明機関系統内の任意の証明機関によって前に発行された任意の証明書を列挙する証明書失効リスト３２４を保持することもできる。より具体的には、証明書失効リスト３２４は、１つまたは複数の所与の証明書が失効し、または他の形で無効になったかどうかを示すことができる。
【００５０】
ストア１０８上に含まれるコンテンツに適用される任意のライセンスは、ストア１０８に発行される秘密キーまたは秘密キー３２０の集合に暗号を使用してバインドされまたは関連付けられ得る。このようにして、図３に示す証明書基盤３００は、ライセンスをホスト１２０ではなくストア１０８にバインドすることができる。より具体的には、このライセンスが公開キー３２２のユーザーによって秘密キー３２０に暗号を使用してバインドされる。図１に示す矢印１１８が、このライセンスバインドを表すことを思い起こされたい。
【００５１】
図３は、本明細書の記載の可能な実施例を限定するためではなく、専ら図および説明を簡略化するために別個の証明機関３０２および３１４を示す。単一の証明機関が、所与のストア１０８および所与のホスト１２０の両方に証明書を発行できることにも触れておく。さらに、ライセンスサーバー（例えば図１の１１６）によって提供されるＤＲＭモジュール２０６が証明機関として働くこともでき、ホスト１２０および／またはストア１０８に証明書を発行することができる。
【００５２】
図３のホスト１２０およびストア１０８に証明書および公開キー／秘密キーを発行するための基盤３００を説明したので、次に解説を、今度は図４で示す、ホストがストアに対して認証する方法の説明に向ける。
【００５３】
図４は、ホスト（例えばホスト１２０）およびストア（例えばストア１０８）が互いに認証することができる手順４００を示す。手順４００を完了することは、ホストがストア上に含まれるコンテンツを再生できるようにすることができ、この手順は、ホストとストアとの間にセキュリティーセッションを確立する。手順４００は、ユーザー（例えばユーザー１２８）がホストにストアを挿入するときに実行され得る。
【００５４】
可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図４に繰り越され、同じ参照符号で示される。さらに、限定するためではなく記載を簡略化するために、図４では様々なプロセスを列形式に配置して、ホストおよびストアがそれぞれ実行することができる手順４００の各部分を示す。
【００５５】
ブロック４０２は、ストア証明書に対するクエリーを送信することを表す。図４は、ストア証明書に対するクエリーを４０６で示す。図４に示す例では、クエリー４０６はホスト１２０からストア１０８に進むことができる。
【００５６】
ブロック４０６は、ストア証明書に対するクエリー４０４を受信することを表す。図４に示す例ではストアがクエリー４０４を受信することができる。
【００５７】
ブロック４０８は、ストア証明書を送信することを表す。図４に示す例では、ブロック４０８はクエリーに応答してストア証明書を送信することを含み得る。さらに、ブロック４０８は、線４１０によって示されるようにホスト証明書（例えば３０４）が有効である場合にのみ行ってもよい。ホスト証明書が有効かどうかを判定するためのプロセスを以下にさらに説明する。
【００５８】
ホスト証明書が有効であると仮定して、ストアはクエリーに応答して自らの証明書のコピーを送信することができる。限定するためではなく便宜上、図４は、図３からストア証明書３１６を繰り越す。ホストに送られるときにこのストア証明書３１６は、ストア公開キー（例えば図３の３２２）を含むことができる。
【００５９】
ホストにて、ブロック４１０はストア証明書を受信することを表す。図４に示す実施例では、ホスト１２０がストア証明書３１６を受信することができる。
【００６０】
ブロック４１２は、このストア証明書の有効性を判定するために、このストア証明書をＣＲＬと突き合わせてチェックすることを表す。例えば、ストア証明書が失効し、または他の形で無効化されている可能性がある。図４に示す実施例では、ホスト１２０がストア証明書３１６を、自らが保持するＣＲＬと突き合わせて、そのストア証明書を発行した証明機関が保持するＣＲＬと突き合わせて、または他の任意のエンティティが保持するＣＲＬと突き合わせてチェックすることができる。
【００６１】
ストア証明書が有効である場合、ホスト１２０は、破線４１４によって全体として表されるように図４に示す手順４００の残りの部分に関与することができる。しかし、失効または他の何らかの理由でストア証明書が無効である場合、ブロック４１２で、ホスト１２０は、手順４００へのこれ以上の関与を打ち切ることができる。
【００６２】
ブロック４１６は、ストア（例えば１０８）にホスト証明書（例えば３０４）を送信することを表す。本明細書に記載のツールは、ユーザー（例えば１２８）がホストにストアを挿入することに応答してブロック４１６を実行することができる。ホスト証明書の例を図３の３０４で示し、参照しやすいようにこのホスト証明書３０４を図４に繰り越す。図３で先に述べたように、このホスト証明書はホスト公開キー３１０を含むことができる。ホストからストアに送信されるときに、このホスト証明書は、図４に示すようにホスト公開キー３１０を含むことができる。
【００６３】
ブロック４１８は、このホスト証明書を受信することを表す。図４に示す実施例では、ストア１０８（またはストア１０８上で実行されているソフトウェア）がブロック４０４を実行することができる。
【００６４】
ブロック４２０は、ホスト証明書が依然として有効か、それとも失効しているかを判定するために、受信したホスト証明書をＣＲＬ（証明書失効リスト）と突き合わせてチェックすることを表す。図４に示す実施例では、ストア１０８がブロック４２０を実行することができる。一部の例ではブロック４２０は、ホスト証明書を、ホスト証明書を発行した証明機関（例えば図３の３０２）が保持するＣＲＬと突き合わせてチェックすることを含み得る。他の例では、ブロック４２０は、ホスト証明書をストア１０８などの他のエンティティが保持するＣＲＬと突き合わせてチェックすることを含み得る。これらの他の例では、この他のエンティティが保持するＣＲＬは、発行証明機関が保持するＣＲＬのローカルコピーとすることができる。
【００６５】
ホスト証明書が依然として有効であり、失効していない場合、ストアは、破線４１０によって全体として表されるように図４に示す手順４００の残りの部分を続行することができる。しかし、ホスト証明書が無効（例えば失効済み）であると判明した場合、ストアは手順４００にこれ以上関与しなくてよい。この場合、ストアによって実行されるどんな処理もブロック４２０で終了し得る。
【００６６】
図４は、ホストがストアにストア証明書をクエリーする（例えば４０４）一例を示すが、ストアがホストにホスト証明書をクエリーすることにより、プロセスの流れ４００を開始することもできる。簡潔にするために図４にはこれらの実施例を示さないが、これらの実施例では図４に示す役割および機能をホストとストアとの間で逆にすることができる。
【００６７】
図５は、ホストとストアとの間でセッションキーを確立するプロセス５００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図５に繰り越され、同じ参照符号で示される。さらに、限定するためではなく記載を簡略化するために、図５では様々なプロセスを列形式に配置して、ホストおよびストアがそれぞれ実行することができる手順５００の各部分を示す。
【００６８】
ブロック５０２は、ストア公開キー（例えば３２２）を使用してナンスを暗号化することを表す。ホストは、図４に示す手順４００を使用してストア公開キーを得ることができる。図５に示すように、ホストがストアに送信するためにナンスを暗号化することができる。
【００６９】
ブロック５０４は、暗号化されたナンスを送信することを表す。図５は、暗号化されたナンスを５０６で示し、ブロック５０４は、ホスト１２０が暗号化されたナンス５０６をストア１０８に送信することを含むことができる。
【００７０】
ストアにて、ブロック５０８は、暗号化されたナンス５０６を受信することを表す。図５に示す例では、ストアが暗号化されたナンスを受信する。
【００７１】
ブロック５１０は、このナンスを復号することを表す。ナンスがこのストアの公開キーを使用して暗号化されたと仮定して、ブロック５１０は、ナンスをこのストアの秘密キー（例えば３２０）を使用して復号することを含むことができる。
【００７２】
ブロック５１２は、ランダムセッションキーを生成することを表す。一部の実施例では、ブロック４３２は、ブロック５０８で受信した暗号化されたナンスに基づいてランダムセッションキーを生成することを表す。図５に示す例では、ストアがランダムセッションキーを生成する。他の実施例では、ブロック５１２は、ナンスに基づかずにランダムセッションキーを生成することを表す。これらの後者の実施例では、ストアは、自らをホストに対して認証するために、ナンスを他の何らかの形でホストに送り返すことができる。
【００７３】
ブロック５１４は、このランダムセッションキーを暗号化することを表す。ブロック５１４は、ホストに関連する公開キーを使用してセッションキーを暗号化することを含み得る。図５は、ホスト公開キーの例を３１０で繰り越す。ストアは、図４に示す手順４００を使用してホスト公開キーを得ることができる。
【００７４】
ブロック５１６は、暗号化されたセッションキーを送信することを表す。図５は、暗号化されたセッションキーを５１８で示す。図５に示す例では、ストアが暗号化されたセッションキー５１８をホストに送信することができる。
【００７５】
ブロック５２０は、暗号化されたセッションキー５１８を受信することを表す。図５に示す例では、ホストがこの暗号化されたセッションキーをストア１０８から受信する。
【００７６】
ブロック５２２は、セッションキー５１８を復号することを表す。ストアがホストの公開キーを使用してこのセッションキーを暗号化したと仮定して、ブロック５２２は、このホストの秘密キー（例えば３０８）を使用してセッションキーを復号することを含むことができる。
【００７７】
ブロック５２４は、このセッションキーを確認することを表す。ストアがナンスに基づいてセッションキーを生成する実施例では、ブロック５２４は、セッションキーがブロック５０４でストアに送信されたナンスに基づくものであることを確認することを含み得る。ストアがナンスに基づいてセッションキーを生成するのではなく、ナンスを返すことによりホストに対して認証する実施例では、ブロック５２４は、ストアが正しいナンスを返したことを確認することを含み得る。
【００７８】
ホストおよびストアが手順４００および５００を成功裏に完了したと仮定して、ホストおよびストアは、互いとの通信を保護することができる。例えばホストおよびストアは、このセッションキーを使用して両者間のその後の任意の通信を暗号化することができる。さらに、ホストおよびストアが手順４００および５００を完了すると、このホストおよびストアは互いに認証を終え、公開キーを互いに交換し終えることになる。より具体的には、図４および図５に示す例では、ホストがナンスを暗号化するためにストアの公開キー３２２を使用し（ブロック５０２）、次いでそのナンスはストアに送信される。これを受けて、ストアが、セッションキーを生成するためにこのナンスを使用し、このセッションキーをホストの公開キーを使用して暗号化する（ブロック５１４）。
【００７９】
図４および図５は、ホストおよびストアが、ホストおよびストアの下に見られる列に示される様々なブロックで表される処理を実行する例を示す。ただし、これらの例は限定的ではなく、本明細書の記載の範囲および精神から逸脱することなく、ホストおよびストアの役割を逆にできることに触れておく。図４に示す手順４００は、ホストとストアとが互いに相互認証することをもたらす。したがって、図４および図５に示す例は本明細書の記載の可能な実施例を限定しない。
【００８０】
図５の手順５００を説明したので、次に解説を、今度は図６で示すストア上のライセンス記憶域のより詳細な説明に向ける。
【００８１】
図６は、ライセンス記憶域を実装するのに適したデータ構造６００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図６に繰り越され、同じ参照符号で示される。
【００８２】
図２から思い起こすと、ストア（例えば１０８）は、ライセンス記憶域（例えば２１２）を含み得るコンピューター可読記憶媒体（例えば２１０）を含むことができる。このライセンス記憶域は、ストアに暗号を使用してバインドされる様々なライセンスに関係する情報を含む、データ構造６００を含むことができる。図６に示す例では、このライセンス記憶域は、ストア中に含まれるライセンスコンテンツのインスタンスに対応する１つまたは複数のライセンス記憶レコード６０２を含むことができる。専ら便宜上、図６は１つのレコード６０２を示すが、データ構造６００の諸実施例は、ストアがいくつのライセンスコンテンツのインスタンスを含むのかにもよるが、任意の数のレコード６０２を含むことができる。
【００８３】
レコード６０２をより詳しく見てみると、これらのレコードは、キー識別子フィールド６０４を含むことができる。これらのキー識別子フィールド６０４は、以下にさらに詳述するように、所与のライセンスコンテンツのインスタンスのライセンスを捜し出すためにデータ構造６００を検索することを助ける、検索フィールドまたはインデックスフィールドを提供することができる。専ら便宜上、図６は２つのキー識別子フィールド６０４ａおよび６０４ｎを示すが、データ構造６００の諸実施例は、ストアがいくつのライセンスコンテンツのインスタンスを含むのかにもよるが、任意の数のキー識別子フィールド６０４を含むことができる。
【００８４】
キー識別子フィールド６０４は、少なくとも１つのコンテンツキーフィールド６０６に関連付けられてよい。専ら便宜上、図５は２つのコンテンツキーフィールド６０６ａおよび６０６ｎを示すが、データ構造６００の諸実施例は、ストアがいくつのライセンスコンテンツのインスタンスを含むのかにもよるが、任意の数のコンテンツキーフィールド６０６を含むことができる。場合によっては、コンテンツ識別子６０４は、６０６ａで示すような複数の暗号化されたコンテンツキーのインスタンスに関連付けられてよい。
【００８５】
セキュリティーおよび保護を促進するために、このコンテンツキーをストアの公開キー（例えば３２２）を使用して暗号化することができ、それによりそれらのコンテンツキーはそのストアの秘密キーを使用してのみ復号することができる。別の例では、このコンテンツキーを、中間対称キーを使用して暗号化することができる。このようにしてたとえコンテンツキーが悪意を持った者によって何らかの形で流用されても、ストアの秘密キーがさらに漏洩しない限り、そのコンテンツキーはその悪意を持った者にとって無価値である。概してキー管理に関するベストプラクティスは、公開キー−秘密キー基盤の実装が極めて注意してハードウェア機構および／またはソフトウェア機構を経由した秘密キーの漏洩を防ぐことを要求する。例えばこれらのベストプラクティスは、セキュリティーで保護されたハードウェア実装を提案し得る。
【００８６】
コンテンツ識別子フィールド６０４は、少なくとも１つのポリシーフィールド６０８にも関連付けられてよい。専ら便宜上、図６は２つのポリシーフィールド６０８ａおよび６０８ｎを示すが、データ構造６００の諸実施例は、ストアがいくつのライセンスコンテンツのインスタンスを含むのかにもよるが、任意の数のポリシーフィールド６０８を含むことができる。
【００８７】
これらのポリシーフィールド６０８は、ホスト１２０などの再生デバイスが、ストアに意図的に暗号を使用してバインドされたライセンスを検証できるようにするポリシー情報を記憶することができる。さらに、このポリシーフィールドは、ストアに暗号を使用してバインドされたライセンスの条件に基づいて特定の操作（例えば再生、コピー、転送、等）が許可されているかどうかをホストが判定できるようにすることができる。
【００８８】
ポリシーフィールド６０８は、ライセンスコンテンツに対する、再生、コピー、転送、アクセス、または他の任意の操作の実行に適用される任意の制限または条件を示す情報を含むことができる。例えばライセンスサーバー１１６によって与えられるようなコンテンツのライセンスは、フィールド６０８中に記憶されるようなポリシーを指定することができる。制限の例には、コンテンツを再生できる回数、コンテンツをどの程度再生できるか、コンテンツが他のストアへのコピーでよいかどうか、等に関する制限が含まれ得る。
【００８９】
図６のデータ構造６００を説明したので、次に解説を、今度は図７で示す、ユーザーがアクセスするためにホスト上でコンテンツを選択するときに実行され得るプロセスの流れの説明に進める。
【００９０】
図７は、ユーザーがアクセスするためにホスト上でコンテンツを選択するときに実行され得る手順７００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図７に繰り越され、同じ参照符号で示される。さらに、限定するためではなく記載を簡略化するために、図７では様々なプロセスを列状に配置して、ホストおよびストアがそれぞれ実行することができる手順７００の各部分を示す。
【００９１】
ブロック７０２は、使用可能なコンテンツの選択項目をユーザーに提示することを表す。例えばホスト１２０は、ユーザーがホストにストア１０８を挿入した後に、この選択項目をメニュー形式でユーザーに提示することができる。ユーザーがホストにストアを挿入するとき、ホストは、ホストのコンテンツ／ライセンス記憶域（例えば２１２）を調べてホスト上の任意の使用可能なコンテンツを捜し出すことができる。次いでホストは、使用可能なコンテンツの別々のインスタンスに関連する識別子を抽出して、ユーザーに提示されるものとして使用可能なコンテンツの選択項目を投入することができる。この使用可能なコンテンツの選択は、ストア上の使用可能なコンテンツの別々のインスタンスをそれぞれが表す複数のグラフィック要素を含むことができる。
【００９２】
ユーザーは、選択されたコンテンツに対してホストが何らかの操作を実行することを要求することができる。例えばユーザーは、ホストが、選択されたコンテンツを再生し、選択されたコンテンツをコピーし、またはユーザーに提供される他の任意の同様の操作を実行することを要求することができる。
【００９３】
ブロック７０４は、ユーザーがコンテンツのインスタンスを選択したという指示を受信することを表す。例えば、ユーザーは入力デバイスを操作してグラフィック要素の１つに焦点を当て、何らかのコントロールをアクティブ化して焦点が当てられているグラフィック要素を選択することができる。ブロック７０４は、ユーザーが選択を行ったという電気信号、ソフトウェアイベント、または他の適当な通知を受信することを含む。
【００９４】
ブロック７０６は、ユーザーによって選択されたコンテンツに対する要求を送信することを表す。ブロック７０６は、ホスト１２０が、全体として７０８で示す要求をストア１０８に送信することを含むことができる。
【００９５】
ストアにて、ブロック７１０は、ユーザーによって選択されたコンテンツに対する要求を受信することを表す。ブロック７１０は、ストアがこの要求７０８をホストから受信することを含むことができる。
【００９６】
ブロック７１２は、ユーザーによって選択されたコンテンツに関連する１つまたは複数のコンテンツキーを特定することを表す。図７ならびに次の図８〜図１０に示すプロセスの流れでは、複数のコンテンツキーを処理できることに触れておく。図６は、コンテンツキーの例を６０６で示す。このコンテンツキーが暗号化された形式で記憶されている場合、ブロック７１２はコンテンツキーを復号することを含むことができる。より具体的には、コンテンツキーがストア公開キーを使用して暗号化された場合、ブロック７１２は、このコンテンツキーをストア秘密キー（例えば３２０）を使用して復号することを含むことができる。ストアとホストとは、例えば図４に示す手順４００を使用して、先に互いに認証していることを思い起こされたい。したがって、ホストとストアとの間にある程度の相互信頼が今では存在し、この信頼は、ストアが図７に示す技法を使用してホストにコンテンツキーを提供できるようにし得る。
【００９７】
ブロック７１４は、セッションキーを使用してこのコンテンツキーを暗号化することを表す。図５は、ブロック５１２で作成されるセッションキーの適当な例を示し、このセッションキーの暗号化されたバージョンを５１８で示す。図７は、ストアに割り当てられるものとしてこのセッションキーの持分を５１８ａで示す。このセッションキーはホストおよびストアにしか知られていないので、ストアは、このセッションキーを使用してコンテンツキーを暗号化することにより、コンテンツキーを安全にホストに伝送することができる。
【００９８】
ブロック７１６は、７１８で全体として示す暗号化されたコンテンツキーを送信することを表す。例えばストアが、暗号化されたコンテンツキー７１８をホストに送信することができる。
【００９９】
ホストにて、ブロック７２０は、ユーザーによって要求された操作を、ユーザーによって選択されたコンテンツに適用される任意のコンテンツポリシーと突き合わせて評価することを表す。図７は、コンテンツポリシーの例を６０８で繰り越す。一実施例では、このポリシーまたはライセンス全体は、そのライセンスを発行しまたは得た者に関連するキーを使用してサインすることができる。ブロック７２０は、コンテンツキーを復号する前に、このポリシーが改ざんされていないことをチェックするために、このポリシーを評価することを含むことができる。この評価は、ライセンスの署名を確認することを含むことができる。
【０１００】
図７に示す実施例では、ホストがブロック７２０を実行することができる。この実施例は、ホストがストアよりも多くの処理能力または処理機能を有する場合に適当であり得る。しかし、場合によっては状況が逆になり、ストアがホストよりも多くの処理能力を有する可能性もある。これらの場合には、次に図９に示す実施例が適当であり得る。
【０１０１】
図７は、図を簡略化するためにブロック形式で評価ブロック７２０を示す。ただし、この判定の追加の詳細を図８に示し、以下に説明する。
【０１０２】
ブロック７２０で実行される評価が肯定的であると仮定して、ブロック７２２は、暗号化されたコンテンツキー６１８を受信することを表す。図７に示す例では、ホストがこの暗号化されたコンテンツキーを受信することができる。ストアが自らの持分のセッションキー５１８を使用してコンテンツキーを暗号化する場合、ホストは、５１８ｂで示す自らの持分のセッションキーを使用してそのコンテンツキーを復号することができる。
【０１０３】
このコンテンツキーを使用して、ホストは、ブロック７０４で受信した要求に応じるために使用されるコンテンツにアクセスすることができる。このようにして、ホストはライセンスの署名を確認することにより、ポリシーが悪意を持って変更されていないことを検証することができる。
【０１０４】
一部の実施例では、上記に記載した中間セッションキーを使用することができる。これらの実施例では、ブロック７１４は、中間セッションキーを使用してコンテンツキー（例えば図６の６０６や図７の７１８）を暗号化することを含むことができる。これを受けて、ブロック７２２は、この中間キーを使用してコンテンツキーを復号することを含むことができる。中間セッションキーは、ストア秘密キー（例えば３２０）を使用して暗号化することができる。
【０１０５】
図８は、ユーザーによって要求された操作を、ユーザーによって選択されたコンテンツに適用される任意のポリシーと突き合わせて評価することのさらなる態様を提供する、プロセスの流れ８００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図８に繰り越され、同じ参照符号で示される。
【０１０６】
決定ブロック８０２は、ユーザーによって選択されたコンテンツがライセンス内のポリシーの適用対象であるかどうかを評価することを表す。適用対象ではない場合、プロセスの流れ８００は、いいえの分岐８０４を選択してブロック８０６に進むことができ、ブロック８０６はユーザーからの要求を承認することを表す。
【０１０７】
ブロック８０２に戻り、選択されたコンテンツがライセンスの適用対象である場合、プロセスの流れ８００は、はいの分岐８０８を選択して決定ブロック８１０に進むことができる。決定ブロック８１０は、ユーザーからの要求が、選択されたコンテンツに適用される任意のポリシー（例えば６０８）によって許可されているかどうか評価することを表す。
【０１０８】
ブロック８１０から、その要求が任意の適用されるポリシーによって許可されている場合、プロセスの流れ８００は、はいの分岐８１２を選択して決定ブロック８０６に進むことができる。ブロック８０６は、要求を承認することを表す。
【０１０９】
ブロック８１４は、ユーザーによって要求される操作を実行することを表す。例えば、ブロック８０６はユーザーからの要求の承認８１６を伝達することを含むことができ、プロセスの流れ８００は、この承認８１６に応答してブロック８１４を実行することができる。ブロック８１４は、図７のブロック７２２から復号されたコンテンツキー５０６を受信することを含むことができる。
【０１１０】
一部の可能な実施例では、ブロック８１４は、選択されたコンテンツをユーザーに向けて再生しまたは他の形で提供することを含むことができる。他の可能な実施例では、ブロック８１４は、ユーザーの要求を受けて、選択されたコンテンツをコピーしまたは転送することを含むことができる。これらの例は、可能な実施例を限定するためではなく、専ら説明を簡略化するために示す。
【０１１１】
決定ブロック８１０に戻り、適用されるポリシーによって要求が許可されていない場合、プロセスの流れ８００は、いいえの分岐８１８を選択して決定ブロック８２０に進むことができる。ブロック８２０は、ユーザーによって出された要求を、選択されたコンテンツに適用されるライセンスポリシーによって許可されていないとして拒否することを表す。ブロック８２０は、要求の拒否８２２を送信することを含むことができる。
【０１１２】
ブロック８２４は、ブロック８２０で拒否された要求を出したユーザーに、エラーメッセージまたは他の適当な通知を提示することを表す。一部の例ではブロック８２４は、要求が、選択されたコンテンツに適用されるポリシーによって許可されなかったので拒否されたとユーザーに示すことを含み得る。さらにブロック８２４は、要求された操作を許可することになるライセンスを得るための１つまたは複数のオプションをユーザーに提供することを含むことができる。
【０１１３】
ユーザーによって要求された操作を、任意の適用されるコンテンツポリシーと突き合わせて評価するためのプロセスの流れ８００を説明したので、いくつかの所見を述べておく。図７および図８に示す実施例は、ホストがストアよりも多くの処理能力を有する場合に適当であり得る。この状況では、要求をコンテンツポリシーと突き合わせて評価する役割（例えば図７および図８の７２０）をホストが負って、より処理能力が低いストアをこの処理から解放することができる。
【０１１４】
しかし他の状況では、ストアがホストよりも多くの処理能力を有する可能性もある。これらの例では、要求をコンテンツポリシーと突き合わせて評価する役割をストアが負い、それにより、より処理能力が低いホストをこの処理から解放することができる。図９および図１０は、これらの後者のシナリオを示す。
【０１１５】
図９は、ユーザーがアクセスするためにホスト上でコンテンツを選択するときに実行され得る手順９００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図９に繰り越され、同じ参照符号で示される。さらに、限定するためではなく記載を簡略化するために、図９では様々なプロセスを列形式に配置して、ホスト（例えば１２０）およびストア（例えば１０８）がそれぞれ実行することができる手順９００の各部分を示す。より具体的には、手順９００に関係する特定の処理ブロックは、上記に図７で手順７００に関して記載した特定の処理ブロックと同様であり得る。したがって記載が重複することを避けるために、これらの処理ブロックは、図９および図１０において同じ参照番号で示すが、図７および図８に示す構成要素とは異なる構成要素によって行われてもよい。
【０１１６】
手順９００についてより詳しく見ると、図７からブロック７０２、７０４、および７０６とともに、７０８で示すユーザーによって選択されたコンテンツに対する要求が繰り越されている。図７で上記に例示し説明したように、ホストがブロック７０２〜７０６を実行することができ、要求７０８をストアに出すことができる。これを受けて、先に図７で説明したようにストアがブロック７１０および７１２を実行することができる。しかし、図７に示す実施例とは異なり、図９の実施例は、ストアが評価ブロック７２２を実行できるようにする。したがって、図９は、要求評価ブロック７２０をホストに対応する列（図７に示すように）ではなくストアに対応する列に示す。
【０１１７】
評価ブロック７２０の結果が肯定的であると仮定して、次いでストアは、選択されたコンテンツに対するコンテンツキーを復号することを表すブロック７１２を実行することができる。ブロック７１２は、ストア秘密キー３２０によって復号することを含むことができる。さらに、図９は、図７からブロック７１４、７１６、および７２２とともに、暗号化されたコンテンツキー７１８を繰り越す。ブロック７１４、７１６、および７２２ならびにデータの流れ７１８についての前の説明は図９にも当てはまり、簡潔にするためにここでは繰り返さない。図９は、５１８ａおよび５１８ｂで示すセッションキーの各持分も繰り越す。
【０１１８】
図１０は、要求を任意の適用されるコンテンツポリシーと突き合わせて評価するためのプロセスの流れ１０００の態様を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図１０に繰り越され、同じ参照符号で示される。さらに、限定するためではなく記載を簡略化するために、図１０では様々なプロセスを列状に配置して、ホスト（例えば１２０）およびストア（例えば１０８）がそれぞれ実行することができるプロセスの流れ１０００の各部分を示す。
【０１１９】
図１０に示す実施例では、ストア（例えば１０８）が、要求評価ブロック７２０によって表される特定の処理を実行することができる。図８では、この処理はホスト（例えば１２０）によって実行されたことを思い起こされたい。しかし図１０では、次により詳細に説明するように、ホストおよび／またはストアが要求評価ブロック７２０に関連する処理の各部分を実行することができる。
【０１２０】
ブロック１００２は、要求で参照されるコンテンツがライセンスの適用対象であるかどうかを評価することを表す。コンテンツがライセンスの適用対象である場合、そのライセンスは、そのコンテンツのアクセスや配布の方法や可否を示す１つまたは複数のポリシー（例えば６０８）を典型的には指定する。コンテンツがライセンスの適用対象である場合、プロセスの流れ１０００は、はいの分岐１００４を選択して評価ブロック９０６に進むことができ、評価ブロック９０６は、その要求がそのコンテンツに適用される任意のポリシーによって許可されているかどうかを判定することを表す。
【０１２１】
評価ブロック１００６から、その要求が、適用されるポリシーによって許可されている場合、プロセスの流れ１０００は、はいの分岐１００８を選択して図７から繰り越されたブロック７１２に進むことができる。ブロック７１２は、選択されたコンテンツに対するコンテンツキーを、ストア秘密キー（例えば３２０）を使用して復号することを表す。ブロック７１４は、セッションキー（例えば５１８ａまたは中間セッションキー）を使用してこのコンテンツキーを暗号化することを表す。ブロック７１６は、この暗号化されたコンテンツキー（例えば７１８）をホストに送信することを表す。ホストにて、ブロック７２２は、このコンテンツキーを受信し、復号することを表す。
【０１２２】
ストアに戻り、ブロック１０１０は要求を承認することを表す。図１０に示すように、ストアはこの承認を１０１２で表すようにホストに伝えることができる。
【０１２３】
評価ブロック１００２に戻り、コンテンツがライセンスの適用対象ではない場合、プロセスの流れ１０００は、いいえの分岐１０１４を選択して直接ブロック１０１０に進むことができる。上記に説明したように、ブロック１０１０は要求を承認することを表す。
【０１２４】
評価ブロック１００６に戻り、要求が、適用されるポリシーによって許可されていない場合、プロセスの流れ１０００は、いいえの分岐１０１６を選択してブロック１０１８に進むことができ、ブロック１０１８は要求を拒否することを表す。図１０に示すように、ストアはこの拒否を１０２０で表すようにホストに伝えることができる。
【０１２５】
ホストにて、ブロック１０２２は、コンテンツに関係する要求された操作を実行することを表す。ブロック１０２２は、承認１０１２を受信することに応答して要求された操作を実行することを含むことができる。要求された操作を実行するために、ホストはブロック７２２で復号されたコンテンツキーを利用することができる。図１０は、コンテンツキーの暗号化されたバージョンを７１８で繰り越す。
【０１２６】
さらにホストにて、ブロック１０２４は、ユーザーにエラーメッセージまたは他の適当な情報を提示することを表す。例えばブロック１０２４は、要求された操作がそのコンテンツに適用されるライセンスおよび／またはポリシーによって許可されていないとユーザーに示すことを含み得る。ブロック１０２４は、要求された操作を実行するための１つまたは複数のライセンスを得ることができる方法または場所をユーザーに示すことを含むこともできる。
【０１２７】
要求を適用されるコンテンツポリシーと突き合わせて評価するためのプロセスの流れ１０００を説明したので、次に解説を、今度は図１１で示すトークン付与サービスを含む運用環境の説明に進める。
【０１２８】
図１１は、１１０２で全体として示すトークン付与サービスを含む運用環境１１００を示す。このトークンの例にはライセンスが含まれてよい。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図１１に繰り越され、同じ参照符号で示される。
【０１２９】
一部の例では、ユーザーは、例えばコンテンツ／メディアソース１０６に関連するダウンロードサーバーからコンテンツ１２２をダウンロードすることができる。図１１に示すように、コンテンツはストア１０８中に読み込むことができる。このコンテンツのうちの一部はライセンスコンテンツとすることができる。任意のライセンスコンテンツは、固有のコンテンツキー識別子または略して「キー」に関連することができる。例えば図１に示す実施例では、ライセンスサーバー（例えば１１６）は、これらのキーを生成するためにシード値を使用することができる。ライセンスサーバーおよびダウンロードサーバーが共通のコントロールを受けている場合、ライセンスサーバーはダウンロードサーバーを「信頼」することができ、シードをダウンロードサーバーと共有することができる。これらの例では、上記に示し説明した実施例が適当であり得る。
【０１３０】
しかし他の例では、再生しようとするコンテンツがライセンスサーバーによって信頼されたダウンロードサーバーからダウンロードされていない可能性もある。例えば、コンテンツはカードの製造元によってまたはストアを販売する小売業者によってストア（例えば１０８）上にあらかじめ読み込まれていてよく、これらの操作はライセンスサーバーとは別に管理され得る。これらの例では、トークン付与サービス１００２がライセンスサーバーとある程度同様の機能を提供する図１１に示す運用環境１１００が適当である可能性がある。トークン付与サービス１１０２は、互いを信頼しないエンティティ間のライセンス管理を可能にするある程度の間接的方法を、これらのエンティティ間で秘匿性の高い情報（例えばコンテンツキーを生成するためのシード）を共有することなく提供することができる。
【０１３１】
このトークン付与サービスについてより詳しく見ると、このトークン付与サービスは、カード上に記憶されるトークン１００４を生成することができ、このトークンを何らかのライセンスコンテンツのインスタンスに関連付けることができる。このトークンは、ストアが挿入される任意のホストが、適用される任意のライセンスポリシーと矛盾することなくそのライセンスコンテンツにアクセスすることが許可されることを示すことができる。
【０１３２】
このトークン付与サービスは、関係するコンテンツに関連するものとして、このトークンをストア１０８の製造元またはストアの小売業者に伝えることができる。これを受けて、ストアの小売業者または製造元は、このコンテンツおよび関係するトークンをストア上に読み込ませることができる。図１１は、表現コンテンツ１２２および１１０４ａで示す関連するトークンを含むストア１０８の一例を示す。このコンテンツとトークンとの間の関連性を、ブロック１２２とブロック１１０４ａとをつなぐ破線によって全体として示す。ただし、この例は限定的ではなく、専ら便宜上示す。ストア１０８は、任意の数のコンテンツ−トークンインスタンスを含むことができ、またはトークンに関連付けられていないコンテンツインスタンスを含むこともできる。
【０１３３】
線１１０６によって全体として表されるように、ユーザー１０２はホスト（例えば１２０）にストア１０８を挿入することができる。このホストは、参照番号２１８および２２２でそれぞれ示す１個または複数個のプロセッサーおよびコンピューター可読記憶媒体を含むことができる。これらの参照番号を、限定するためではなく便宜上図２から繰り越す。
【０１３４】
コンピューター可読記憶媒体２２２は、ストア１０８がホスト１２０に挿入されるときにストア１０８を処理することができるトークン検証モジュール１１０８を含むことができる。より具体的には、このトークン検証モジュール１１０８はトークン付与サービス１１０２と対話して、ホストがストア上にある任意のコンテンツ（例えば１２２）を再生できるかどうかを判定することができる。
【０１３５】
トークン検証モジュール１１０８とトークン付与サービス１１０２との間の対話は、図１１に示す処理のうちの少なくともいくつかを含むことができる。例えばブロック１１１０は、ストアが任意のトークンを含むかどうかを評価することを表す。ストアが少なくとも１つのトークン（例えば１１０４ａ）を含む場合、トークン検証モジュールははいの分岐１１１２を選択してブロック１１１４に進むことができ、このブロック１１１４は、ストア上で見つかった任意のトークンの検証を要求することを表す。図１１は１１０４ｂで、ストアから抽出され、検証のために送信されるものとしてトークンを表す。
【０１３６】
図および説明を簡略化するために、図１１は、トークン付与サービス１１０２がトークンの検証も行うシナリオを示す。ただし、これらのシナリオは限定的ではなく、本明細書の記載の範囲および精神から逸脱することなく、様々なエンティティがトークンを発行し、検証できる。
【０１３７】
図１１に示す例において、ブロック１１１６はトークン検証モジュールから受信した入力トークンを検証することを表す。ブロック１１１６は、そのトークンが有効か無効かの判定をもたらすことができる。例えば、このトークン検証モジュールは、そのトークンを特定のコンテンツに関連して発行したかどうかを判定することができ、またはそのトークンを解析してその有効性を評価することができる。
【０１３８】
このトークン付与サービスは、ホスト上のトークン検証モジュールに検証応答１１１８を返すことができ、この検証応答１１１８は、トークンが有効であると認められたかまたは無効であると認められたかを示す。トークン付与サービスがトークンを検証できた場合、ホストはそのトークンに関連するコンテンツを再生することができる。トークン付与サービスがトークンを検証できなかった場合、そのトークンを別の検証サービスに提供する、人間のユーザーにエラーメッセージを提示する、等、ホストは何らかの２次的なアクションを取ることができる。
【０１３９】
評価ブロック１１１０に戻り、ホストに挿入されたストアがストア上のライセンスコンテンツに関係するトークンを一切含まない場合、トークン検証モジュールは、いいえの分岐１１２０を選択してブロック１１２２に進むことができる。ブロック１１２２は、トークン付与サービス１１０２にトークンを要求することを表し、線１１２４がトークンに対する要求を表す。
【０１４０】
トークン付与サービスにて、ブロック１１２６は、要求１１２４に応答してトークンを生成し、その新しいトークンをストア上に含まれるコンテンツ（例えば１２２）に関連付けることを表す。ブロック１１２６は、そのコンテンツにアクセスするためのライセンスを得ることに関連する任意の支払いを受けるように、人間のユーザーに促すことを含むことができる。
【０１４１】
図１１は、ブロック１１２６で表される処理の結果として得られるトークン１１２８を示す。ブロック１１２６は、これらのトークンをトークン検証モジュール１１０８に転送することを含むことができる。図１１に示す例では、ブロック１１２２は、新しい１つまたは複数のトークン１１２８を受信することを含むことができるが、トークン検証モジュール１１０８内の別のプロセスがこのトークンを受信できることにも触れておく。
【０１４２】
図１１のトークン付与サービスに関係する運用環境を説明したので、次に解説を、今度は図１２で示す、ストアが一時ライセンスまたは一時証明書をホストに発行できる運用環境の説明に向ける。
【０１４３】
図１２は、ストア（例えば１０８）が一時ライセンスまたは一時証明書１２０２をホスト（例えば１２０）に発行できる運用環境１２００を示す。可能な実施例を限定するためではなく記載の便宜上、前に記載した一部の項目が図１２に繰り越され、同じ参照符号で示される。
【０１４４】
ストア１０８は１つまたは複数のライセンス（例えば１１８）を含むことができ、図１２はそのようなライセンスの２つの例を１１８ａおよび１１８ｎで示す。このライセンスは個々のコンテンツのインスタンス（例えば１０４）に関連することができ、図１２はコンテンツの２つの例を１０４ａおよび１０４ｎで示す。
【０１４５】
図１〜図１１に示し、本明細書に記載するシナリオのいずれにおいても、ストアがホストのＩＤを認証したと仮定して、ストアは一時ライセンスまたは一時証明書１２０２をホストに発行することができる。この一時証明書または一時ライセンス１２０２は、ライセンス１１８のいずれかのサブライセンスとみなすことができる。
【０１４６】
この一時証明書または一時ライセンス１２０２を使用して、ホストはこの一時ライセンスまたは一時証明書に対応するコンテンツにアクセスし、再生することができる。この一時証明書または一時ライセンスは、１２０４で表すように時間的に制限されてよい。時間的に制限されたライセンス１２０４は、ホストが定義済みの期間にわたってコンテンツにアクセスできるようにすることができ、この期間を過ぎるとこの証明書またはライセンスは期限切れになる。
【０１４７】
他の例では、一時証明書または一時ライセンス１２０２は、１２０６で表すようにコンテンツの特定の部分に対してのみアクセスを許可することができる。このタイプの一時ライセンスは一種のプレビューライセンスとみなすことができ、プレビューライセンスでは、ユーザーまたはホストが完全ライセンスを得るまでホストはコンテンツの特定の部分しか再生できない。このシナリオは、例えば小売業者や製造元によってストアにコンテンツをあらかじめ読み込まれている場合に発生し得る。これらの読み込み済みコンテンツのシナリオでは、ストアはプレビューライセンスのみを含み得るが、それでもホストを介して完全ライセンスを提供することができる。
【０１４８】
さらに他の例では、この一時証明書または一時ライセンス１２０２は、１２０８で表すようにコンテンツへの定義済み回数のアクセスを許可することができる。例えばこの一時ライセンスは、コンテンツを１回だけ再生することを許可することができ、それ以降はその一時ライセンスは期限切れになる。ただしこの一時ライセンスは、様々な実施例に見合った任意の回数の再生を許可することができる。
結論
本システムおよび方法を構造的特徴および／または方法的アクトに特有の用語で説明したが、添付の特許請求の範囲に定義のシステムおよび方法は必ずしも上記の具体的な特徴やアクトに限定されないと理解すべきである。むしろ、具体的な特徴およびアクトは、特許請求の範囲に記載のシステムおよび方法の例示的実施形態として開示したものである。
【０１４９】
さらに、本明細書に記載し例示した特定のデータの流れおよびプロセスの流れの図に関し、図に示したプロセスおよびサブプロセスを、本明細書の記載の精神および範囲から逸脱することなく、示した順序と異なる順序で実行できることにも触れておく。さらに、これらのデータの流れおよびプロセスの流れを特定の構成要素に関連して本明細書に記載したが、本明細書の記載の精神および範囲から逸脱することなく、これらのデータの流れおよびプロセスの流れを他の構成要素を用いて実行できることにも触れておく。
【図１】
0005450392.tif 000002
【図２】
0005450392.tif 000003
【図３】
0005450392.tif 000004
【図４】
0005450392.tif 000005
【図５】
0005450392.tif 000006
【図６】
0005450392.tif 000007
【図７】
0005450392.tif 000008
【図８】
0005450392.tif 000009
【図９】
0005450392.tif 000010
【図１０】
0005450392.tif 000011
【図１１】
0005450392.tif 000012
【図１２】
0005450392.tif 000013