(57)【特許請求の範囲】
【請求項１】
認証システムおよび１つまたは複数のクライアント・コンピュータ・システムを含むデータ配信システムにおいて、コンテンツ・データを機械束縛からユーザ束縛に変換する方法であって、
前記コンテンツ・データを前記１つまたは複数のクライアント・コンピュータ・システムに束縛することであって、前記１つまたは複数のクライアント・コンピュータ・システムに関連付けられたハードウェア識別子を暗号鍵として、前記コンテンツ・データを復号化するための１つまたは複数の平文鍵を暗号化し、１つまたは複数の機械束縛鍵を形成すること、
前記１つまたは複数の機械束縛鍵を、前記１つまたは複数の平文鍵に変換することであって、前記１つまたは複数の平文鍵が、前記１つまたは複数のクライアント・コンピュータ・システムに依存しないようにすること、
ユーザから与えられたパスワードを暗号鍵として、前記１つまたは複数の平文鍵を暗号化し、前記１つまたは複数のユーザ束縛鍵を形成することを備え、
前記パスワードを用いて前記１つまたは複数のユーザ束縛鍵を復号化し、前記１つまたは複数の平文鍵を得て、前記コンテンツ・データを復号化することを特徴とする方法。
【請求項２】
前記ユーザから与えられたパスワードの入力は、前記コンテンツ・データにアクセスするための前記ユーザ束縛鍵の使用を許可する前に、前記１つまたは複数のクライアント・コンピュータ・システムから要求されることを特徴とする請求項１に記載の方法。
【請求項３】
前記１つまたは複数の平文鍵を暗号化し、前記１つまたは複数のユーザ束縛鍵を形成することは、前記１つまたは複数のクライアント・コンピュータ・システムにおいて、前記コンテンツ・データに前記ユーザのプライベート情報を関連付けて、前記コンテンツ・データの再生が前記ユーザのプライベート情報の表示を引き起こすようにすることを特徴とする請求項１に記載の方法。
【請求項４】
前記１つまたは複数のクライアント・コンピュータ・システム以外のコンピュータ・システムにおいて、前記コンテンツ・データの再生をユーザが要求する状態の検出に応答して、コンテンツ・データを機械束縛からユーザ束縛に変換することを特徴とする請求項１に記載の方法。
【請求項５】
前記１つまたは複数の平文鍵は、秘密鍵であり、
前記コンテンツ・データを復号化するためのマスタ鍵を、前記秘密鍵と対となる公開鍵を用いて暗号化して媒体鍵を形成し、前記１つまたは複数のクライアント・コンピュータ・システムに格納することを備え、
前記１つまたは複数の平文鍵を用いて前記媒体鍵を復号化し、前記マスタ鍵を得ることを特徴とする請求項１に記載の方法。
【請求項６】
前記１つまたは複数のユーザ束縛鍵を復号化するための復号鍵を、前記パスワードを用いて暗号化して登録鍵を形成し、前記登録鍵を復号化し、前記復号鍵を得ることを特徴とする請求項５に記載の方法。
【発明の詳細な説明】
【０００１】
（発明の分野）
本発明は、ディジタル・データへの無許可アクセスを制限するシステムに関し、具体的には、そのようなディジタル・データへのアクセスを特定の計算機または特定のユーザのいずれかに制限する機構と、制限されたアクセスを特定の計算機から特定のユーザに変換する機構に関する。
【０００２】
（発明の背景）
無許可アクセスからのディジタル・データの保護は、ソフトウェア・ベンダがポータブル・データ記憶媒体でのコンピュータ・ソフトウェアの配布を初めて開始した時からの、ソフトウェア・ベンダの主たる懸念であった。そのような保護は、現在、他の形態のディジタル・データもポータブル・データ記憶媒体で搬送されるので、新たな重要性を持つようになった。たとえば、現在のパーソナル・コンピュータは、オーディオ・コンパクト・ディスク（ＣＤ）およびディジタル・ビデオ・ディスク（ＤＶＤ）などのいたるところにあるオーディオビジュアル・エンターテイメントにも使用されるデータ記憶媒体を読み取り、書き込む。したがって、一般的なパーソナル・コンピュータは、非常に価値のあるデータを複製することができ、オリジナル・データの正確なコピーを、知人に簡単に配布することができるようになる。
【０００３】
最近の開発の１つすなわちインターネットによって、簡単にコピー可能なディジタル・データの商業的価値に対する脅威が非常に大きくなった。現在、個人が、価値のあるディジタル・データを数百万人による無料コピーのためにポストすることができ、頻繁にそうしている。そのようなポストは、無許可コピーを防止するすべての試みの破滅的な失敗を表す。
【０００４】
ソフトウェアの無許可コピーを防ぐ初期の試みの１つが、ソフトウェアを実行するために、ハードウェア・デバイスをコンピュータに取り付けることを必要とすることであった。そのようなデバイスを、一般に「ドングル」と称した。ドングルには、実行の前にソフトウェアによって検査される識別データが含まれるか、暗号データおよび／または実行の前にソフトウェアを解読する論理が含まれるかのどちらかであった。ドングルは、他のコンピュータにドングルを取り付けることによって、ソフトウェアを別のコンピュータに転送できるように、通常は、外部に取り付けられていた。
【０００５】
ドングルは市場では大きい成功を実現しなかった。理由の１つが、複数のソフトウェア製品が各コンピュータにインストールされる可能性があることである。その結果、多数のドングルを各コンピュータに取り付けなければならなくなる。もう１つの理由は、新しいハードウェア・デバイスをコンピュータに追加することが、意図されない結果を有し、コンピュータの通常動作に干渉する可能性があることである。第３の理由は、多くの人が、複数のコンピュータを有し、複数のドングルの１つを定期的にあるコンピュータから別のコンピュータに移動することが、非常に不便であることである。一般に、ユーザは、競合するソフトウェア・ベンダが追加ハードウェアを必要としない場合に、ソフトウェアを実行するためにコンピュータに新しいハードウェアを取り付けることを好まない。
【０００６】
たとえばドングルの使用による、機械束縛は、一般に、コンピュータ・ソフトウェアではなくオーディオビジュアル・コンテンツを購入する人にとって、容認できないものである。おそらくはオーディオビジュアル・コンテンツの歴史的配布媒体（たとえば、ビニール・アルバム、オーディオＣＤ、ビデオ・テープ、ＤＶＤなど）のポータブルな性質の結果として、一般消費者が、購入者が所有するどの装置でもオーディオビジュアル・コンテンツを再生することが許容されることを期待していると思われる。たとえば、特定の映画のビデオ・カセット・テープの購入者は、互換フォーマットのどのビデオ・カセット・プレイヤでもその映画を観ることができることを期待する。したがって、オーディオビジュアル・コンテンツの厳密な機械束縛は、一般に、一般消費者によって容認可能ではない。
【０００７】
ソフトウェア・ベンダがソフトウェアの無許可コピーをそれによって妨害することを試みるもう１つの機構が、ソフトウェアを特定のユーザに束縛することである。たとえば、ソフトウェアの成功裡の実行を、特定のユーザによるパスワードの入力を条件とするものとすることができる。それによって、一般に、不十分なセキュリティがもたらされる。というのは、ユーザが、ソフトウェアの無許可コピーと共にパスワードを友人または同僚に伝えることができるからである。さらに、ユーザによってアクセスされる各ソフトウェア製品および／または各オーディオビジュアル作品のパスワードを覚えるようにユーザに要求することは、ユーザにとってかなりの不便になる。
【０００８】
一般に、コピー・プロテクトは、ソフトウェアおよび／またはオーディオビジュアル作品などのディジタル・データのベンダのためになるが、購入者のためにはならないことに留意されたい。したがって、そのようなディジタル・データの購入者は、不便に対する相対的に低い許容度を有する。その結果、一般消費者は、より少ないコピー・プロテクトを使用するベンダからデータを購入する傾向を有する。
【０００９】
必要なものは、ディジタル記憶媒体の著作権保護可能なコンテンツが、それによって無許可コピーから保護されると同時に、そのようなディジタル・ストレージの所有者にコンテンツの使用および享受の正当な妨げられない便利さを与える機構である。
【００１０】
（発明の要約）
本発明によれば、データ自体を修正せずに、コンテンツを機械束縛状態からユーザ束縛状態に変換することができる。データ自体を修正するのではなく、コンテンツにアクセスするのに使用される鍵を、機械束縛状態からユーザ束縛状態に変換する。具体的に言うと、鍵は、パスポート・データ構造に保持され、このパスポート・データ構造が、機械束縛またはユーザ束縛のいずれかを表すことができる。
【００１１】
機械束縛では、パスポートに、秘密鍵と、秘密鍵の対とされた公開鍵を含む証明書が含まれる。秘密鍵は、パスポートが束縛されるコンピュータ・システムに固有のハードウェア識別子を使用して暗号化される。ハードウェア識別子は、１つまたは複数のハードウェア・デバイスに固有であり、好ましくは、束縛を意図されたコンテンツにアクセスすることができるコンピュータ・システムに関して一意である。公開鍵は、コンテンツの暗号化に用いられるマスタ鍵を暗号化し、機械束縛パスポートの証明書と共に、コンテンツに含まれる媒体鍵をそれから作成するのに使用される。その結果、秘密鍵が、媒体を解読し、マスタ鍵を復元し、したがってコンテンツを解読するのに必要になる。特定のコンピュータ・システムのハードウェア識別子を用いて秘密鍵を暗号化することによって、コンテンツが、効果的にそのコンピュータ・システムに束縛される。というのは、そのコンピュータのハードウェア識別子が、マスタ鍵を回復するのに必要になるからである。
【００１２】
ユーザ束縛でも、パスポートに、秘密鍵と、秘密鍵の対とされた公開鍵を含む証明書が含まれる。ユーザ束縛パスポートでは、ユーザ供給パスワードを用いて秘密鍵が暗号化されることを除いて、機械束縛パスポートとほとんど同一の形で秘密鍵が保護される。したがって、パスワードが、秘密鍵を解読するのに必要であり、この秘密鍵が、媒体鍵からマスタ鍵を解読するのに必要であり、マスタ鍵が、コンテンツを解読するのに必要である。パスワードを要求することによって、コンテンツが、パスワードを所有するユーザに束縛される。
【００１３】
コピー・プロテクトは、著作権の所有者のためになり、著作権保護された作品の消費者には不便なので、自分のパスワードを共用する意欲をくじくものが、ユーザ束縛パスポートに含まれる。具体的に言うと、ユーザ束縛パスポートには、ユーザによって注意深く保護されることが期待される情報が含まれる。たとえば、ユーザ・パスポートに、クレジット・カード番号、有効期限、カード所有者名など、クレジット・カードに資金を請求するのに十分な、ユーザのクレジット・カード情報を含めることができる。請求先住所も含めることができる。コンテンツの支払中に、プライベート・ユーザ情報が表示される。したがって、ある人のパスポートを共用することに、その人の信用を共用することが含まれる。
【００１４】
ユーザには、機械束縛パスポートまたはユーザ束縛パスポートのいずれかを有するという選択肢が与えられる。機械束縛パスポートは、コンテンツを特定の機械でのみ再生できるので、より制限されている。これは、単一のコンピュータだけへのアクセスを有する人、または、コンピュータ・ネットワークを介する著作権保護された作品の購入のプロセス全体を一般的に信用できない人に適当である。ユーザ束縛パスポートは、制限がより少なく、コンピュータ・システムからコンピュータ・システムへ移動することができる。しかし、ユーザ束縛パスポートは、ユーザが、より重要なプライベート情報を提供することを必要とする。新規ユーザが、機械束縛パスポートを選び、後にユーザ束縛パスポートへのアップグレードを望むことが予期される。これは、たとえば、ユーザが、コンテンツが既に束縛されているコンピュータ・システムを売るか変更する場合に、必要になる可能性がある。
【００１５】
機械束縛パスポートは、束縛されたコンテンツを修正せずにユーザ束縛パスポートにアップグレードすることができる。具体的に言うと、機械束縛パスポートのオリジナルの秘密鍵および公開鍵が、新たに作成されるユーザ・パスポートで使用され、コンテンツの再暗号化が不要になる。具体的に言うと、機械束縛パスポートの秘密鍵が、平文形式で、ユーザ束縛パスポートに含まれ、ユーザ供給パスワードを使用して暗号化されて、秘密鍵がユーザに束縛される。さらに、プライベート・ユーザ情報が、収集され、検証され、ユーザ束縛パスポートに含められる。したがって、ユーザ供給パスワードによって、秘密鍵が解読されて、ハードウェア識別子を使用する機械束縛パスポートの秘密鍵の解読からもたらされるものと同一の平文の秘密鍵が提供される。したがって、前に機械束縛されていたコンテンツを、ユーザ束縛パスポートを使用して解読することができるようになる。さらに、ユーザ束縛パスポートは、特定のハードウェア識別子に束縛されないので、コンテンツおよびユーザ束縛パスポートを、コンピュータ・システムからコンピュータ・システムに移動することができ、ユーザのパスワードを入力し、ユーザのプライベート情報を見るのに必要な労力だけで再生することができる。
【００１６】
さらに、機械束縛パスポートのアップグレードを、コンテンツが束縛されている機械以外の機械で機械束縛コンテンツを再生する試みが行われたことが検出された時に、自動的に開始することができる。
【００１７】
時には、一人のユーザが複数のパスポートを有する場合がある。一部のコンテンツを、機械束縛パスポートに束縛されたものとし、残りのコンテンツを、その後にユーザ束縛パスポートに束縛されたものとすることができる。機械束縛コンテンツのアップグレードには、前に機械に束縛されていた鍵をユーザ束縛パスポートに追加し、パスポートに鍵の複数の組が含まれるようにすることが含まれる。その結果、同一のパスポートを使用して、２つの別々のパスポートの下で獲得されたコンテンツを再生することができる。
【００１８】
（詳細な説明）
本発明によれば、データ自体を修正せずに、コンテンツを機械束縛状態からユーザ束縛状態に変換することができる。データを修正するのではなく、コンテンツのアクセスに使用される鍵を、機械束縛状態からユーザ束縛状態に変換する。具体的に言うと、鍵は、パスポート・データ構造に保持され、このパスポート・データ構造が、機械束縛またはユーザ束縛のいずれかを表すことができる。
【００１９】
ディジタル・データ配布システム１００（図１）に、広域コンピュータ・ネットワーク１０６を介して互いに結合された認可システム１０２とクライアント・コンピュータ・システム１０４が含まれる。１実施形態では、広域コンピュータ・ネットワーク１０６が、インターネットである。広域コンピュータ・ネットワーク１０６が図示されているが、本明細書で説明するシステムの原理が、ローカル・エリア・ネットワークなどの他のネットワークに同等に適用可能であることを諒解されたい。認可システム１０２には、コンテンツ・データベース１２２と証明書データベース１２４が含まれる。コンテンツ・データベース１２２には、認可システム１０２からの配布に使用可能なディジタル・データ・コンテンツが含まれる。そのようなコンテンツには、たとえば、オーディオビジュアル作品および／またはコンピュータ・ソフトウェアを表すデータを含めることができる。
【００２０】
コンテンツ・データベース１２２が、認可システム１０２に含まれるものとして図示されているが、コンテンツ配布をアクセス認証と分離し、コンテンツ・データベース１２２を異なるサーバ・システムに配置することが有利である場合があることを諒解されたい。利点の１つが、コンテンツ配布に大量のデータの転送が伴う傾向があることである。そのような転送は、配布されるコンテンツを受信するクライアント・コンピュータ・システムの近くに配置された分散配布サーバから配布されることから利益を得る。逆に、認証には、高速データ転送に依存するのではなく、システムワイドの認証の集中データベースから利益を得る多数の少量のトランザクションが伴う。しかし、説明を単純にするために、サーバ・タスクと認証タスクの両方が、認可システム１０２によって処理され、認可システム１０２に、コンテンツ・データベース１２２と証明書データベース１２４の両方が含まれる。
【００２１】
証明書データベース１２４には、コンテンツ・データベース１２２の前に配布されたコンテンツが、特定のクライアント・コンピュータ・システムまたは特定の人間の購入者のいずれかに対して保護される形を表すデータが含まれる。証明書データベース１２４に保管される情報のタイプを下でより完全に説明する。簡単に言うと、その情報には、たとえば既知のＩＴＵ−Ｔ  Ｘ．５０９証明書データ構造などの既知の認証データ構造であるディジタル証明書が含まれる。
【００２２】
認可システム１０２には、認可システム１０２内で実行中の１つまたは複数のコンピュータ・プロセスのすべてまたは一部である認証サーバ１２６も含まれる。認証サーバ１２６は、広域コンピュータ・ネットワーク１０６を介して要求を受信し、そのような要求をサービスする。そのような要求には、配布されたコンテンツの機械束縛セキュリティの要求、配布されたコンテンツのユーザ束縛セキュリティの要求、および、下でより完全に説明する形での、配布されたコンテンツのセキュリティの変換の要求が含まれる。
【００２３】
クライアント・コンピュータ・システム１０４には、獲得されたコンテンツのデータベース１４４、ユーザ・データベース１４６、パスポート１４８などの１つまたは複数のパスポート、ハードウェア識別子１４０、およびコンテンツ・プレイヤ１４２が含まれる。獲得されたコンテンツのデータベース１４４には、コンテンツ・データベース１２２およびおそらくは類似するコンテンツ・データベースから獲得したコンテンツが含まれる。そのような獲得されたコンテンツは、下でより完全に説明する形で、１つまたは複数のパスポートを使用して保護される。
【００２４】
ユーザ・データベース１４６には、クライアント・コンピュータ・システム１０４の１人または複数のユーザに関する情報が保管される。そのような情報には、たとえば、ユーザが自分自身を認証するのに使用することができるパスワードが含まれる。「パスワード」は、本明細書では、認証の目的でユーザによって供給されるデータを記述するのに使用される。したがって、「パスワード」は、本明細書では、単一単語パスワードと、時々一般にパスフレーズとも称する複数単語パスワードの両方を記述するのに使用される。
【００２５】
パスポート１４８などのパスポートは、獲得されたコンテンツのデータベース１４４内の獲得されたコンテンツを保護する機構を表す。パスポートは、認証サーバ１２６によって発行される。パスポートによって、下でより完全に説明する形で、特定のクライアント・コンピュータ・システムおよび／または特定のユーザに対してコンテンツを保護することができる。
【００２６】
ハードウェア識別子１４０によって、証明書データベース１２４内でクライアント・コンピュータ・システム１０４が一意に識別される。さらに、ハードウェア識別子１４０は、クライアント・コンピュータ・システム１０４内で変更することが困難すなわち読取専用のデータから導出される。たとえば、ハードウェア識別子１４０は、（ｉ）クライアント・コンピュータ・システム１０４のプロセッサのシリアル・ナンバ、（ｉｉ）クライアント・コンピュータ・システム１０４が広域ネットワーク１０６にアクセスするのに用いるネットワーク・アクセス・カードのＭＡＣアドレス、および（ｉｉｉ）クライアント・コンピュータ・システム１０４にインストールされた１つまたは複数のハード・ディスク・ドライブのシリアル・ナンバなどの、クライアント・コンピュータ・システム１０４の１つまたは複数のハードウェア・コンポーネントに固有のデータのハッシュとすることができる。この例示的実施形態では、ハードウェア識別子１４０が、米国カリフォルニア州サン・ノゼのＰＡＣＥ  Ａｎｔｉ−Ｐｉｒａｃｙ社から入手可能なＩｎｔｅｒｌｏｋ（登録商標）ソフトウェア・ツール・セットを使用して形成される。
【００２７】
コンテンツ・プレイヤ１４２は、クライアント・コンピュータ・システム１０４内で実行中の１つまたは複数のコンピュータ・プロセスのすべてまたは一部であり、獲得されたコンテンツのデータベース１４４からの獲得されたコンテンツ（本明細書では、時々単純に「獲得されたコンテンツ」または「獲得されたコンテンツ１４４」と称する）を再生する。たとえば、獲得されたコンテンツが、オーディオ作品を表す場合に、コンテンツ・プレイヤ１４２は、獲得されたコンテンツのデータを、クライアント・コンピュータ・システム１０４のサウンド・カードおよびオーディオ・スピーカを介する再生に適当なフォーマットのデータに変換する。同様に、獲得されたコンテンツがオーディオビジュアル作品を表す場合に、コンテンツ・プレイヤ１４２は、獲得されたコンテンツのデータを、クライアント・コンピュータ・システム１０４のサウンド・カードおよびオーディオ・スピーカを介する再生およびビデオ・ディスプレイへの再生に適当なフォーマットのデータに変換する。さらに、獲得されたコンテンツが、コンピュータ・ソフトウェアである場合には、コンテンツ・プレイヤ１４２が、獲得されたコンテンツからコンピュータ命令をデコードし、これらのデコードされたコンピュータ命令を、クライアント・コンピュータ・システム１０４に実行させる。獲得されたコンテンツには、一般に、（ｉ）音楽、他の記録された音声、動画、および静止画などのオーディオビジュアル作品、（ｉｉ）ＡＳＣＩＩテキスト、リッチ・テキスト・フォーマット（ＲＴＦ）、Ｍｉｃｒｏｓｏｆｔ（登録商標）Ｗｏｒｄ、およびＡｄｏｂｅ（登録商標）Ａｃｒｏｂａｔ（登録商標）のｐｏｒｔａｂｌｅ  ｄｏｃｕｍｅｎｔ  ｆｏｒｍａｔ（ＰＤＦ）などの文書、および（ｉｉｉ）実行可能コンピュータ・ソフトウェアを制限なしに含む、あらゆる種類のデータを含めることができる。
【００２８】
コンテンツ・プレイヤ１４２を、図２に詳細に示す。コンテンツ・プレイヤ１４２には、セキュリティ・マネージャ２０６によって供給されるマスタ鍵２０８を使用して獲得されたコンテンツ１４４を解読する解読器２０２が含まれる。この例示的実施形態では、解読器２０２が、効率のためにＦＩＰＳ  ４６−２  ＤＥＳまたはＲＳＡ  Ｓｅｃｕｒｉｔｙ社のＲＣ４などの対称鍵解読アルゴリズムを使用する。この実施形態で効率が重要であるのは、獲得されたコンテンツを、リアルタイム再生のためにデコーダ２０４によって解読とデコードの両方を行わなければならないからである。本明細書で使用するリアルタイム再生は、コンテンツ・プレイヤ１４２による再生が、時間の単位ごとに、獲得されたコンテンツ１４４からの解読されデコードされた最小量のデータを必要とすることを意味する。たとえば、獲得されたコンテンツ１４４がオーディオ作品を表す場合に、コンテンツ・プレイヤ１４２は、一般に、ＣＤ品質のステレオ・オーディオの場合に、４４１００オーディオ・サンプル毎秒すなわち１７６４００バイト毎秒を解読し、デコードしなければならない。
【００２９】
対称鍵解読は、獲得されたコンテンツ１４４の解読での効率をもたらすが、これは、マスタ鍵２０８が、何らかの形でサーバ・プロセス１２６（図１）から通信されることを必要とし、サーバ・プロセス１２６は、マスタ鍵２０８（図２）を使用してコンテンツ・プレイヤ１４２へのコンテンツを暗号化する。セキュリティ・マネージャ２０６は、保護された形でマスタ鍵２０８を導出する。
【００３０】
セキュリティ・マネージャ２０６を、図３Ａおよび３Ｂに詳細に示す。図３Ａは、ユーザ束縛パスポート１４８Ａからのマスタ鍵２０８の導出を示し、図３Ｂは、機械束縛パスポート１４８Ｂからのマスタ鍵２０８の導出を示す。セキュリティ・マネージャ２０６には、解読器３０６が含まれ、解読器３０６は、獲得されたコンテンツ１４４に含まれる媒体鍵３０２からマスタ鍵２０８を解読するのに秘密鍵３０４を使用する。秘密鍵３０４は、証明書データベース１２４（図１）内の秘密鍵／公開鍵対の秘密鍵である。解読器３０６（図３Ａ）は、たとえばＲＳＡ  Ｓｅｃｕｒｉｔｙ社の既知のＲＳＡ公開鍵アルゴリズムなどの非対称鍵解読を使用する。
【００３１】
対称鍵暗号化／解読と非対称鍵暗号化／解読は、既知であるが完全を期してここで簡単に説明する。対称鍵暗号化では、データの暗号化と解読に同一の鍵を使用する。たとえば、データが、鍵と称する特定のデータ・パターンを使用して暗号化される。データを暗号化することによって、データが、多少ランダムに見える形でスクランブルされ、データが判読できないように見えるようになる。暗号化されたデータは、同一の特定の鍵を使用してデータを解読することによって、元の「平文」状態に戻すことができる。
【００３２】
非対称鍵暗号化では、互いに関連して対を形成する２つの鍵を使用する。一方の鍵は、秘密に保たれ、他方の鍵は、公開される。従って、鍵対を、時々秘密鍵／公開鍵対と称する。いずれかの鍵を用いる暗号化によって、暗号化されたデータが形成され、このデータは、対の他方の鍵を使用して解読することができる。したがって、対の鍵を、時々、一般に、互いに相応すると称する。コンテンツ・プレイヤ１４２（図１）は、その秘密鍵を使用してデータを暗号化することによって、データに暗号的に署名することができる。コンテンツ・プレイヤ１４２の公開鍵を持つ者は誰でも、コンテンツ・プレイヤ１４２の公開鍵を使用してそのデータを解読することによって、署名を検証することができる。同様に、コンテンツ・プレイヤ１４２の公開鍵を持つ者は誰でも、公開鍵を使用してデータを暗号化することができ、そのデータは、コンテンツ・プレイヤ１４２の秘密鍵を使用しなければ解読することができない。たとえば、サーバ・プロセス１２６が、媒体鍵３０２を形成するために鍵対の公開鍵を使用し、パスポート１４８Ａに対の秘密鍵を含めることによって、パスポート１４８Ａのマスタ鍵２０８（図３）を暗号化する。その結果、媒体鍵３０２は、パスポート１４８Ａ内に保管された秘密鍵すなわち、プレイヤの秘密鍵３０４を使用して解読することができる。
【００３３】
セキュリティ・マネージャ２０６は、ユーザ束縛パスポート１４８Ａ（図３Ａ）または機械束縛パスポート１４８Ｂ（図３Ｂ）のいずれかから秘密鍵３０４を得る。パスポートは、たとえば媒体鍵３０２などの媒体鍵を解読するのに使用される、獲得されたコンテンツの秘密鍵をユーザまたはコンピュータ・システムに束縛するデータ構造である。ユーザ束縛パスポートは、特定のユーザに束縛され、ユーザが獲得したコンテンツの再生を望むコンピュータ・システムに移送することができる。したがって、ユーザ束縛パスポートを、時々、フル・パスポートまたはポータブル・パスポートと称する。機械束縛パスポートは、獲得したコンテンツの再生のために特定のコンピュータ・システムに束縛され、一般に、そのコンピュータ・システムのどのユーザでも使用することができる。
【００３４】
セキュリティが、媒体鍵３０２および秘密鍵３０４と共に解読器３０６によって提供されることに留意されたい。パスポート１４８Ａおよび１４８Ｂは、秘密鍵３０４をユーザまたは特定のコンピュータ・システムのいずれかに束縛することができるデータ構造を提供する。そのような束縛によって、獲得されたコンテンツのポータビリティが制限されると同時に、ユーザに、どのタイプの束縛が便利であるかに関する選択肢が与えられる。言い換えると、ユーザは、機械束縛パスポートまたはユーザ束縛パスポートのいずれかを選択することができる。
【００３５】
秘密鍵束縛に関するこの柔軟性の理解および認識を容易にするために、パスポートの構造を説明する。パスポート１４８（図１）は、機械束縛またはユーザ束縛のいずれかとすることができる。パスポート１４８を、図２２に詳細に示すが、図２２には、機械束縛パスポートとユーザ束縛パスポートの両方に共通するコンポーネントが示されている。パスポート１４８には、パスポート情報フィールド２２０４、署名アルゴリズム・フィールド２２０６、および署名フィールド２２０８が含まれる。
【００３６】
パスポート情報フィールド２２０４には、パスポート１４８に束縛された獲得されたコンテンツを解読することができる秘密鍵を含む、パスポートの実質的な情報を表すデータが含まれる。パスポート情報フィールド２２０４に保管されるデータのタイプおよび構造は、パスポートのタイプに依存する。たとえば、パスポート１４８Ａ（図３Ａ）は、ユーザ束縛のフル・パスポートであり、これには、図２３に関して下で説明するタイプおよび構造のパスポート情報２２０４Ａが含まれる。パスポート１４８Ｂ（図３Ｂ）は、機械束縛パスポートであり、これには、図２４に関して下で説明するタイプおよび構造のパスポート情報２２０４Ｂが含まれる。
【００３７】
署名アルゴリズム・フィールド２２０６および署名フィールド２２０８が、集合的に、パスポート情報フィールド２２０４の暗号的署名を指定する。署名アルゴリズム・フィールド２２０６では、パスポート情報フィールド２２０４に暗号的に署名するのに使用された、特定のアルゴリズムおよびそのパラメータが指定される。署名フィールド２２０８には、認証サーバ１２６の秘密鍵を使用した、結果の暗号的署名を表すデータが含まれる。署名アルゴリズム・フィールド２２０６および署名フィールド２２０８は、パスポート情報２２０４に保管されたデータが不正に変更されたかどうかを判定する効果的な機構を提供する。たとえば、クラッカが、パスポート情報２２０４に保管されたデータを変更した場合に、クラッカは、その不正変更が検出されなくなるように、対応する署名を作成しなければならない。しかし、認証サーバ１２６の秘密鍵は、注意深く保護され、厳密に秘密に保たれるので、そのような暗号的署名の偽造は特に困難である。
【００３８】
機械束縛パスポート１４８Ｂのパスポート情報２２０４Ｂ（図２４）を、図３Ｂに関して下で説明する。パスポート情報２２０４Ａ（図２３）には、次のデータ・コンポーネントが含まれる：（ｉ）ユーザ証明書２３０２、（ｉｉ）秘密鍵２３０４、（ｉｉｉ）プライベート・ユーザ情報２３０６、および（ｉｖ）登録鍵２３０８。
【００３９】
ユーザ証明書２３０２は、ユーザがそれによって認証されるディジタル証明書である。ディジタル証明書およびその認証での使用は、既知である。１実施形態では、ユーザ証明書２３０２が、ＩＴＵ−Ｔ  Ｘ．５０９ディジタル証明書の形である。
【００４０】
ユーザ証明書２３０２には、公開鍵２３２０、有効性日付２３２２、証明書通し番号２３２４、およびディジタル署名２３２６が含まれる。公開鍵２３２０と秘密鍵２３０４は対とされている。ユーザ束縛パスポート１４８Ａが束縛されたユーザにコンテンツを束縛するために、マスタ鍵２０８が、公開鍵２３２０を使用して暗号化され、秘密鍵２３０４だけが、媒体鍵３０２からマスタ鍵２０８を解読できるようにする。有効性日付２３２２によって、ユーザ証明書２３０２が有効とみなされる期間が指定される。証明書通し番号２３２４によって、証明書データベース１２４（図１）内でユーザ証明書２３０２が一意に識別される。ディジタル署名２３２６は、ユーザ証明書２３０２を発行する実体によって添付されたディジタル署名であり、ユーザ証明書２３０２が、（ｉ）不正に変更されておらず、（ｉｉ）適当な認証局によって発行されたことを検証するのに使用される。
【００４１】
秘密鍵２３０４は、マスタ鍵２０８（図３Ａ）を暗号化し、これによって媒体鍵３０２を形成するのに使用される鍵対の秘密鍵、たとえば秘密鍵３０４である。したがって、秘密鍵３０４を使用するセキュリティ・マネージャ２０６の解読器３０６による媒体鍵３０２の暗号化によって、マスタ鍵２０８が得られる。さらに、秘密鍵２３０４は、ユーザ証明書２３０２の公開鍵２３２０の相応鍵である。秘密鍵２３０４は、登録鍵２３０８を使用して暗号化されるが、これは下で説明する。
【００４２】
プライベート・ユーザ情報２３０６には、パスポート１４８Ａが束縛されるユーザに関する情報が含まれる。そのような情報は、プライベートであり、ユーザによって保護されることが好ましい。プライベート・ユーザ情報２３０６は、獲得されたコンテンツ１４４の再生中にクライアント・コンピュータ・システム１０４によって表示される。したがって、ユーザは、ユーザ束縛パスポート１４８Ａの共用を思いとどまる。というのは、それを行うために、プライベート・ユーザ情報２３０６も共用する必要が生じるからである。プライベート・ユーザ情報２３０６には、ユーザの名前２３６２およびユーザのクレジット・カード情報２３６４が含まれる。クレジット・カード情報２３６４には、たとえば、クレジット・カード番号、有効期限、および請求先住所を含めることができる。ユーザの登録中に、クレジット・カード情報２３６４を検証して、プライベート・ユーザ情報２３０６が正確であることを保証する。たとえば登録のためにユーザによって入力された盗まれたクレジット・カード番号が含まれるなど、クレジット・カード情報２３６４が不正確である場合には、そのユーザがプライベート・ユーザ情報２３０６を共用することを適切に防止されず、したがって、パスポート１４８Ａおよびそれに束縛されたコンテンツを共用することが防止されない。
【００４３】
プライベート・ユーザ情報２３０６は、登録鍵２３０８を使用して暗号化される。登録鍵２３０８は、ユーザによって供給されたパスワードを使用して暗号化される。したがって、ユーザのパスワードが、登録鍵２３０８を解読するのに必要であり、登録鍵２３０８は、秘密鍵２３０４およびプライベート・ユーザ情報２３０６を解読するのに必要である。登録鍵２３０８は、ユーザのパスワードなしで回復可能なフォーマットで証明書データベース１２４内に保管され、ユーザが自分のパスワードを忘れた場合に、登録鍵２３０８を、新しいパスワードについて生成できるようになっている。
【００４４】
乱数２３１０に擬似乱数データが保管される。乱数２３１０は暗号化されたパスポート情報２２０４Ａの暗号解読を失敗させるために含まれる。認証サーバ１２６が、パスポート１４８Ａが再発行されるたびに新しい乱数を生成する。パスポート情報２２０４Ａは、広域ネットワーク１０６（図１）を介して、暗号化されたフォーマットで通信される。したがって、乱数２３１０に対する変更が、パスポート情報２２０４Ａのいたるところに伝搬し、そうでなければ同一のパスポート情報２２０４Ａのコピーが、暗号化された形で完全に異なって見える。１実施形態では、乱数２３１０が、たとえば広域ネットワーク１０６を介して、パスポート情報２２０４Ａを移送する時だけに使用され、パスポート１４８Ａの永続的ディスク・レコードに保管されない。
【００４５】
秘密鍵３０４（図３Ａ）を得るために、セキュリティ・マネージャ２０６の解読器３１０が、ユーザ供給パスワードを使用して、登録鍵２３０８を解読する。ユーザは、コンテンツ・プレイヤ１４２によってユーザに表示されるプロンプトに応答して、通常のユーザ・インターフェース技法を使用してパスワードを供給する。登録鍵２３０８を解読した結果が、解読器３１２によって鍵として使用されて、秘密鍵２３０４から秘密鍵３０４が解読される。秘密鍵３０４は、上で説明した形で使用されて、獲得されたコンテンツを再生のために解読するのに使用することができるマスタ鍵２０８が得られる。
【００４６】
機械束縛パスポート１４８Ｂ（図３Ｂ）は、クライアント・コンピュータ・システム１０４に束縛され、特定のユーザには束縛されない。その結果、パスポート１４８Ｂに束縛された獲得されたコンテンツの再生では、プライベート・ユーザ情報２３０６（図２３）などのプライベート・ユーザ情報が表示されない。その代わりに、機械束縛パスポート１４８Ｂの秘密鍵２４０４（図３Ｂ）は、パスポート１４８Ｂが束縛されるコンピュータ・システムのハードウェア識別子を鍵として使用して暗号化される。この例では、パスポート１４８Ｂが、クライアント・コンピュータ・システム１０４（図１）に束縛され、秘密鍵２４０４（図３Ｂ）が、ハードウェア識別子１４０を使用して暗号化される。したがって、秘密鍵２４０４は、鍵としてハードウェア識別子１４０を使用して解読器３０８によって解読されて、これによって秘密鍵３０４がもたらされる。したがって、パスポート１４８Ｂは、ハードウェア識別子１４０が使用可能である時すなわち、パスポート１４８Ｂがクライアント・コンピュータ・システム１０４内で使用される時に限って、有用である。パスポート１４８Ｂが、ハードウェア識別子１４０と同等でないハードウェア識別子を有する別のコンピュータ・システムにコピーされた場合には、秘密鍵３０４を、秘密鍵２４０４から導出することができない。したがって、パスポート１４８Ｂによって、獲得されたコンテンツ１４４がクライアント・コンピュータ・システム１０４に束縛される。
【００４７】
コンテンツ・データベース１２２（図１）のコンテンツが購入される時に、認証サーバ１２６が、コンテンツが配布されるコンピュータ・システムまたは購入するユーザのいずれかに、購入されたコンテンツを束縛するのを助ける。ユーザに、どのタイプの束縛を好むかに関する選択肢が与えられる。１実施形態では、選択肢が、クライアント・コンピュータ・システムにコンテンツ・プレイヤ１４２を初めてインストールする時にユーザに提示され、その選択が、記録され、ユーザが能動的に異なる選択を行うまで尊重される。ユーザが、複数のコンピュータ・システム（または、少なくとも、購入を行うのに使用されたものと異なるコンピュータ・システム）でコンテンツにアクセスしたい場合には、ユーザは、パスポート１４８Ａ（図３Ａ）などのパスポートによって提供されるユーザ束縛を選択する。その代わりに、ユーザが、プライベート・ユーザ情報２３０６（図２３）などのプライベート・ユーザ情報を提供することを好まず、購入が行われた特定のコンピュータ・システムでのみコンテンツにアクセスするつもりである場合には、ユーザは、パスポート１４８Ｂ（図３Ｂ）などのパスポートによって提供される機械束縛を選択する。
【００４８】
ユーザまたはコンピュータ・システムのいずれかへの束縛のためにコンテンツを準備するために、コンテンツを、マスタ鍵２０８（図４）などのマスタ鍵を使用して暗号化し、このマスタ鍵を、暗号器４０６によって暗号化して、媒体鍵３０２を形成する。媒体鍵３０２は、暗号化されたコンテンツと共に含まれる。公開鍵３０４Ｂを、非対称暗号化と共に使用して、媒体鍵３０２を形成し、媒体鍵３０２を、したがって暗号化されたコンテンツ自体を、秘密鍵３０４を用いてのみ解読できるようにする。
【００４９】
コンテンツを特定のコンピュータ・システムに束縛するために、認証サーバ１２６に、機械束縛パスポート・ジェネレータ４０４（図４）が含まれる。証明書データベース１２４（図１）内に、認証サーバ１２６が、コンテンツ・プレイヤ１４２などの認証サーバ１２６に登録されたすべてのコンテンツ・プレイヤの秘密鍵／公開鍵対を保管する。認証サーバ１２６の動作の理解および認識を容易にするために、証明書データベース１２４に保管されるデータのタイプおよび構造を、図１７に関してより完全に説明する。
【００５０】
証明書データベース１２４に、複数のテーブルすなわち、（ｉ）アカウント・レコード１７０２のテーブル、（ｉｉ）鍵レコード１７０４のテーブル、および（ｉｉｉ）ヒストリ・レコード１７０６のテーブルが含まれる。アカウント・レコード１７０２などのアカウント・レコードには、コンテンツ配布システム１００（図１）内の特定のユーザに関するデータが保管される。鍵レコード１７０４（図１７）などの鍵レコードは、上で説明した形の配布されるコンテンツの暗号化に使用される秘密鍵／公開鍵対を表し、これには、有効期限および鍵対を再発行できる回数の限度などの、鍵対の使用パラメータが含まれる。鍵対の再発行は、下で詳細に説明する。ヒストリ・レコード１７０６などのヒストリ・レコードは、鍵対の再発行または機械束縛からユーザ束縛へのパスポートの変換などのイベントを表す。パスポートおよび／またはコンテンツの詐欺および／または無許可コピーを、時々、ヒストリ・レコードを検査することによって検出することができる。たとえば、紛失した鍵を交換するための、同一ユーザによる多数の異なるクライアント・コンピュータ・システムからの要求は、ユーザが、自分のパスポートの多数のコピーを他人に提供したことを暗示する。
【００５１】
アカウント・レコード１７０２が、図１８に詳細に示されており、アカウント・レコード１７０２には、次のフィールドが含まれる：（ｉ）通し番号フィールド１８０２、（ｉｉ）名前フィールド１８０４、（ｉｉｉ）電子メール・アドレス・フィールド１８０６、（ｉｖ）国フィールド１８０８、（ｖ）質問フィールド１８１０、（ｖｉ）回答フィールド１８１２、（ｖｉｉ）状況フィールド１８１４、および（ｖｉｉｉ）タイプ・フィールド１８１６。通し番号フィールド１８０２には、認証サーバ１２６内で処理される通し番号の中で一意の通し番号が保管される。通し番号は、この例示的実施形態では、関係するレコードを関連付けるのに使用される。たとえば、アカウント・レコード１７０２が、特定のユーザを表し、鍵レコード１７０４（図１９）が、そのユーザの秘密鍵／公開鍵対を表す場合に、通し番号フィールド１８０２（図１８）に保管された通し番号が、通し番号フィールド１９０２（図１９）に保管された通し番号と同等である。さらに、ユーザのアカウントおよび鍵に関係するヒストリ・レコードを、通し番号フィールド２００２（図２０）に保管された同等の通し番号を有するヒストリ・レコードを突き止めることによって見つけることができる。
【００５２】
名前フィールド１８０４（図１８）には、アカウント・レコード１７０２によって表されるアカウントを所有するユーザの名前を表すデータが保管される。電子メール・アドレス・フィールド１８０６には、ユーザの電子メール・アドレスを表すデータが保管される。国フィールド１８０８には、ユーザが居住する国を表すデータが保管される。
【００５３】
質問フィールド１８１０および回答フィールド１８１２は、たとえばアカウント・レコード１７０２を修正する要求を受信した時に、ユーザを認証するのに使用される。質問フィールド１８１０によって、ユーザに尋ねる質問が指定され、回答フィールド１８１２によって、正しい応答が指定される。たとえば、質問を、ユーザの母親の旧姓に関するものとすることができる。
【００５４】
状況フィールド１８１４は、アカウントの状況を表す。状況フィールド１８１４に保管される状況値には、「ｖａｌｉｄ（有効）」および「ｒｅｖｏｋｅｄ（取り消し）」が含まれる。タイプ・フィールド１８１６は、アカウントのタイプを表す。タイプ・フィールド１８１６に保管されるタイプ値には、「ｍａｃｈｉｎｅ−ｂｏｕｎｄ（機械束縛）」および「ｕｓｅｒ−ｂｏｕｎｄ（ユーザ束縛）」が含まれる。
【００５５】
鍵レコード１７０４が、図１９に詳細に示されており、鍵レコード１７０４には、次のフィールドが含まれる：（ｉ）通し番号フィールド１９０２、（ｉｉ）秘密鍵フィールド１９０４、（ｉｉｉ）公開鍵フィールド１９０６、（ｉｖ）有効性日付フィールド１９０８、（ｖ）再発行限度フィールド１９１０、（ｖｉ）パスポート鍵限度１９１２、および（ｖｉｉ）ハードウェア識別子１９１４。通し番号フィールド１９０２には、鍵レコードに対応する通し番号が格納される。秘密鍵フィールド１９０４および公開鍵フィールド１９０６には、鍵レコード１７０４によって表される秘密鍵／公開鍵対の秘密鍵および公開鍵が保管される。
【００５６】
有効性日付フィールド１９０８によって、鍵レコード１７０４から作成された証明書が有効である日付が指定される。鍵レコード１７０４の有効性終了日付が満了した時に、鍵レコード１７０４から作成された証明書は、コンテンツ・データベース１２２からのコンテンツの購入に使用することができなくなる。しかし、鍵レコード１７０４から作成される証明書は、下で説明する形で、前に獲得したコンテンツを正しく解読し続ける。鍵レコード１７０４が、期限を延長される時には、有効性日付フィールド１９０８が、指定された新しい異なる有効性日付に更新され、秘密鍵１９０４および公開鍵１９０６は、変更されないままになる。その結果、鍵レコード１７０４に基づく満了したパスポートを使用して獲得されたコンテンツを、同一のパスポートの期限を延長された版すなわち、期限を延長された版の鍵レコード１７０４から作成されたパスポートを使用して、解読することができる。というのは、期限を延長されたパスポートに、同一の鍵が含まれるからである。しかし、期限延長が、ユーザがパスワードを変更することを必要とすることができ、その結果、パスポートのうちで、ユーザのパスワードを使用して暗号化されるコンポーネントが、異なって見えることを諒解されたい。
【００５７】
再発行限度フィールド１９１０によって、鍵レコード１７０４の鍵を、下でより完全に説明する形で再発行できる最大回数が指定される。パスポート鍵限度１９１２によって、上で説明した形で通し番号フィールド１９０２によって判定される関連するアカウントの所有者が保持するパスポートによって保持することができる鍵の最大個数が指定される。ハードウェア識別子フィールド１９１４は、上で説明した形で鍵対が束縛されるハードウェア識別子を表す。たとえば、ハードウェア識別子フィールド１９１４が、ハードウェア識別子１４０を表す場合に、秘密鍵フィールド１９０４で表される秘密鍵を含む機械束縛パスポートが、ハードウェア識別子１４０を使用して暗号化される。
【００５８】
ヒストリ・レコード１７０６（図１７）が、図２０に完全に示されており、ヒストリ・レコード１７０６には、次のフィールドが含まれる：（ｉ）通し番号フィールド２００２、（ｉｉ）作成フィールド２００４、および（ｉｉｉ）アクティビティ・フィールド２００６。通し番号フィールド２００２には、通し番号フィールド１８０２（図１８）および１９０２（図１９）に関して上で説明したものに類似する通し番号が格納される。作成フィールド２００４（図２０）によって、ヒストリ・レコード１７０６が作成された時が指定される。アクティビティ・フィールド２００６によって、ヒストリ・レコード１７０６（図１７）のテーブルに記録される通し番号フィールド２００２の通し番号に関連するアクティビティのタイプが指定される。アクティビティ・フィールド２００６によって表されるタイプには、たとえば、鍵の再発行、鍵の期限延長、およびユーザ束縛パスポートへの鍵の追加が含まれる。
【００５９】
認証サーバ１２６は、図２１に示されているように、アカウント・レコード１７０２および鍵レコード１７０４の諸フィールドからディジタル証明書、たとえばＩＴＵ−Ｔ  Ｘ．５０９証明書を作成することができる。具体的に言うと、証明書２１００には、鍵レコード１７０４（図１９）からの公開鍵１９０６および有効性日付１９０８と、名前１８０４（図２１）と、アカウント・レコード１７０２（図１８）からの電子メール・アドレス１８０６および国１８０８が含まれる。さらに、証明書２１００には、この例示的実施形態ではＩＴＵ−Ｔ  Ｘ．５０９仕様に適合する証明書通し番号２１０２が含まれる。証明書通し番号２１０２が、通し番号１８０２（図１８）、１９０２（図１９）、および２００２（図２０）に関係せず、独立であることに留意されたい。証明書２１００には、この例示的実施形態でＩＴＵ−Ｔ  Ｘ．５０９仕様に適合する、認証サーバ１２６の秘密鍵から認証サーバ１２６によって作成されたディジタル署名２１０４も含まれる。
【００６０】
証明書データベース１２４は、機械束縛またはユーザ束縛のいずれかの、獲得されたコンテンツの認証のための包括的で柔軟な基礎を提供する。
【００６１】
機械束縛パスポート・ジェネレータ４０４（図４）に戻って、マスタ鍵２０８は、秘密鍵３０４を使用しなければ、媒体鍵３０２から解読することができない。したがって、媒体鍵３０２およびそれに関連するコンテンツをクライアント・コンピュータ・システム１０４（図１）に束縛するために、秘密鍵３０４を、暗号器４０８内で暗号化して、鍵としてハードウェア識別子１４０を使用する秘密鍵２４０４を形成する。したがって、ハードウェア識別子１４０は、秘密鍵３０４を解読し復元するのに必要であり、秘密鍵３０４は、マスタ鍵２０８を解読し復元するのに必要であり、マスタ鍵２０８は、それを用いて暗号化された獲得されたコンテンツを解読するのに必要である。ハードウェア識別子１４０は、鍵レコード１７０４のハードウェア識別子フィールド１９１４で表され、鍵レコード１７０４には、秘密鍵フィールド１９０４に秘密鍵３０４、公開鍵フィールド１９０６に公開鍵３０４Ｂが含まれる。
【００６２】
秘密鍵２４０４は、パスポート・パッカー４１０によってパスポート情報２２０４Ａに含められ、パスポート・パッカー４１０は、認証サーバ１２６の秘密鍵を使用してパスポート情報２２０４Ｂに署名して、署名２２０８を形成する。さらに、パスポート・パッカー４１０は、パスポート情報２２０４Ｂおよび署名２２０８を、下でより完全に説明する形で保護されたチャネルを介してコンテンツ・プレイヤ１４２に送信する。したがって、機械束縛パスポート・ジェネレータ４０４は、マスタ鍵２０８を用いて暗号化されたコンテンツをハードウェア識別子１４０に束縛する。
【００６３】
認証サーバ１２６には、パスポート１４８Ａ（図３Ａ）などのユーザ束縛パスポートを作成するフル・パスポート・ジェネレータ５０４（図５）も含まれる。暗号器４０６が、上で説明した形で、公開鍵３０４Ｂを使用してマスタ鍵２０８を暗号化して、媒体鍵３０２を形成する。
【００６４】
フル・パスポート・ジェネレータ５０４（図５）には、暗号器５０８が含まれ、暗号器５０８は、平文登録鍵５２０を使用して、相応鍵すなわち秘密鍵３０４を暗号化して、秘密鍵２３０４を形成する。したがって、秘密鍵２３０４は、隠され、パスポート情報２２０４Ａに含める準備ができる。平文登録鍵５２０は、ユーザ供給パスワードを鍵として使用して暗号器５０６によって暗号化されて、登録鍵２３０８が形成される。結果のフル・パスポートを他のユーザに配布するのを思いとどまらせるために、パスポート・パッカー５１０が、プライベート・ユーザ情報２３０６と共に秘密鍵２３０４および登録鍵２３０８をパッケージ化して、パスポート情報２２０４Ａを形成する。さらに、パスポート・パッカー５１０は、パスポート情報２２０４Ａに関する不正変更を検出し、防止するために、署名２２０８を形成する。１実施形態では、プライベート・ユーザ情報２３０６を、ユーザ供給パスワードを使用して暗号化して、獲得されたコンテンツが再生されていない時にユーザのプライベート情報を保護する。パスポート情報２２０４Ａを使用してマスタ鍵２０８を用いて暗号化された獲得されたコンテンツを成功裡に解読するために、署名２２０８の認証性が検証され、秘密鍵２３０４および登録鍵２３０８が、パスポート情報２２０４Ａから構文解析される。その後、登録鍵２３０８が、ユーザによって供給された鍵を使用して解読され、解読の後に、秘密鍵２３０４から秘密鍵３０４を解読するのに使用される。その後、秘密鍵３０４が、獲得されたコンテンツから構文解析される媒体鍵３０２からマスタ鍵２０８を解読するのに使用される。パスポート・パッカー５１０は、下でより完全に説明する形で、保護されたチャネルを介してパスポート情報２２０４Ａおよび署名２２０８をコンテンツ・プレイヤ１４２に送信する。
【００６５】
ある点で、クライアント・コンピュータ１０４を使用することのみによって獲得したデータを再生することを前に選んだユーザすなわち、前に機械束縛を選んだユーザが、機械束縛からユーザ束縛にアップグレードし、そのユーザが、獲得したコンテンツを異なるコンピュータ・システムを使用して再生できるようにすることを選ぶ場合がある。たとえば、ユーザが、自分の前のコンピュータ・システムを新しいものに交換した場合、または追加のコンピュータ・システムを購入した場合がある。パスポート１４８Ｂなどの機械束縛パスポートのパスポート１４８Ｂなどのユーザ束縛パスポートへの認証サーバ１２６による変換は、パスポート・コンバータ６０２（図６Ａ）によって実行される。
【００６６】
パスポートを変換するために、パスポート・コンバータ６０２は、ハードウェア識別子１４０、プライベート・ユーザ情報２３０６、およびユーザ供給パスワードを受け取る。これらの要素は、保護された接続を介してクライアント・コンピュータ・システム１０４から受け取られる。プライベート・ユーザ情報２３０６およびユーザ供給パスワードは、変換の時にクライアント・コンピュータ・システム１０４のユーザによって入力される。というのは、そのような情報が、ユーザ束縛パスポートに必要であるが、機械束縛パスポートには必要ないからである。機械束縛からの変換の重要な考慮事項が、獲得されたコンテンツに対する修正が一切不要であることである。本質的に、獲得されたコンテンツを解読するのに必要な、核の秘密鍵、たとえば秘密鍵３０４は、変換されたパスポート内で保存され、媒体鍵３０２を未変更のままにすることができる。
【００６７】
図６Ａのパスポート・コンバータ６０２は、処理の大部分が認証サーバ１２６によって実行される、多少単純化された実施形態である。パスポート・コンバータ６０２の要素の一部がコンテンツ・プレイヤ１４２の一部である代替実施形態を、図６Ｂに関して下で説明する。
【００６８】
パスポート・コンバータ６０２には、アップグレードされるパスポートの署名２２０８を検証し、パスポート情報２２０４Ｂから秘密鍵２４０４を構文解析するパスポート・パーサ６０４が含まれる。さらに、パスポート・コンバータ６０２には、ハードウェア識別子１４０を鍵として使用して秘密鍵２４０４を解読して、秘密鍵３０４を再導出する解読器６０６が含まれる。代替案では、認証サーバ１２６が、ハードウェア識別子１４０を使用して、証明書データベース１２４からのハードウェア識別子フィールド１９１４に従って鍵３０４および３０４Ｂに対応する鍵レコード１７０４（図１９）を取り出す。どちらの場合でも、秘密鍵３０４（図６Ａ）は、ハードウェア識別子１４０を使用してクライアント・コンピュータ・システム１０４に前に束縛された獲得されたコンテンツを再生するのに必要である。
【００６９】
パスポート・コンバータ６０２には、上で図５に関して説明した形で秘密鍵２３０４および登録鍵２３０８を形成する暗号器５０６および５０８が含まれる。プライベート・ユーザ情報２３０６も、鍵としてユーザ供給パスワードを使用して暗号化される。パスポート・コンバータ６０２には、秘密鍵２３０４、登録鍵２３０８、およびプライベート・ユーザ情報２３０６をパッケージ化してパスポート情報２２０４Ａを形成するパスポート・パッカー５１０が含まれる。パスポート・パッカー５１０は、署名２２０８を形成して、パスポート情報２２０４Ａに関する不正変更を検出し、防止する。上で図３Ｂに関して説明したように、パスポート１４８Ａなどのユーザ束縛パスポートは、ユーザ供給パスワードを要求することとプライベート・ユーザ情報２３０６（図２３）の表示とを介して、獲得されたコンテンツを特定のユーザに束縛する。パスポート１４８Ａおよびそれからアクセス可能なすべてのコンテンツが、ハードウェア識別子１４０に束縛されず、再生のために他のコンピュータ・システムに移動することができる。
【００７０】
論理流れ図６５０（図６Ｂ）に、代替実施形態による、機械束縛パスポート１４８Ｂのユーザ束縛パスポート１４８Ａへの変換を示す。ステップ６５２で、コンテンツ・プレイヤ１４２が、パスポート１４８Ｂの公開鍵、たとえば証明書２３０２の公開鍵を使用して、ハードウェア識別子１４０を暗号化する。ステップ６５４で、コンテンツ・プレイヤ１４２が、パスポート１４８Ｂの証明書および暗号化されたハードウェア識別子を、パスポート１４８Ｂのユーザ束縛パスポートへのアップグレードの要求の一部として認証サーバ１２６に送信する。
【００７１】
ステップ６５６で、認証サーバ１２６が、証明書と暗号化されたハードウェア識別子をコンテンツ・プレイヤ１４２から受信する。ステップ６５８で、認証サーバ１２６が、証明書の署名を検証する。認証サーバ１２６は、受信した証明書に対応する証明書レコード、たとえば証明書レコード２１００（図２１）を、ステップ６６０（図６Ｂ）で証明書データベース１２４から取り出す。ステップ６６２で、認証サーバ１２６が、関連するアカウント・レコード、たとえばアカウント・レコード１７０２と、鍵レコード、たとえば鍵レコード１７０４を得る。
【００７２】
ステップ６６４で、認証サーバ１２６が、取り出された鍵レコードの秘密鍵、たとえば鍵レコード１７０４の秘密鍵１９０４を使用して、受信した暗号化されたハードウェア識別子を解読する。ステップ６６６で、認証サーバ１２６が、解読されたハードウェア識別子を、取り出された鍵レコードのハードウェア識別子、たとえば鍵レコード１７０４のハードウェア識別子１９１４と比較する。ハードウェア識別子が一致しない場合には、パスポート１４８Ｂの変換が失敗する。そうでない場合には、変換が継続される。
【００７３】
ステップ６６８で、認証サーバ１２６が、平文の秘密鍵および登録鍵と空白のユーザ情報を有するフル・パスポート・レコードを作成し、送信する。平文は、本明細書では、暗号での一般的な使用法で、暗号化されていないが、必ずしも人間に理解できるテキストではないことを意味する。暗号化アルゴリズムを使用して鍵を形成することができるが、鍵が、たとえば他のデータの暗号化／解読に鍵を使用する前に解読を必要としない場合には、平文とみなされることに留意されたい。フル・パスポート・レコードが、保護されたチャネルを介してコンテンツ・プレイヤ１４２に送信される。
【００７４】
ステップ６７０で、コンテンツ・プレイヤ１４２が、認証サーバ１２６からフル・パスポート・レコードを受信する。コンテンツ・プレイヤ１４２は、ステップ６７２で、従来のユーザ・インターフェース技法によってユーザからユーザ供給パスワードおよびプライベート・ユーザ情報を受け取る。
【００７５】
ステップ６７４で、コンテンツ・プレイヤ１４２が、暗号器５０６および５０８（図６Ａ）およびパスポート・パッカー５１０に関して上で説明した形で、ユーザ供給パスワードを使用してプライベート・ユーザ情報、秘密鍵、および登録鍵を暗号化する。
【００７６】
データの購入および再生のための変換可能パスポートの使用
論理流れ図７００（図７）に、購入するユーザによるデータの購入中のコンテンツ・プレイヤ１４２（図１）による認証を示す。テスト・ステップ７０２（図７）で、コンテンツ・プレイヤ１４２（図１）が、フルのユーザ束縛パスポートが存在するかどうかを判定する。１実施形態では、コンテンツ・プレイヤ１４２に、コンテンツ・プレイヤ１４２を介して再生できるデータに関連する１つまたは複数のパスポートのレジストリが含まれる。フル・パスポートが存在する場合に、処理はステップ７０４（図７）に移り、購入するユーザが、従来のユーザ・インターフェース技法を使用してパスワードを入力する。テスト・ステップ７０６（図７）で、コンテンツ・プレイヤ１４２が、入力されたパスワードが、時々本明細書で選択されたフル・パスポートと称する、テスト・ステップ７０２で存在すると判定されたフル・パスポートに対応するかどうかを判定する。コンテンツ・プレイヤ１４２は、選択されたフル・パスポートの秘密鍵２３０４（図２３）の解読を試みることによって、そのような判定を行う。この例示的実施形態では、秘密鍵２３０４が、ＲＳＡ  Ｓｅｃｕｒｉｔｙ社の既知のＰＫＣＳ  ＃５パスワード暗号化アルゴリズムを使用して暗号化され、そのアルゴリズムを使用することによって、秘密鍵２３０４の解読に使用されたパスワードが正しいパスワードであるかどうかを示す信号がもたらされる。パスワードが、選択されたフル・パスポートに対応しない場合には、処理は、ステップ７０４に戻され、ユーザが、別のパスワードを入力する。パスワードが選択されたフル・パスポートに対応する場合には、処理がステップ７０８に移され、コンテンツの購入の処理が継続される。
【００７７】
購入には、購入される特定のコンテンツの選択と、支払認可が含まれる。購入のためにユーザによって選択された特定のコンテンツを、本明細書では、時々、選択されたコンテンツと称する。コンテンツ・プレイヤ１４２が、選択されたコンテンツが束縛されるパスポートとして選択されたフル・パスポートを指定する、そのパスポートの内部の証明書を提供し、認証サーバ１２６が、上で図５に関して説明した形で、選択された証明書にコンテンツを束縛する。具体的に言うと、選択されたコンテンツのマスタ鍵が、鍵としてプレイヤの公開鍵３０４Ｂを使用して暗号器４０６によって暗号化されて、媒体鍵３０２が形成される。フル・パスポート・ジェネレータ５０４は使用されない。というのは、選択されたフル・パスポートが、既にコンテンツ・プレイヤ１４２内に存在するからである。公開鍵３０４Ｂを使用してマスタ鍵２０８を暗号化することによって、秘密鍵３０４を含むパスポートにコンテンツが束縛される。選択されたコンテンツに含まれる証明書通し番号、たとえば証明書通し番号２１０２によって、選択されたコンテンツがどのパスポートに束縛されるかが識別される。
【００７８】
テスト・ステップ７０２（図７）に戻って、フル・パスポートがコンテンツ・プレイヤ１４２内に存在しない場合には、処理はテスト・ステップ７１０に移る。テスト・ステップ７１０で、コンテンツ・プレイヤ１４２が、機械束縛パスポートが存在するかどうかを判定する。機械束縛パスポートが存在しない場合には、処理はステップ７１８に移るが、このステップは下で説明する。逆に、機械束縛パスポートが存在する場合には、処理はステップ７１２に移る。
【００７９】
ステップ７１２で、コンテンツ・プレイヤ１４２が、ハードウェア識別子１４０を取り出す。ステップ７１４で、コンテンツ・プレイヤ１４２は、ハードウェア識別子１４０が、コンテンツ・プレイヤ１４２によって突き止められた機械束縛パスポートに対応するハードウェア識別子であるかどうかを判定する。１実施形態では、そのような判定が、解読に使用された鍵が正しい鍵であるかどうかを示す、ＲＳＡ  ＰＣＫＳ  ＃５アルゴリズムなどの解読アルゴリズムを使用して、ハードウェア識別子１４０を使用して秘密鍵２４０４の解読を試みることによって行われる。そうでない場合には、処理はステップ７１６に移り、エラー・メッセージをユーザに提示する。エラー・メッセージによって、突き止められた機械束縛パスポートが、クライアント・コンピュータ・システム１０４に属さないことが示される。コンテンツ・プレイヤ１４２は、さまざまな形でそのようなエラーに応答することができる。たとえば、コンテンツ・プレイヤ１４２は、誤りのある機械束縛パスポートを削除し、論理流れ図７００による処理を再開するようにユーザに指示することができる（処理は、論理流れ図７００による後続の反復処理で下のステップ７１８以下参照に達する）。コンテンツ・プレイヤ１４２は、そのようなエラーを認証サーバ１２６に報告し、機械束縛パスポートの無許可配布を追跡できるようにすることもできる。
【００８０】
しかし、ハードウェア識別子１４０が正しい識別子である場合には、処理はテスト・ステップ７１４からステップ７０８に移り、購入されるコンテンツが機械束縛パスポートに束縛されることを除いて、上で説明した形で購入処理が継続される。選択されたコンテンツを要求する際に、コンテンツ・プレイヤ１４２は、その証明書を認証サーバ１２６に送信する。認証サーバ１２６は、証明書の公開鍵を使用してマスタ鍵２０８を暗号化し、これによって、選択されたコンテンツをコンテンツ・プレイヤ１４２に束縛する。コンテンツ・プレイヤ１４２によって検出された機械束縛パスポートに、すでに、ハードウェア識別子１４０を使用して暗号化されたコンテンツ・プレイヤ１４２の秘密鍵が含まれる。
【００８１】
テスト・ステップ７１０（図７）に戻って、コンテンツ・プレイヤ１４２が機械束縛パスポートを見つけない場合には、コンテンツ・プレイヤ１４２は、パスポートを全く有しておらず、処理はステップ７１８に移る。ステップ７１８では、コンテンツ・プレイヤ１４２が、認証サーバ１２６に新しい機械束縛パスポートを要求する。ステップ７１８は、下で論理流れ図７１８（図８）に関してより完全に説明する。ステップ７１８の後に、コンテンツ・プレイヤ１４２は、認証サーバ１２６から受信した機械束縛パスポート・レコードから新しい機械束縛パスポートを構成する。ステップ７２０の後に、コンテンツの購入が、ステップ７０８で、上で説明した形で継続される。
【００８２】
論理流れ図７１８（図８）に、機械束縛パスポートの要求を詳細に示す。ステップ８０２で、コンテンツ・プレイヤ１４２が、認証サーバ１２６との保護された接続を確立する。そのような保護された接続は、下で詳細に説明する。ステップ８０４で、コンテンツ・プレイヤ１４２が、新しい機械束縛パスポートの情報テンプレートを要求する。そのような要求に応答して、認証サーバ１２６が、新しい機械束縛パスポートの情報テンプレートを送信する。情報テンプレートとは、ユーザ供給データ・フィールドとそのためのプロンプトを指定するデータの集合である。１実施形態では、情報テンプレートが、ユーザから収集されるデータのＸＭＬ記述である。情報テンプレートが、コンテンツ・プレイヤ１４２によって受信された場合には、処理はテスト・ステップ８０６を介してステップ８０８に移り、コンテンツ・プレイヤ１４２が、受信した情報テンプレートで指定された情報を収集する。そのような情報は、従来のユーザ・インターフェース技法を使用してユーザが入力することができる。処理はステップ８１０に移る。情報テンプレートが受信されない場合には、処理は、テスト・ステップ８０６を介して、ステップ８０８をスキップしてステップ８１０に移る。
【００８３】
ステップ８１０では、コンテンツ・プレイヤ１４２が、新しい機械束縛パスポートの要求として、認証サーバ１２６にハードウェア識別子１４０およびユーザ供給情報を送信する。ステップ８１０の後に、論理流れ図７１８に従う処理が完了し、したがって、ステップ７１８（図７）が完了する。
【００８４】
論理流れ図９００（図９）に、コンテンツ・プレイヤ１４２によってステップ８１０（図８）で行われる新しい機械束縛パスポートの要求に応答する、認証サーバ１２６（図１）による処理を示す。ステップ９０２（図９）で、認証サーバ１２６が、ハードウェア識別子およびユーザ供給情報を受信する。テスト・ステップ９０４で、認証サーバ１２６が、受信したハードウェア識別子に対応する鍵レコードが証明書データベース１２４内に存在するかどうかを判定する。認証サーバ１２６は、ハードウェア識別子フィールド１９１４内の同等のハードウェア識別子を表す鍵レコード、たとえば鍵レコード１７０４（図１９）を検索することによって、そのような判定を行う。そのような鍵レコードが見つからない場合には、処理はステップ９０６（図９）に移る。逆に、そのような鍵レコードが見つかる場合には、処理はステップ９１２に移るが、これは下で説明する。
【００８５】
ステップ９０６で、認証サーバ１２６は、新しい秘密鍵／公開鍵対、たとえば鍵レコード１７０４（図１９）の鍵対を作成し、新しい鍵対に基づいて新しい証明書、たとえば証明書２１００（図２１）を作成する。ステップ９０８（図９）で、認証サーバ１２６は、新しい証明書と受信したハードウェア識別子、たとえばハードウェア識別子１４０を、証明書データベース１２４内で関連付ける。そのような関連付けは、鍵レコード１７０４のハードウェア識別子フィールド１９１４（図１９）にハードウェア識別子１４０を保管することによって達成される。ステップ９１０（図９）で、認証サーバ１２６が、機械束縛パスポート・レコードをコンテンツ・プレイヤ１４２に返す。機械束縛パスポート・レコードは、コンテンツ・プレイヤ１４２が、上で説明したパスポート１４８Ｂなどの機械束縛パスポートをそれから構成することができるデータの集合である。そのような機械束縛パスポート・レコードには、たとえば、パスポート情報２２０４Ｂ（図２４）と、署名アルゴリズム２２０６および署名２２０８が含まれる。ステップ９１０（図９）の後に、論理流れ図９００による処理が完了する。
【００８６】
テスト・ステップ９０４に戻って、ハードウェア識別子１４０（図１）に関連する鍵対が、証明書データベース１２４内に既に存在する場合には、処理は、テスト・ステップ９１２（図９）に移り、ポリシ判断を実施する。ポリシによって、既存の機械束縛パスポートに関連する鍵の再発行を許可するかどうかが決定される。ユーザが、たとえば故意でない削除を介してまたはハードウェア障害に起因するデータ消失を介して、機械束縛パスポートを紛失する可能性がある。さらに、機械束縛パスポート鍵の再発行が許可される場合に、そのような再発行が許可される回数を制限することができる。たとえば、そのような制限が、再発行限度フィールド１９１０（図１９）で指定される。１実施形態では、０の限度が、機械束縛鍵を再発行できないことを示す。この実施形態では、機械束縛鍵を１回だけ再発行できることを示すために、再発行限度フィールド１９１０に、１の値を有するデータが保管される。ポリシによって、たとえば鍵が再発行されないので、または証明書データベース１２４からこの機械束縛パスポートに関して最大の許容される再発行回数を実行済みであることが示されるので、これらの鍵を再発行してはならないと決定される場合に、処理はステップ９１４（図９）に移る。ステップ９１４では、機械束縛パスポート・レコードではなく、エラーを返す。逆に、再発行がポリシによって許可される場合には、処理はステップ９１６に移る。再発行が全般的に許可され、証明書データベース１２４から再発行の最大の許容される回数未満が実行されたことが示される場合に、ポリシによってそのような再発行を許可することができる。１実施形態では、認証サーバ１２６が、再発行を表す証明書データベース１２４内のヒストリ・レコード１７０６などのヒストリ・レコードを検索し、数えることによって、鍵レコード１７０４（図１７）の鍵が再発行された回数を判定する。通し番号２００２（図２０）が通し番号１９０２（図１９）に対応し、アクティビティ・フィールド２００６が再発行イベントを指定する場合に、ヒストリ・レコード１７０６が、鍵レコード１７０４の鍵の再発行を表す。
【００８７】
ステップ９１６で、認証サーバ１２６が、受信したハードウェア識別子に関連する秘密鍵／公開鍵対、たとえばハードウェア識別子１４０に関連する鍵レコード１７０４の鍵対を、証明書データベース１２４から取り出し、上で説明した形で執行を猶予された対から機械束縛パスポート・レコードを形成する。ステップ９１８で、認証サーバ１２６が、受信したハードウェア識別子に関連する鍵の追加発行を反映するように証明書データベース１２４を更新する。この例示的実施形態では、認証サーバ１２６は、鍵レコードの通し番号１９０２（図１９）に対応する通し番号２００２（図２０）および再発行イベントを表すアクティビティ・フィールド２００６を有する新しいヒストリ・レコード、たとえばヒストリ・レコード１７０６を作成することによって、そのような再発行を記録する。処理は、ステップ９１８からステップ９１０に移り、パスポート・レコードが、上で説明した形で返される。ステップ９１０の後に、論理流れ図９００による処理が完了する。
【００８８】
論理流れ図１０００（図１０）に、獲得されたコンテンツのアクセス中のパスポートの処理を示す。図１０から１６に関して、獲得されたコンテンツ１４４の特定のコンテンツが、再生のためにユーザによって選択されており、そのコンテンツを、時々、選択された獲得されたコンテンツと称する。テスト・ステップ１００２（図１０）で、コンテンツ・プレイヤ１４２が、フル・パスポートが存在するかどうかを判定する。そうでない場合には、処理はテスト・ステップ１００８に移るが、これは下でより完全に説明する。逆に、フル・パスポートが存在する場合には、処理がステップ１００４に移り、コンテンツ・プレイヤ１４２が、上でステップ７０４（図７）および７０６に関して説明した形でユーザ供給パスワードを検査することを介して、ユーザを認証する。ユーザが認証された後に、コンテンツ・プレイヤ１４２は、ステップ１００６（図１０）で、テスト・ステップ１００２で突き止めたフルのユーザ束縛パスポートを使用して、選択されたコンテンツの再生を試みる。
【００８９】
テスト・ステップ１００８で、コンテンツ・プレイヤ１４２は、機械束縛パスポートが存在するかどうかを判定する。そうでない場合には、パスポートが存在せず、処理はダイアログ・ステップ１０１６に移る。その一方で、機械束縛パスポートが存在する場合には、処理はステップ１０１０に移り、コンテンツ・プレイヤ１４２は、ステップ７１２（図７）および７１４に関して上で説明した形で、ハードウェア識別子１４０が機械束縛パスポートに対応することを検証する。ステップ１０１０で検証エラーが発生する場合すなわち、ハードウェア識別子１４０が機械束縛パスポートに対応しない場合には、処理は、下で説明するダイアログ・ステップ１０１６に移る。逆に、検証に成功する場合には、処理はステップ１００６に移る。
【００９０】
ステップ１００６では、コンテンツ・プレイヤ１４２が、選択されたコンテンツの再生を試みる。テスト・ステップ１０１２で、コンテンツ・プレイヤ１４２は、試みられた再生が成功であったすなわち、パスポート鍵によって選択されたコンテンツが成功裡にデコードされたかどうかを判定する。そのような判定は、上でステップ７０６（図７）および７１４に関して説明した形で行われる。
【００９１】
選択されたパスポート鍵によって、選択されたコンテンツが成功裡に解読された場合には、処理は、ステップ１０１４に移り、コンテンツ・プレイヤ１４２が、選択されたコンテンツの再生を継続する。ステップ１０１４では、ユーザおよび／またはクライアント・コンピュータ・システム１０４が、選択されたコンテンツにアクセスする資格を有するものとして認証されている。
【００９２】
その一方で、選択されたパスポート鍵によって、選択されたコンテンツを成功裡に解読できない場合には、処理はダイアログ・ステップ１０１６に移る。したがって、処理がダイアログ・ステップ１０１６に移るのは、コンテンツ・プレイヤ１４２によってパスポートが検出されない場合（テスト・ステップ１００８を介する）、ハードウェア識別子１４０がコンテンツ・プレイヤ１４２によって突き止められた機械束縛パスポートに対応しない場合（ステップ１０１０から）、または選択されたパスポート鍵によって選択されたコンテンツを成功裡に解読できない場合（テスト・ステップ１０１２を介する）である。ダイアログ・ステップ１０１６では、コンテンツ・プレイヤ１４２が、ユーザが選択されたコンテンツを再生することを許可されないことをユーザに報告し、ユーザがそれを許可されるようになりたいかどうかを尋ねる。
【００９３】
ユーザが否定的に応答する場合には、処理はステップ１０２０に移り、コンテンツ・プレイヤ１４２が、エラーを返し、処理を打ち切る。逆に、ユーザが肯定的に応答する場合には、処理がステップ１０１８に移り、選択されたコンテンツについて新しいパスポートが作成され、ステップ１０１４に継続して、コンテンツ・プレイヤ１４２が、選択されたコンテンツの再生を継続する。
【００９４】
ステップ１０１８を、論理流れ図１０１８（図１１）として詳細に示す。ステップ１１０２で、コンテンツ・プレイヤ１４２が、選択されたコンテンツからコンテンツ証明書を取り出す。コンテンツ証明書は、選択されたコンテンツに含まれ、そのコンテンツを当初に獲得したものを識別する、たとえばＩＴＵ−Ｔ  Ｘ．５０９ディジタル証明書などのディジタル証明書である。証明書２１００（図２１）が、そのような証明書の例示的な例であり、上でより完全に説明される。この例示的実施形態では、コンテンツ・プレイヤ１４２が、証明書通し番号、たとえば証明書通し番号２１０２を取り出し、これによって、認証サーバ１２６（図１）が、証明書データベース１２４内で証明書２１００を突き止めることができる。テスト・ステップ１１０４（図１１）で、コンテンツ・プレイヤ１４２が、ユーザがフル・パスポートを有するかどうかを判定する。コンテンツ・プレイヤ１４２は、ステップ１００２（図１０）で判定されるフル・パスポートの存在に基づいて、またはステップ１００４での存在するフル・パスポートを認証することのユーザによる失敗に基づいて、そのような判定を行うことができる。さらに、ユーザに、名前および電子メール・アドレスを請求することができ、それに対するユーザの応答を使用して、同等の名前フィールド１８０４および電子メール・アドレス・フィールド１８０６を有するアカウント・レコード１７０２（図１８）などのアカウント・レコードを検索することができる。ユーザが、フル・パスポートを有する場合に、処理は、ステップ１１０６（図１１）に移り、コンテンツ・プレイヤ１４２が、プライベート・ユーザ情報２３０６（図２３）を含むユーザのフル・パスポート情報を使用して、選択された獲得されたコンテンツのパスポートを要求する。ユーザが、フル・パスポートを有しない場合には、処理は、ステップ１１１４（図１１）に移り、コンテンツ・プレイヤ１４２が、ハードウェア識別子１４０を使用して、選択されたコンテンツのパスポートを要求する。この実施形態では、ユーザに、名前、電子メール・アドレス、居住する国などの個人情報を提供する機会が与えられ、その情報に、ステップ１１１４で新しいパスポートを要求する際にハードウェア識別子１４０を付随させることができる。
【００９５】
ステップ１１０６および１１１４の要求に応答する認証サーバ１２６による処理は、下で、それぞれ図１３および図１２に関して説明する。ステップ１１０６（図１１）の要求に応答して、認証サーバ１２６が、フル・パスポート・レコードまたはエラー・メッセージを送信することができる。ステップ１１１４の要求に応答して、認証サーバ１２６が、機械束縛パスポートまたはエラー・メッセージを送信することができる。
【００９６】
テスト・ステップ１１０８で、コンテンツ・プレイヤ１４２が、認証サーバ１２６によってフル・パスポート・レコードが返されたかどうかを判定する。そうでない場合には、エラーが返され、論理流れ図１０１８および１０００による処理が打ち切られる。逆に、フル・パスポート・レコードが返された場合には、処理はステップ１１１０に移る。
【００９７】
ステップ１１１０では、コンテンツ・プレイヤ１４２が、上でフル・パスポート・ジェネレータ５０４（図５）に関して説明した形で、ユーザ供給パスワードを用いてフル・パスポート・レコードのフル・パスポート情報を保護する。
【００９８】
処理は、ステップ１１１０（図１１）からステップ１１１２に移り、コンテンツ・プレイヤ１４２が、認証サーバ１２６から受信したフル・パスポート情報からフル・パスポート１４８Ａ（図３Ａ）を作成する。
【００９９】
処理は、ステップ１１１４からテスト・ステップ１１１６に移る。テスト・ステップ１１１６では、コンテンツ・プレイヤ１４２が、ステップ１１１４またはステップ１１０６の要求に応答する認証サーバ１２６から受信したデータが、機械束縛パスポート・レコードを表すかどうかを判定する。そうである場合には、コンテンツ・プレイヤ１４２は、機械束縛パスポート・レコードを使用してパスポート１４８Ｂ（図３Ｂ）などの機械束縛パスポートを作成し、論理流れ図１０１８による処理、したがってステップ１０１８（図１０）の処理が、完了する。
【０１００】
逆に、認証サーバ１２６によって返されたデータが、機械束縛パスポート・レコードを表さない場合には、処理はテスト・ステップ１１２０に移る。テスト・ステップ１１２０では、コンテンツ・プレイヤ１４２が、認証サーバ１２６による応答から、ユーザが選択された獲得されたコンテンツへのアクセスを正しく認可されるためにフル・パスポートを必要とすることが示されるかどうかを判定する。そうでない場合には、ユーザは、獲得したコンテンツへのアクセスが認可されることができず、コンテンツ・プレイヤ１４２は、エラーが発生したことを書き留め、そのエラーをユーザに報告し、論理流れ図１０１８による処理、したがってステップ１０１８（図１０）の処理を打ち切る。その一方で、認証サーバ１２６からの応答によって、ユーザがフル・パスポートを必要とすることが示される場合には、処理はステップ１１２２に移る。
【０１０１】
ステップ１１２２では、コンテンツ・プレイヤ１４２が、新しいパスポートの要求を認証サーバ１２６に送信する。この要求には、ハードウェア識別子１４０を指定するデータと、選択された獲得されたコンテンツから取り出された証明書が含まれる。獲得されたコンテンツの証明書によって、選択された獲得されたコンテンツが、証明書データベース１２４（図１）内で識別される。認証サーバ１２６は、下で論理流れ図１４００（図１４）に関して説明する形でそのような要求に応答し、フル・パスポート・レコードまたはエラー・メッセージのいずれかをコンテンツ・プレイヤ１４２に送信する。
【０１０２】
テスト・ステップ１１２４で、コンテンツ・プレイヤ１４２は、認証サーバ１２６がフル・パスポート・レコードとエラーのどちらを返したかを判定する。エラーが返された場合には、ユーザは、獲得したコンテンツへのアクセスを認証されることができず、コンテンツ・プレイヤ１４２は、エラーが発生したことを書き留め、そのエラーをユーザに報告し、論理流れ図１０１８による処理、したがってステップ１０１８（図１０）の処理を打ち切る。その一方で、認証サーバ１２６からの応答がフル・パスポート・レコードである場合には、処理はステップ１１２６（図１１）に移り、コンテンツ・プレイヤ１４２が、パスワードを入力するようにユーザに促す。
【０１０３】
処理は、ステップ１１２６からステップ１１１２に移り、コンテンツ・プレイヤ１４２が、認証サーバ１２６から受信したフル・パスポート情報からフル・パスポート１４８Ａ（図３Ａ）を作成する。ステップ１１１２（図１１）の後に、ステップ１１１０を介した場合でもステップ１１２６を介した場合でも、論理流れ図１０１８による処理、したがってステップ１０１８（図１０）の処理が、完了する。
【０１０４】
上で説明したように、認証サーバ１２６は、論理流れ図１２００（図１２）として示された形で、ハードウェア識別子を含むパスポートの要求に応答する。具体的に言うと、論理流れ図１２００は、ユーザがフル・パスポートを有しなかった場合にステップ１１１４（図１１）でコンテンツ・プレイヤ１４２によって行われる要求に対する認証サーバ１２６の応答を表す。したがって、認証サーバ１２６は、選択されたコンテンツが既に束縛されていなければならない同一の機械束縛パスポートの再発行を要求される。ステップ１２０２（図１２）で、認証サーバ１２６が、選択されたコンテンツの証明書を証明書データベース１２４から取り出す。たとえば、コンテンツ・プレイヤ１４２が、選択されたコンテンツの証明書として、証明書通し番号２１０２（図２１）を供給する場合に、認証サーバ１２６は、証明書データベース１２４（図１７）から証明書２１００を取り出す。
【０１０５】
テスト・ステップ１２０４（図１２）で、認証サーバ１２６が、獲得されたコンテンツが機械束縛パスポートに束縛されているかどうかを判定する。認証サーバ１２６は、証明書に対応するアカウント・レコード、たとえばアカウント・レコード１７０２（図１８）を取り出すことによって、そのような判定を行う。認証サーバ１２６は、名前１８０４、電子メール・アドレス１８０６、および国１８０８の対応するデータ値を有するアカウント・レコードを検索することによって、または証明書通し番号２１０２（図２１）などの証明書通し番号を通し番号１８０２（図１８）などの通し番号と相関させるレコードのテーブルを維持することによって、そのようなアカウント・レコードを突き止めることができる。取り出されたアカウント・レコードのタイプ・フィールド１８１６を検査し、そこに保管されたデータを、機械束縛タイプを表すデータと比較することによって。タイプ・フィールド１８１６のデータがそれを示す場合に、選択されたコンテンツが、機械束縛パスポートに束縛されている。そうでない場合には、選択されたコンテンツが、フル・パスポートに束縛されている。
【０１０６】
選択されたコンテンツが、機械束縛パスポートに束縛されていない場合には、認証サーバ１２６は、選択されたコンテンツにアクセスするのにフル・パスポートが必要であることを示すエラー・メッセージを返し、論理流れ図１２００による処理を打ち切る。フル・パスポートが必要になるのは、選択されたコンテンツが、既にフルのユーザ束縛パスポートに束縛されているからである。コンテンツを新しい機械束縛パスポートにも束縛できるようにすることによって、当初の購入するユーザによって使用されるもの以外の多数のコンピュータ・システムでコンテンツを再生できるようになり、セキュリティが危険にさらされるはずである。
【０１０７】
逆に、選択された獲得されたコンテンツが、機械束縛パスポートに束縛されている場合には、処理がステップ１２０６に移り、認証サーバ１２６が、コンテンツ・プレイヤ１４２からの要求で受信したハードウェア識別子に関連するコンピュータ・システムを表す鍵レコードを取り出す。具体的に言うと、認証サーバ１２６は、そのハードウェア識別子レコード１９１４がコンテンツ・プレイヤ１４２から受信したハードウェア識別子を表す鍵レコード、たとえば鍵レコード１７０４（図１９）を取り出す。
【０１０８】
そのような鍵レコードが見つからない場合には、処理は、テスト・ステップ１２０８（図１２）を介して終端ステップ１２１０に移る。終端ステップ１２１０では、認証サーバ１２６が、選択されたコンテンツにアクセスするためにユーザがフル・パスポートを必要とすることを示すエラー・メッセージを返す。ユーザがフル・パスポートを必要とするのは、コンテンツ・プレイヤ１４２から受信したハードウェア識別子が、テスト・ステップ１２０８で、認証サーバ１２６が知らないコンピュータ・システムを表すと判定されるからである。
【０１０９】
認証サーバ１２６が、鍵レコードを見つけたが、その鍵レコードが、テスト・ステップ１２０４で取り出された鍵レコードと同一でない場合には、処理はテスト・ステップ１２０８およびテスト・ステップ１２１２を介して終端ステップ１２１０に進む。ユーザがフル・パスポートを必要とするのは、機械束縛パスポートの要求が、獲得されたコンテンツが当初に束縛されたコンピュータ・システム以外のコンピュータ・システムから来たように見えるからである。
【０１１０】
鍵レコードが、テスト・ステップ１２０８の判定で見つかり、テスト・ステップ１２１２の判定で、選択された獲得されたコンテンツに関連する鍵レコードと同一である場合には、処理がテスト・ステップ１２１４に移り、認証サーバ１２６が、ポリシ判断を実施する。具体的に言うと、認証サーバ１２６は、機械束縛鍵を再発行できるかどうかを判定する。この例示的実施形態では、認証サーバ１２６は、ステップ１２０６（図１２）で取り出された鍵レコードの再発行限度フィールド１９１０（図１９）に保管されたデータに従って、そのような判定を行う。再発行が許可されない場合には、処理が終端ステップ１２１０に移り、認証サーバ１２６が、選択されたコンテンツにアクセスするためにユーザがフル・パスポートを必要とすることを示すエラー・メッセージを返す。逆に、機械束縛鍵の再発行が許可される場合には、処理がステップ１２１６に移る。
【０１１１】
ステップ１２１６では、認証サーバ１２６が、ヒストリ・レコード１７０６などの新しいヒストリ・レコードを用いて、鍵レコード１７０４（図１９）の再発行を証明書データベース１２４（図１７）に記録する。ステップ１２１６（図１２）の後に、認証サーバ１２６は、終端ステップ１２１８（図１２）で、鍵レコード１７０４（図１９）からの情報を含む機械束縛パスポート・レコードを、コンテンツ・プレイヤ１４２（図１）に返す。終端ステップ１２１０または終端ステップ１２１８の後に、論理流れ図１２００による処理が完了する。
【０１１２】
上で説明したように、論理流れ図１３００（図１３）は、フル・パスポート情報を含む新しいパスポートの要求に応答する認証サーバ１２６による処理を表す。具体的に言うと、論理流れ図１３００は、ユーザが既にフル・パスポートを有し、本質的に機械束縛鍵をそのフル・パスポートに追加することを求める場合の、ステップ１１０６（図１１）でコンテンツ・プレイヤ１４２によって行われる要求に対する、認証サーバ１２６による応答を表す。ステップ１３０２（図１３）で、認証サーバ１２６が、上でステップ１２０２（図１２）に関して説明した形で、選択されたコンテンツの証明書を取り出す。テスト・ステップ１３０４（図１３）で、認証サーバ１２６が、上でステップ１２０４（図１２）に関して説明した形で、コンテンツ証明書が機械束縛であるかどうかを判定する。
【０１１３】
コンテンツ証明書が機械束縛でない場合には、認証サーバ１２６は、終端ステップ１３０６（図１３）でエラーを返す。というのは、選択されたコンテンツが、異なるフルのユーザ束縛パスポートに束縛されている、すなわち、異なるユーザに束縛されているからである。逆に、証明書が機械束縛である場合には、処理がステップ１３０８に移る。
【０１１４】
テスト・ステップ１３０８では、ポリシ判断を実施し、認証サーバ１２６が、機械束縛鍵を事前に存在するフル・パスポートに追加できるかどうかを判定する。これが発生するのは、たとえば、ユーザが、あるクライアント・コンピュータ・システムでフル・パスポートについて登録し、別のクライアント・コンピュータ・システムで機械束縛パスポートについて登録し、その後、獲得したコンテンツを後者のクライアント・コンピュータ・システムから前者に移動することを求める場合である。ユーザは、鍵の２つの異なる組に束縛された獲得されたコンテンツを有する。これが許可されない場合には、処理は終端ステップ１３０６に移り、エラーが返される。逆に、これが許可される場合には、処理はテスト・ステップ１３１０に移る。
【０１１５】
テスト・ステップ１３１０で、認証サーバ１２６が、もう１つのポリシ判断すなわち、この特定のフル・パスポートにさらに鍵を含めることができるかどうかを実施する。通常、フル・パスポートは、限られた数の追加の鍵だけを保持することを許可され、ユーザが、友人および同僚から無制限に機械束縛鍵およびコンテンツを収集できないようになっている。この実施形態では、パスポート鍵限度１９１２（図１９）によって、鍵レコード１７０４に基づいてパスポートによって保持される鍵の最大個数が指定される。認証サーバ１２６は、ユーザのフル・パスポートに既に保持されている鍵の数を、パスポート鍵限度１９１２で指定された限度と比較して、パスポートにさらに鍵を含めることができるかどうかを判定する。
【０１１６】
パスポートにさらに鍵を含めることができない場合には、処理が終端ステップ１３０６（図１３）に移り、エラーが返される。終端ステップ１３０６では、テスト・ステップ１３０４、テスト・ステップ１３０８、またはテスト・ステップ１３１０のどれから来た場合でも、論理流れ図１３００による処理が打ち切られる。
【０１１７】
逆に、パスポートにさらに鍵を含めることができる場合には、処理がステップ１３１２に移り、鍵がパスポートに追加され、鍵の追加が、証明書データベース１２４内の新しいヒストリ・レコードに記録される。鍵を追加する際に、認証サーバ１２６が、パスポートに追加の鍵レコード２３１２（図２３）を追加する。追加の鍵レコード２３１２に、鍵２３１４および証明書２３１６が含まれる。証明書２３１６は、選択されたコンテンツが既に束縛されているコンテンツ・プレイヤの証明書であり、鍵２３１４は、相応する秘密鍵である。鍵２３１４は、暗号化されていない登録鍵２３０８（たとえば平文登録鍵５２０（図５）を参照されたい）を使用して暗号化される。１実施形態では、そのような暗号化が、認証サーバ１２６によってパスポート情報が返された後にコンテンツ・プレイヤ１４２（図１）によって実行される。というのは、コンテンツ・プレイヤ１４２が、ユーザ供給パスワードを直接に受け取るからである。代替実施形態では、認証サーバ１２６が、平文登録鍵５２０を維持し、パスポート要求と共にコンテンツ・プレイヤ１４２からユーザ供給パスワードを受信し、したがって、認証サーバ１２６が鍵２３１４（図２３）を暗号化する。
【０１１８】
ステップ１３１４（図１３）の後に、処理が終端ステップ１３１６に移り、認証サーバが、フル・パスポート・レコードを送信し、論理流れ図１３００による処理を完了する。
【０１１９】
論理流れ図１４００（図１４）は、ユーザがフル・パスポートを有しないが、前に獲得した機械束縛パスポートをフル・パスポートにアップグレードすることを要求している場合の、ステップ１１２２（図１１）でのコンテンツ・プレイヤ１４２の要求に対する、認証サーバ１２６による応答を表す。ユーザが、そのようなアップグレードを明示的に要求することができ、また、コンテンツが束縛されていないクライアント・コンピュータ・システムでユーザが機械束縛コンテンツの再生を試みた後にユーザが同意した時に、そのようなアップグレードを試みることができる。ステップ１４０２（図１４）で、認証サーバ１２６が、コンテンツへの鍵と共に新しいフル・パスポートを生成する。ステップ１４０２を、論理流れ図１４０２（図１５）として詳細に示す。
【０１２０】
ステップ１５０２で、認証サーバ１２６が、ステップ１１２２（図１１）の要求でコンテンツ・プレイヤ１４２から受信したハードウェア識別子に対応するハードウェア識別子１９１４（図１９）を有する鍵レコードを検索する。見つからない場合には、処理がステップ１５０４に移る。
【０１２１】
ステップ１５０４で、認証サーバ１２６が、新しい鍵対を作成し、新しい鍵対を表す、鍵レコード１７０４（図１９）などの新しい鍵レコードを形成する。ステップ１５０６で、認証サーバ１２６が、新しい鍵レコードの鍵を有するフル・パスポートを作成する。具体的に言うと、認証サーバ１２６は、新たに作成された鍵レコード１７０４の公開鍵１９０６（図１９）および有効性日付１９０８を、それぞれ公開鍵２３２０（図２３）および有効性日付２３２２にコピーする。認証サーバ１２６は、新しい証明書通し番号２３２４を作成し、証明書２３０２に署名して、署名２３２６を形成する。認証サーバ１２６は、秘密鍵１９０４（図１９）を秘密鍵２３０４（図２３）にコピーする。この実施形態では、秘密鍵２３０４が、上で説明したように、ステップ１０１０（図１０）でコンテンツ・プレイヤ１４２（図１）によって保護される。さらに、プライベート・ユーザ情報２３０６（図２３）は、コンテンツ・プレイヤ１４２によって完成させるために空のままにする。認証サーバ１２６は、新しい登録鍵２３０８および新しい乱数２３１０を作成する。コンテンツ・プレイヤ１４２は、上で説明したように、ステップ１０１０（図１０）で登録鍵２３０８を保護する。
【０１２２】
テスト・ステップ１５０２に戻って、受信したハードウェア識別子に対応する鍵レコードが見つかる場合には、処理がテスト・ステップ１５０８に移り、ポリシ判断が実施される。具体的に言うと、テスト・ステップ１５０８では、テスト・ステップ１３０８（図１３）によって実施されるものと同一のポリシ判断すなわち、フル・パスポートに機械束縛鍵を含めることができるかどうかを実施する。認証サーバ１２６が、フル・パスポートに機械束縛鍵を含めることができないと判定する場合に、処理が終端ステップ１５１０に移り、認証サーバ１２６が、エラーを返し、論理流れ図１４０２および１４００（図１４）による処理を完了する。逆に、フル・パスポートに機械束縛鍵を含めることができる場合には、処理はステップ１５１２（図１５）に移る。
【０１２３】
ステップ１５１２で、認証サーバ１２６が、証明書データベース１２４内の新しいヒストリ・レコードに、テスト・ステップ１５０２で突き止めた鍵レコードの鍵の発行を記録する。ステップ１５１４で、認証サーバ１２６が、機械束縛鍵レコードの鍵を用いてフル・パスポートを作成する。ステップ１５１４は、鍵レコード１７０４がステップ１５１４で新規作成されないことを除いて、上で説明したステップ１５０６に類似する。その代わりに、鍵レコード１７０４が、テスト・ステップ１５０２で突き止められた鍵レコードになる。
【０１２４】
ステップ１５０６またはステップ１５１４のいずれかの後に、論理流れ図１４０２による処理、したがってステップ１４０２（図１４）が、完了する。ステップ１４０４で、認証サーバ１２６が、受信したハードウェア識別子およびコンテンツ情報を使用して、新しいフル・パスポートを生成する。ステップ１４０４を、論理流れ図１４０４（図１６）として詳細に示す。
【０１２５】
テスト・ステップ１６０２で、認証サーバ１２６が、選択されたコンテンツの証明書が、ステップ１１２２の要求と共にコンテンツ・プレイヤ１４２から受信されたかどうかを判定する。ユーザが、特定のコンテンツの再生を要求せずに、機械束縛からユーザ束縛へのパスポートのアップグレードを明示的に要求する場合には、認証サーバ１２６によって受信される要求に、コンテンツ証明書が含まれない。しかし、アップグレード要求が、コンテンツが第２のクライアント・コンピュータ・システムに束縛されている時に第１のクライアント・コンピュータ・システムでコンテンツを再生する試みに応答したものである場合の、ステップ１１２２（図１１）を介して来た要求の場合には、その要求に、再生を試みられたコンテンツの証明書が含まれる。
【０１２６】
コンテンツ証明書がコンテンツ・プレイヤ１４２からの要求に含まれない場合には、処理はステップ１６０４（図１６）に移り、ステップ１５０６（図１５）またはステップ１５１４で作成されたフル・パスポート情報が返される。論理流れ図１４０２（図１６）による処理、したがってステップ１４０４（図１４）が、ステップ１６０４（図１６）の後に完了する。
【０１２７】
その一方で、コンテンツ証明書がコンテンツ・プレイヤ１４２からの要求に含まれる場合には、処理はテスト・ステップ１６０６に移る。テスト・ステップ１６０６では、認証サーバ１２６が、コンテンツ・プレイヤ１４２から受信したハードウェア識別子が、コンテンツ証明書と一致するかどうかを判定する。そうである場合には、ユーザが、自分のコンテンツが束縛された機械からのアップグレードを要求しており、処理がステップ１６０４に移り、ステップ１５０６（図１５）またはステップ１５１４で作成されたフル・パスポート情報が返される。逆に、受信したハードウェア識別子とコンテンツ証明書が一致しない場合には、処理はテスト・ステップ１６０８に移る。
【０１２８】
テスト・ステップ１６０８では、認証サーバ１２６が、ポリシ判断すなわち、機械束縛鍵をフル・パスポートに発行できるかどうかを実施する。これは、テスト・ステップ１５０８のポリシ判断と同一である。機械束縛鍵をフル・パスポートに発行することができない場合には、エラーが返され、論理流れ図１４０４および１４００（図１４）による処理が打ち切られる。逆に、機械束縛鍵をフル・パスポートに追加することができる場合には、処理はテスト・ステップ１６１２に移る。
【０１２９】
テスト・ステップ１６１２で、認証サーバ１２６が、もう１つのポリシ判断すなわち、このパスポートがさらに鍵を保持できるかどうかを実施する。これは、テスト・ステップ１３１０のポリシ判断と同一である。フル・パスポートがこれ以上の鍵を保持できない場合には、エラーが返され、論理流れ図１４０４および１４００（図１４）による処理が打ち切られる。逆に、フル・パスポートがさらに鍵を保持できる場合には、処理はステップ１６１４（図１６）に移る。
【０１３０】
ステップ１６１４で、認証サーバ１２６が、上でステップ１３１２（図１３）に関して説明した形で、フル・パスポートに機械束縛鍵を含めたことを証明書データベース１２４に記録する。ステップ１６１６で、認証サーバ１２６が、コンテンツ証明書からの鍵をフル・パスポートに追加する。たとえば、証明書２１００（図２１）が、コンテンツ証明書を表す場合に、認証サーバ１２６は、証明書２１００を証明書２３１６（図２３）として保管し、関連する鍵レコードの関連する秘密鍵１９０４を鍵２３１４（図２３）として保管する。
【０１３１】
ステップ１６１４（図１６）の後に、処理はステップ１６０４に移り、ステップ１５０６（図１５）またはステップ１５１４で作成されたフル・パスポート情報が、ステップ１６１６（図１６）の追加の鍵と共に返され、論理流れ図１４０４および１４００（図１４）による処理が完了する。
【０１３２】
したがって、機械束縛パスポートが、ユーザにとって比較的便利な保護された形で、再暗号化または他の形での束縛されたデータの修正を必要とせずに、ユーザ束縛パスポートに変換される。
【０１３３】
認証サーバとコンテンツ・プレイヤの間の保護された接続
上で簡単に説明したように、認証サーバ１２６（図１）およびコンテンツ・プレイヤ１４２は、広域ネットワーク１０６を介する保護された接続を介して通信する。１実施形態では、既知のＳｅｃｕｒｅ  Ｓｏｃｋｅｔｓ  Ｌａｙｅｒ（ＳＳＬ）タイプの接続が、認証サーバ１２６とコンテンツ・プレイヤ１４２の間の保護された通信に使用される。
【０１３４】
代替実施形態では、認証サーバ１２６とコンテンツ・プレイヤ１４２が、ＳＳＬプロトコルより単純な、暗号的に保護されたセッションで互いに通信する。コンテンツ・プレイヤ１４２が、認証サーバ１２６に要求メッセージを送信して、認証サーバ１２６の証明書を得る。コンテンツ・プレイヤ１４２は、認証サーバ１２６の公開鍵を使用してその登録情報を暗号化し、その結果、認証サーバ１２６だけが、登録情報を解読できるようになる。認証サーバ１２６は、パスポートを作成するのに必要な情報をコンテンツ・プレイヤ１４２に返す。この情報は、コンテンツ・プレイヤ１４２によって供給された登録情報から導出された鍵を使用して暗号化され、コンテンツ・プレイヤ１４２だけが、そのパスポート情報を解読できるようになっている。
【０１３５】
上の説明は、単に例示的であって制限的ではない。本発明は請求項によってのみ制限される。
【図面の簡単な説明】
【図１】  広域コンピュータ・ネットワークを介してクライアント・コンピュータ・システムに結合されたサーバ・コンピュータ・システムを含むコンピュータ・システムのブロック図である。クライアント・コンピュータ・システムには、本発明に従って保護されるデータにアクセスするコンテンツ・プレイヤが含まれる。
【図２】  図１のコンテンツ・プレイヤを詳細に示すブロック図である。
【図３Ａ】  図２のコンテンツ・プレイヤのセキュリティ・マネージャを詳細に示すブロック図である。
【図３Ｂ】  図２のコンテンツ・プレイヤのセキュリティ・マネージャを詳細に示すブロック図である。
【図４】  本発明による機械束縛パスポート・ジェネレータのブロック図である。
【図５】  本発明によるフル、ポータブル・パスポート・ジェネレータのブロック図である。
【図６Ａ】  本発明による、機械束縛パスポートをフル・パスポートに変換するパスポート・コンバータのブロック図である。
【図６Ｂ】  代替実施形態による、パスポートの変換を示す論理流れ図である。
【図７】  本発明によるディジタル・データ獲得に関するユーザの認証の論理流れ図である。
【図８】  本発明によるユーザ認証中の新しい機械束縛パスポートの獲得の論理流れ図である。
【図９】  本発明による、新しい機械束縛パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１０】  本発明によるユーザ認証中の新しいフル・パスポートの獲得の論理流れ図である。
【図１１Ａ】  本発明による、新しいフル・パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１１Ｂ】  本発明による、新しいフル・パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１２Ａ】  本発明による、新しいフル・パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１２Ｂ】  本発明による、新しいフル・パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１３】  本発明による、新しいフル・パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１４】  本発明による、新しいフル・パスポートの要求の、図１のサーバ・プロセスによる処理の論理流れ図である。
【図１５】  図１４の論理流れ図の１ステップの処理を詳細に示す論理流れ図である。
【図１６Ａ】  図１４の論理流れ図の１ステップの処理を詳細に示す論理流れ図である。
【図１６Ｂ】  図１４の論理流れ図の１ステップの処理を詳細に示す論理流れ図である。
【図１７】  図１の証明書データベースを詳細に示すブロック図である。
【図１８】  図１７のアカウント・レコードを詳細に示すブロック図である。
【図１９】  図１７の鍵レコードを詳細に示すブロック図である。
【図２０】  図１７のヒストリ・レコードを詳細に示すブロック図である。
【図２１】  証明書のブロック図である。
【図２２】  図１のパスポートを詳細に示すブロック図である。
【図２３】  ユーザ束縛パスポートのブロック図である。
【図２４】  機械束縛パスポートのブロック図である。
【図１】
0004689920.tif 000002
【図２】
0004689920.tif 000003
【図３Ａ】
0004689920.tif 000004
【図３Ｂ】
0004689920.tif 000005
【図４】
0004689920.tif 000006
【図５】
0004689920.tif 000007
【図６Ａ】
0004689920.tif 000008
【図６Ｂ】
0004689920.tif 000009
【図７】
0004689920.tif 000010
【図８】
0004689920.tif 000011
【図９】
0004689920.tif 000012
【図１０】
0004689920.tif 000013
【図１１Ａ】
0004689920.tif 000014
【図１１Ｂ】
0004689920.tif 000015
【図１２Ａ】
0004689920.tif 000016
【図１２Ｂ】
0004689920.tif 000017
【図１３】
0004689920.tif 000018
【図１４】
0004689920.tif 000019
【図１５】
0004689920.tif 000020
【図１６Ａ】
0004689920.tif 000021
【図１６Ｂ】
0004689920.tif 000022
【図１７】
0004689920.tif 000023
【図１８】
0004689920.tif 000024
【図１９】
0004689920.tif 000025
【図２０】
0004689920.tif 000026
【図２１】
0004689920.tif 000027
【図２２】
0004689920.tif 000028
【図２３】
0004689920.tif 000029
【図２４】
0004689920.tif 000030