JP4689920B2 - ディジタル・データの無許可アクセスを防止するための適応可能セキュリティ機構 - Google Patents

ディジタル・データの無許可アクセスを防止するための適応可能セキュリティ機構 Download PDF

Info

Publication number
JP4689920B2
JP4689920B2 JP2001547236A JP2001547236A JP4689920B2 JP 4689920 B2 JP4689920 B2 JP 4689920B2 JP 2001547236 A JP2001547236 A JP 2001547236A JP 2001547236 A JP2001547236 A JP 2001547236A JP 4689920 B2 JP4689920 B2 JP 4689920B2
Authority
JP
Japan
Prior art keywords
key
passport
user
bound
content
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2001547236A
Other languages
English (en)
Other versions
JP2003518351A (ja
Inventor
アンセル,スティーブン・ティ
チェレンソン,アンドリュー・アール
リシュニュー,レオン
キャノン,スーザン・エイ
アラード,エドワード・ジェイ
ブラウネル,ジェイソン・エス
ストロウド,ミカー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2003518351A publication Critical patent/JP2003518351A/ja
Application granted granted Critical
Publication of JP4689920B2 publication Critical patent/JP4689920B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1011Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/101Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
    • G06F21/1015Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to users

Description

【0001】
(発明の分野)
本発明は、ディジタル・データへの無許可アクセスを制限するシステムに関し、具体的には、そのようなディジタル・データへのアクセスを特定の計算機または特定のユーザのいずれかに制限する機構と、制限されたアクセスを特定の計算機から特定のユーザに変換する機構に関する。
【0002】
(発明の背景)
無許可アクセスからのディジタル・データの保護は、ソフトウェア・ベンダがポータブル・データ記憶媒体でのコンピュータ・ソフトウェアの配布を初めて開始した時からの、ソフトウェア・ベンダの主たる懸念であった。そのような保護は、現在、他の形態のディジタル・データもポータブル・データ記憶媒体で搬送されるので、新たな重要性を持つようになった。たとえば、現在のパーソナル・コンピュータは、オーディオ・コンパクト・ディスク(CD)およびディジタル・ビデオ・ディスク(DVD)などのいたるところにあるオーディオビジュアル・エンターテイメントにも使用されるデータ記憶媒体を読み取り、書き込む。したがって、一般的なパーソナル・コンピュータは、非常に価値のあるデータを複製することができ、オリジナル・データの正確なコピーを、知人に簡単に配布することができるようになる。
【0003】
最近の開発の1つすなわちインターネットによって、簡単にコピー可能なディジタル・データの商業的価値に対する脅威が非常に大きくなった。現在、個人が、価値のあるディジタル・データを数百万人による無料コピーのためにポストすることができ、頻繁にそうしている。そのようなポストは、無許可コピーを防止するすべての試みの破滅的な失敗を表す。
【0004】
ソフトウェアの無許可コピーを防ぐ初期の試みの1つが、ソフトウェアを実行するために、ハードウェア・デバイスをコンピュータに取り付けることを必要とすることであった。そのようなデバイスを、一般に「ドングル」と称した。ドングルには、実行の前にソフトウェアによって検査される識別データが含まれるか、暗号データおよび/または実行の前にソフトウェアを解読する論理が含まれるかのどちらかであった。ドングルは、他のコンピュータにドングルを取り付けることによって、ソフトウェアを別のコンピュータに転送できるように、通常は、外部に取り付けられていた。
【0005】
ドングルは市場では大きい成功を実現しなかった。理由の1つが、複数のソフトウェア製品が各コンピュータにインストールされる可能性があることである。その結果、多数のドングルを各コンピュータに取り付けなければならなくなる。もう1つの理由は、新しいハードウェア・デバイスをコンピュータに追加することが、意図されない結果を有し、コンピュータの通常動作に干渉する可能性があることである。第3の理由は、多くの人が、複数のコンピュータを有し、複数のドングルの1つを定期的にあるコンピュータから別のコンピュータに移動することが、非常に不便であることである。一般に、ユーザは、競合するソフトウェア・ベンダが追加ハードウェアを必要としない場合に、ソフトウェアを実行するためにコンピュータに新しいハードウェアを取り付けることを好まない。
【0006】
たとえばドングルの使用による、機械束縛は、一般に、コンピュータ・ソフトウェアではなくオーディオビジュアル・コンテンツを購入する人にとって、容認できないものである。おそらくはオーディオビジュアル・コンテンツの歴史的配布媒体(たとえば、ビニール・アルバム、オーディオCD、ビデオ・テープ、DVDなど)のポータブルな性質の結果として、一般消費者が、購入者が所有するどの装置でもオーディオビジュアル・コンテンツを再生することが許容されることを期待していると思われる。たとえば、特定の映画のビデオ・カセット・テープの購入者は、互換フォーマットのどのビデオ・カセット・プレイヤでもその映画を観ることができることを期待する。したがって、オーディオビジュアル・コンテンツの厳密な機械束縛は、一般に、一般消費者によって容認可能ではない。
【0007】
ソフトウェア・ベンダがソフトウェアの無許可コピーをそれによって妨害することを試みるもう1つの機構が、ソフトウェアを特定のユーザに束縛することである。たとえば、ソフトウェアの成功裡の実行を、特定のユーザによるパスワードの入力を条件とするものとすることができる。それによって、一般に、不十分なセキュリティがもたらされる。というのは、ユーザが、ソフトウェアの無許可コピーと共にパスワードを友人または同僚に伝えることができるからである。さらに、ユーザによってアクセスされる各ソフトウェア製品および/または各オーディオビジュアル作品のパスワードを覚えるようにユーザに要求することは、ユーザにとってかなりの不便になる。
【0008】
一般に、コピー・プロテクトは、ソフトウェアおよび/またはオーディオビジュアル作品などのディジタル・データのベンダのためになるが、購入者のためにはならないことに留意されたい。したがって、そのようなディジタル・データの購入者は、不便に対する相対的に低い許容度を有する。その結果、一般消費者は、より少ないコピー・プロテクトを使用するベンダからデータを購入する傾向を有する。
【0009】
必要なものは、ディジタル記憶媒体の著作権保護可能なコンテンツが、それによって無許可コピーから保護されると同時に、そのようなディジタル・ストレージの所有者にコンテンツの使用および享受の正当な妨げられない便利さを与える機構である。
【0010】
(発明の要約)
本発明によれば、データ自体を修正せずに、コンテンツを機械束縛状態からユーザ束縛状態に変換することができる。データ自体を修正するのではなく、コンテンツにアクセスするのに使用される鍵を、機械束縛状態からユーザ束縛状態に変換する。具体的に言うと、鍵は、パスポート・データ構造に保持され、このパスポート・データ構造が、機械束縛またはユーザ束縛のいずれかを表すことができる。
【0011】
機械束縛では、パスポートに、秘密鍵と、秘密鍵の対とされた公開鍵を含む証明書が含まれる。秘密鍵は、パスポートが束縛されるコンピュータ・システムに固有のハードウェア識別子を使用して暗号化される。ハードウェア識別子は、1つまたは複数のハードウェア・デバイスに固有であり、好ましくは、束縛を意図されたコンテンツにアクセスすることができるコンピュータ・システムに関して一意である。公開鍵は、コンテンツの暗号化に用いられるマスタ鍵を暗号化し、機械束縛パスポートの証明書と共に、コンテンツに含まれる媒体鍵をそれから作成するのに使用される。その結果、秘密鍵が、媒体を解読し、マスタ鍵を復元し、したがってコンテンツを解読するのに必要になる。特定のコンピュータ・システムのハードウェア識別子を用いて秘密鍵を暗号化することによって、コンテンツが、効果的にそのコンピュータ・システムに束縛される。というのは、そのコンピュータのハードウェア識別子が、マスタ鍵を回復するのに必要になるからである。
【0012】
ユーザ束縛でも、パスポートに、秘密鍵と、秘密鍵の対とされた公開鍵を含む証明書が含まれる。ユーザ束縛パスポートでは、ユーザ供給パスワードを用いて秘密鍵が暗号化されることを除いて、機械束縛パスポートとほとんど同一の形で秘密鍵が保護される。したがって、パスワードが、秘密鍵を解読するのに必要であり、この秘密鍵が、媒体鍵からマスタ鍵を解読するのに必要であり、マスタ鍵が、コンテンツを解読するのに必要である。パスワードを要求することによって、コンテンツが、パスワードを所有するユーザに束縛される。
【0013】
コピー・プロテクトは、著作権の所有者のためになり、著作権保護された作品の消費者には不便なので、自分のパスワードを共用する意欲をくじくものが、ユーザ束縛パスポートに含まれる。具体的に言うと、ユーザ束縛パスポートには、ユーザによって注意深く保護されることが期待される情報が含まれる。たとえば、ユーザ・パスポートに、クレジット・カード番号、有効期限、カード所有者名など、クレジット・カードに資金を請求するのに十分な、ユーザのクレジット・カード情報を含めることができる。請求先住所も含めることができる。コンテンツの支払中に、プライベート・ユーザ情報が表示される。したがって、ある人のパスポートを共用することに、その人の信用を共用することが含まれる。
【0014】
ユーザには、機械束縛パスポートまたはユーザ束縛パスポートのいずれかを有するという選択肢が与えられる。機械束縛パスポートは、コンテンツを特定の機械でのみ再生できるので、より制限されている。これは、単一のコンピュータだけへのアクセスを有する人、または、コンピュータ・ネットワークを介する著作権保護された作品の購入のプロセス全体を一般的に信用できない人に適当である。ユーザ束縛パスポートは、制限がより少なく、コンピュータ・システムからコンピュータ・システムへ移動することができる。しかし、ユーザ束縛パスポートは、ユーザが、より重要なプライベート情報を提供することを必要とする。新規ユーザが、機械束縛パスポートを選び、後にユーザ束縛パスポートへのアップグレードを望むことが予期される。これは、たとえば、ユーザが、コンテンツが既に束縛されているコンピュータ・システムを売るか変更する場合に、必要になる可能性がある。
【0015】
機械束縛パスポートは、束縛されたコンテンツを修正せずにユーザ束縛パスポートにアップグレードすることができる。具体的に言うと、機械束縛パスポートのオリジナルの秘密鍵および公開鍵が、新たに作成されるユーザ・パスポートで使用され、コンテンツの再暗号化が不要になる。具体的に言うと、機械束縛パスポートの秘密鍵が、平文形式で、ユーザ束縛パスポートに含まれ、ユーザ供給パスワードを使用して暗号化されて、秘密鍵がユーザに束縛される。さらに、プライベート・ユーザ情報が、収集され、検証され、ユーザ束縛パスポートに含められる。したがって、ユーザ供給パスワードによって、秘密鍵が解読されて、ハードウェア識別子を使用する機械束縛パスポートの秘密鍵の解読からもたらされるものと同一の平文の秘密鍵が提供される。したがって、前に機械束縛されていたコンテンツを、ユーザ束縛パスポートを使用して解読することができるようになる。さらに、ユーザ束縛パスポートは、特定のハードウェア識別子に束縛されないので、コンテンツおよびユーザ束縛パスポートを、コンピュータ・システムからコンピュータ・システムに移動することができ、ユーザのパスワードを入力し、ユーザのプライベート情報を見るのに必要な労力だけで再生することができる。
【0016】
さらに、機械束縛パスポートのアップグレードを、コンテンツが束縛されている機械以外の機械で機械束縛コンテンツを再生する試みが行われたことが検出された時に、自動的に開始することができる。
【0017】
時には、一人のユーザが複数のパスポートを有する場合がある。一部のコンテンツを、機械束縛パスポートに束縛されたものとし、残りのコンテンツを、その後にユーザ束縛パスポートに束縛されたものとすることができる。機械束縛コンテンツのアップグレードには、前に機械に束縛されていた鍵をユーザ束縛パスポートに追加し、パスポートに鍵の複数の組が含まれるようにすることが含まれる。その結果、同一のパスポートを使用して、2つの別々のパスポートの下で獲得されたコンテンツを再生することができる。
【0018】
(詳細な説明)
本発明によれば、データ自体を修正せずに、コンテンツを機械束縛状態からユーザ束縛状態に変換することができる。データを修正するのではなく、コンテンツのアクセスに使用される鍵を、機械束縛状態からユーザ束縛状態に変換する。具体的に言うと、鍵は、パスポート・データ構造に保持され、このパスポート・データ構造が、機械束縛またはユーザ束縛のいずれかを表すことができる。
【0019】
ディジタル・データ配布システム100(図1)に、広域コンピュータ・ネットワーク106を介して互いに結合された認可システム102とクライアント・コンピュータ・システム104が含まれる。1実施形態では、広域コンピュータ・ネットワーク106が、インターネットである。広域コンピュータ・ネットワーク106が図示されているが、本明細書で説明するシステムの原理が、ローカル・エリア・ネットワークなどの他のネットワークに同等に適用可能であることを諒解されたい。認可システム102には、コンテンツ・データベース122と証明書データベース124が含まれる。コンテンツ・データベース122には、認可システム102からの配布に使用可能なディジタル・データ・コンテンツが含まれる。そのようなコンテンツには、たとえば、オーディオビジュアル作品および/またはコンピュータ・ソフトウェアを表すデータを含めることができる。
【0020】
コンテンツ・データベース122が、認可システム102に含まれるものとして図示されているが、コンテンツ配布をアクセス認証と分離し、コンテンツ・データベース122を異なるサーバ・システムに配置することが有利である場合があることを諒解されたい。利点の1つが、コンテンツ配布に大量のデータの転送が伴う傾向があることである。そのような転送は、配布されるコンテンツを受信するクライアント・コンピュータ・システムの近くに配置された分散配布サーバから配布されることから利益を得る。逆に、認証には、高速データ転送に依存するのではなく、システムワイドの認証の集中データベースから利益を得る多数の少量のトランザクションが伴う。しかし、説明を単純にするために、サーバ・タスクと認証タスクの両方が、認可システム102によって処理され、認可システム102に、コンテンツ・データベース122と証明書データベース124の両方が含まれる。
【0021】
証明書データベース124には、コンテンツ・データベース122の前に配布されたコンテンツが、特定のクライアント・コンピュータ・システムまたは特定の人間の購入者のいずれかに対して保護される形を表すデータが含まれる。証明書データベース124に保管される情報のタイプを下でより完全に説明する。簡単に言うと、その情報には、たとえば既知のITU−T X.509証明書データ構造などの既知の認証データ構造であるディジタル証明書が含まれる。
【0022】
認可システム102には、認可システム102内で実行中の1つまたは複数のコンピュータ・プロセスのすべてまたは一部である認証サーバ126も含まれる。認証サーバ126は、広域コンピュータ・ネットワーク106を介して要求を受信し、そのような要求をサービスする。そのような要求には、配布されたコンテンツの機械束縛セキュリティの要求、配布されたコンテンツのユーザ束縛セキュリティの要求、および、下でより完全に説明する形での、配布されたコンテンツのセキュリティの変換の要求が含まれる。
【0023】
クライアント・コンピュータ・システム104には、獲得されたコンテンツのデータベース144、ユーザ・データベース146、パスポート148などの1つまたは複数のパスポート、ハードウェア識別子140、およびコンテンツ・プレイヤ142が含まれる。獲得されたコンテンツのデータベース144には、コンテンツ・データベース122およびおそらくは類似するコンテンツ・データベースから獲得したコンテンツが含まれる。そのような獲得されたコンテンツは、下でより完全に説明する形で、1つまたは複数のパスポートを使用して保護される。
【0024】
ユーザ・データベース146には、クライアント・コンピュータ・システム104の1人または複数のユーザに関する情報が保管される。そのような情報には、たとえば、ユーザが自分自身を認証するのに使用することができるパスワードが含まれる。「パスワード」は、本明細書では、認証の目的でユーザによって供給されるデータを記述するのに使用される。したがって、「パスワード」は、本明細書では、単一単語パスワードと、時々一般にパスフレーズとも称する複数単語パスワードの両方を記述するのに使用される。
【0025】
パスポート148などのパスポートは、獲得されたコンテンツのデータベース144内の獲得されたコンテンツを保護する機構を表す。パスポートは、認証サーバ126によって発行される。パスポートによって、下でより完全に説明する形で、特定のクライアント・コンピュータ・システムおよび/または特定のユーザに対してコンテンツを保護することができる。
【0026】
ハードウェア識別子140によって、証明書データベース124内でクライアント・コンピュータ・システム104が一意に識別される。さらに、ハードウェア識別子140は、クライアント・コンピュータ・システム104内で変更することが困難すなわち読取専用のデータから導出される。たとえば、ハードウェア識別子140は、(i)クライアント・コンピュータ・システム104のプロセッサのシリアル・ナンバ、(ii)クライアント・コンピュータ・システム104が広域ネットワーク106にアクセスするのに用いるネットワーク・アクセス・カードのMACアドレス、および(iii)クライアント・コンピュータ・システム104にインストールされた1つまたは複数のハード・ディスク・ドライブのシリアル・ナンバなどの、クライアント・コンピュータ・システム104の1つまたは複数のハードウェア・コンポーネントに固有のデータのハッシュとすることができる。この例示的実施形態では、ハードウェア識別子140が、米国カリフォルニア州サン・ノゼのPACE Anti−Piracy社から入手可能なInterlok(登録商標)ソフトウェア・ツール・セットを使用して形成される。
【0027】
コンテンツ・プレイヤ142は、クライアント・コンピュータ・システム104内で実行中の1つまたは複数のコンピュータ・プロセスのすべてまたは一部であり、獲得されたコンテンツのデータベース144からの獲得されたコンテンツ(本明細書では、時々単純に「獲得されたコンテンツ」または「獲得されたコンテンツ144」と称する)を再生する。たとえば、獲得されたコンテンツが、オーディオ作品を表す場合に、コンテンツ・プレイヤ142は、獲得されたコンテンツのデータを、クライアント・コンピュータ・システム104のサウンド・カードおよびオーディオ・スピーカを介する再生に適当なフォーマットのデータに変換する。同様に、獲得されたコンテンツがオーディオビジュアル作品を表す場合に、コンテンツ・プレイヤ142は、獲得されたコンテンツのデータを、クライアント・コンピュータ・システム104のサウンド・カードおよびオーディオ・スピーカを介する再生およびビデオ・ディスプレイへの再生に適当なフォーマットのデータに変換する。さらに、獲得されたコンテンツが、コンピュータ・ソフトウェアである場合には、コンテンツ・プレイヤ142が、獲得されたコンテンツからコンピュータ命令をデコードし、これらのデコードされたコンピュータ命令を、クライアント・コンピュータ・システム104に実行させる。獲得されたコンテンツには、一般に、(i)音楽、他の記録された音声、動画、および静止画などのオーディオビジュアル作品、(ii)ASCIIテキスト、リッチ・テキスト・フォーマット(RTF)、Microsoft(登録商標)Word、およびAdobe(登録商標)Acrobat(登録商標)のportable document format(PDF)などの文書、および(iii)実行可能コンピュータ・ソフトウェアを制限なしに含む、あらゆる種類のデータを含めることができる。
【0028】
コンテンツ・プレイヤ142を、図2に詳細に示す。コンテンツ・プレイヤ142には、セキュリティ・マネージャ206によって供給されるマスタ鍵208を使用して獲得されたコンテンツ144を解読する解読器202が含まれる。この例示的実施形態では、解読器202が、効率のためにFIPS 46−2 DESまたはRSA Security社のRC4などの対称鍵解読アルゴリズムを使用する。この実施形態で効率が重要であるのは、獲得されたコンテンツを、リアルタイム再生のためにデコーダ204によって解読とデコードの両方を行わなければならないからである。本明細書で使用するリアルタイム再生は、コンテンツ・プレイヤ142による再生が、時間の単位ごとに、獲得されたコンテンツ144からの解読されデコードされた最小量のデータを必要とすることを意味する。たとえば、獲得されたコンテンツ144がオーディオ作品を表す場合に、コンテンツ・プレイヤ142は、一般に、CD品質のステレオ・オーディオの場合に、44100オーディオ・サンプル毎秒すなわち176400バイト毎秒を解読し、デコードしなければならない。
【0029】
対称鍵解読は、獲得されたコンテンツ144の解読での効率をもたらすが、これは、マスタ鍵208が、何らかの形でサーバ・プロセス126(図1)から通信されることを必要とし、サーバ・プロセス126は、マスタ鍵208(図2)を使用してコンテンツ・プレイヤ142へのコンテンツを暗号化する。セキュリティ・マネージャ206は、保護された形でマスタ鍵208を導出する。
【0030】
セキュリティ・マネージャ206を、図3Aおよび3Bに詳細に示す。図3Aは、ユーザ束縛パスポート148Aからのマスタ鍵208の導出を示し、図3Bは、機械束縛パスポート148Bからのマスタ鍵208の導出を示す。セキュリティ・マネージャ206には、解読器306が含まれ、解読器306は、獲得されたコンテンツ144に含まれる媒体鍵302からマスタ鍵208を解読するのに秘密鍵304を使用する。秘密鍵304は、証明書データベース124(図1)内の秘密鍵/公開鍵対の秘密鍵である。解読器306(図3A)は、たとえばRSA Security社の既知のRSA公開鍵アルゴリズムなどの非対称鍵解読を使用する。
【0031】
対称鍵暗号化/解読と非対称鍵暗号化/解読は、既知であるが完全を期してここで簡単に説明する。対称鍵暗号化では、データの暗号化と解読に同一の鍵を使用する。たとえば、データが、鍵と称する特定のデータ・パターンを使用して暗号化される。データを暗号化することによって、データが、多少ランダムに見える形でスクランブルされ、データが判読できないように見えるようになる。暗号化されたデータは、同一の特定の鍵を使用してデータを解読することによって、元の「平文」状態に戻すことができる。
【0032】
非対称鍵暗号化では、互いに関連して対を形成する2つの鍵を使用する。一方の鍵は、秘密に保たれ、他方の鍵は、公開される。従って、鍵対を、時々秘密鍵/公開鍵対と称する。いずれかの鍵を用いる暗号化によって、暗号化されたデータが形成され、このデータは、対の他方の鍵を使用して解読することができる。したがって、対の鍵を、時々、一般に、互いに相応すると称する。コンテンツ・プレイヤ142(図1)は、その秘密鍵を使用してデータを暗号化することによって、データに暗号的に署名することができる。コンテンツ・プレイヤ142の公開鍵を持つ者は誰でも、コンテンツ・プレイヤ142の公開鍵を使用してそのデータを解読することによって、署名を検証することができる。同様に、コンテンツ・プレイヤ142の公開鍵を持つ者は誰でも、公開鍵を使用してデータを暗号化することができ、そのデータは、コンテンツ・プレイヤ142の秘密鍵を使用しなければ解読することができない。たとえば、サーバ・プロセス126が、媒体鍵302を形成するために鍵対の公開鍵を使用し、パスポート148Aに対の秘密鍵を含めることによって、パスポート148Aのマスタ鍵208(図3)を暗号化する。その結果、媒体鍵302は、パスポート148A内に保管された秘密鍵すなわち、プレイヤの秘密鍵304を使用して解読することができる。
【0033】
セキュリティ・マネージャ206は、ユーザ束縛パスポート148A(図3A)または機械束縛パスポート148B(図3B)のいずれかから秘密鍵304を得る。パスポートは、たとえば媒体鍵302などの媒体鍵を解読するのに使用される、獲得されたコンテンツの秘密鍵をユーザまたはコンピュータ・システムに束縛するデータ構造である。ユーザ束縛パスポートは、特定のユーザに束縛され、ユーザが獲得したコンテンツの再生を望むコンピュータ・システムに移送することができる。したがって、ユーザ束縛パスポートを、時々、フル・パスポートまたはポータブル・パスポートと称する。機械束縛パスポートは、獲得したコンテンツの再生のために特定のコンピュータ・システムに束縛され、一般に、そのコンピュータ・システムのどのユーザでも使用することができる。
【0034】
セキュリティが、媒体鍵302および秘密鍵304と共に解読器306によって提供されることに留意されたい。パスポート148Aおよび148Bは、秘密鍵304をユーザまたは特定のコンピュータ・システムのいずれかに束縛することができるデータ構造を提供する。そのような束縛によって、獲得されたコンテンツのポータビリティが制限されると同時に、ユーザに、どのタイプの束縛が便利であるかに関する選択肢が与えられる。言い換えると、ユーザは、機械束縛パスポートまたはユーザ束縛パスポートのいずれかを選択することができる。
【0035】
秘密鍵束縛に関するこの柔軟性の理解および認識を容易にするために、パスポートの構造を説明する。パスポート148(図1)は、機械束縛またはユーザ束縛のいずれかとすることができる。パスポート148を、図22に詳細に示すが、図22には、機械束縛パスポートとユーザ束縛パスポートの両方に共通するコンポーネントが示されている。パスポート148には、パスポート情報フィールド2204、署名アルゴリズム・フィールド2206、および署名フィールド2208が含まれる。
【0036】
パスポート情報フィールド2204には、パスポート148に束縛された獲得されたコンテンツを解読することができる秘密鍵を含む、パスポートの実質的な情報を表すデータが含まれる。パスポート情報フィールド2204に保管されるデータのタイプおよび構造は、パスポートのタイプに依存する。たとえば、パスポート148A(図3A)は、ユーザ束縛のフル・パスポートであり、これには、図23に関して下で説明するタイプおよび構造のパスポート情報2204Aが含まれる。パスポート148B(図3B)は、機械束縛パスポートであり、これには、図24に関して下で説明するタイプおよび構造のパスポート情報2204Bが含まれる。
【0037】
署名アルゴリズム・フィールド2206および署名フィールド2208が、集合的に、パスポート情報フィールド2204の暗号的署名を指定する。署名アルゴリズム・フィールド2206では、パスポート情報フィールド2204に暗号的に署名するのに使用された、特定のアルゴリズムおよびそのパラメータが指定される。署名フィールド2208には、認証サーバ126の秘密鍵を使用した、結果の暗号的署名を表すデータが含まれる。署名アルゴリズム・フィールド2206および署名フィールド2208は、パスポート情報2204に保管されたデータが不正に変更されたかどうかを判定する効果的な機構を提供する。たとえば、クラッカが、パスポート情報2204に保管されたデータを変更した場合に、クラッカは、その不正変更が検出されなくなるように、対応する署名を作成しなければならない。しかし、認証サーバ126の秘密鍵は、注意深く保護され、厳密に秘密に保たれるので、そのような暗号的署名の偽造は特に困難である。
【0038】
機械束縛パスポート148Bのパスポート情報2204B(図24)を、図3Bに関して下で説明する。パスポート情報2204A(図23)には、次のデータ・コンポーネントが含まれる:(i)ユーザ証明書2302、(ii)秘密鍵2304、(iii)プライベート・ユーザ情報2306、および(iv)登録鍵2308。
【0039】
ユーザ証明書2302は、ユーザがそれによって認証されるディジタル証明書である。ディジタル証明書およびその認証での使用は、既知である。1実施形態では、ユーザ証明書2302が、ITU−T X.509ディジタル証明書の形である。
【0040】
ユーザ証明書2302には、公開鍵2320、有効性日付2322、証明書通し番号2324、およびディジタル署名2326が含まれる。公開鍵2320と秘密鍵2304は対とされている。ユーザ束縛パスポート148Aが束縛されたユーザにコンテンツを束縛するために、マスタ鍵208が、公開鍵2320を使用して暗号化され、秘密鍵2304だけが、媒体鍵302からマスタ鍵208を解読できるようにする。有効性日付2322によって、ユーザ証明書2302が有効とみなされる期間が指定される。証明書通し番号2324によって、証明書データベース124(図1)内でユーザ証明書2302が一意に識別される。ディジタル署名2326は、ユーザ証明書2302を発行する実体によって添付されたディジタル署名であり、ユーザ証明書2302が、(i)不正に変更されておらず、(ii)適当な認証局によって発行されたことを検証するのに使用される。
【0041】
秘密鍵2304は、マスタ鍵208(図3A)を暗号化し、これによって媒体鍵302を形成するのに使用される鍵対の秘密鍵、たとえば秘密鍵304である。したがって、秘密鍵304を使用するセキュリティ・マネージャ206の解読器306による媒体鍵302の暗号化によって、マスタ鍵208が得られる。さらに、秘密鍵2304は、ユーザ証明書2302の公開鍵2320の相応鍵である。秘密鍵2304は、登録鍵2308を使用して暗号化されるが、これは下で説明する。
【0042】
プライベート・ユーザ情報2306には、パスポート148Aが束縛されるユーザに関する情報が含まれる。そのような情報は、プライベートであり、ユーザによって保護されることが好ましい。プライベート・ユーザ情報2306は、獲得されたコンテンツ144の再生中にクライアント・コンピュータ・システム104によって表示される。したがって、ユーザは、ユーザ束縛パスポート148Aの共用を思いとどまる。というのは、それを行うために、プライベート・ユーザ情報2306も共用する必要が生じるからである。プライベート・ユーザ情報2306には、ユーザの名前2362およびユーザのクレジット・カード情報2364が含まれる。クレジット・カード情報2364には、たとえば、クレジット・カード番号、有効期限、および請求先住所を含めることができる。ユーザの登録中に、クレジット・カード情報2364を検証して、プライベート・ユーザ情報2306が正確であることを保証する。たとえば登録のためにユーザによって入力された盗まれたクレジット・カード番号が含まれるなど、クレジット・カード情報2364が不正確である場合には、そのユーザがプライベート・ユーザ情報2306を共用することを適切に防止されず、したがって、パスポート148Aおよびそれに束縛されたコンテンツを共用することが防止されない。
【0043】
プライベート・ユーザ情報2306は、登録鍵2308を使用して暗号化される。登録鍵2308は、ユーザによって供給されたパスワードを使用して暗号化される。したがって、ユーザのパスワードが、登録鍵2308を解読するのに必要であり、登録鍵2308は、秘密鍵2304およびプライベート・ユーザ情報2306を解読するのに必要である。登録鍵2308は、ユーザのパスワードなしで回復可能なフォーマットで証明書データベース124内に保管され、ユーザが自分のパスワードを忘れた場合に、登録鍵2308を、新しいパスワードについて生成できるようになっている。
【0044】
乱数2310に擬似乱数データが保管される。乱数2310は暗号化されたパスポート情報2204Aの暗号解読を失敗させるために含まれる。認証サーバ126が、パスポート148Aが再発行されるたびに新しい乱数を生成する。パスポート情報2204Aは、広域ネットワーク106(図1)を介して、暗号化されたフォーマットで通信される。したがって、乱数2310に対する変更が、パスポート情報2204Aのいたるところに伝搬し、そうでなければ同一のパスポート情報2204Aのコピーが、暗号化された形で完全に異なって見える。1実施形態では、乱数2310が、たとえば広域ネットワーク106を介して、パスポート情報2204Aを移送する時だけに使用され、パスポート148Aの永続的ディスク・レコードに保管されない。
【0045】
秘密鍵304(図3A)を得るために、セキュリティ・マネージャ206の解読器310が、ユーザ供給パスワードを使用して、登録鍵2308を解読する。ユーザは、コンテンツ・プレイヤ142によってユーザに表示されるプロンプトに応答して、通常のユーザ・インターフェース技法を使用してパスワードを供給する。登録鍵2308を解読した結果が、解読器312によって鍵として使用されて、秘密鍵2304から秘密鍵304が解読される。秘密鍵304は、上で説明した形で使用されて、獲得されたコンテンツを再生のために解読するのに使用することができるマスタ鍵208が得られる。
【0046】
機械束縛パスポート148B(図3B)は、クライアント・コンピュータ・システム104に束縛され、特定のユーザには束縛されない。その結果、パスポート148Bに束縛された獲得されたコンテンツの再生では、プライベート・ユーザ情報2306(図23)などのプライベート・ユーザ情報が表示されない。その代わりに、機械束縛パスポート148Bの秘密鍵2404(図3B)は、パスポート148Bが束縛されるコンピュータ・システムのハードウェア識別子を鍵として使用して暗号化される。この例では、パスポート148Bが、クライアント・コンピュータ・システム104(図1)に束縛され、秘密鍵2404(図3B)が、ハードウェア識別子140を使用して暗号化される。したがって、秘密鍵2404は、鍵としてハードウェア識別子140を使用して解読器308によって解読されて、これによって秘密鍵304がもたらされる。したがって、パスポート148Bは、ハードウェア識別子140が使用可能である時すなわち、パスポート148Bがクライアント・コンピュータ・システム104内で使用される時に限って、有用である。パスポート148Bが、ハードウェア識別子140と同等でないハードウェア識別子を有する別のコンピュータ・システムにコピーされた場合には、秘密鍵304を、秘密鍵2404から導出することができない。したがって、パスポート148Bによって、獲得されたコンテンツ144がクライアント・コンピュータ・システム104に束縛される。
【0047】
コンテンツ・データベース122(図1)のコンテンツが購入される時に、認証サーバ126が、コンテンツが配布されるコンピュータ・システムまたは購入するユーザのいずれかに、購入されたコンテンツを束縛するのを助ける。ユーザに、どのタイプの束縛を好むかに関する選択肢が与えられる。1実施形態では、選択肢が、クライアント・コンピュータ・システムにコンテンツ・プレイヤ142を初めてインストールする時にユーザに提示され、その選択が、記録され、ユーザが能動的に異なる選択を行うまで尊重される。ユーザが、複数のコンピュータ・システム(または、少なくとも、購入を行うのに使用されたものと異なるコンピュータ・システム)でコンテンツにアクセスしたい場合には、ユーザは、パスポート148A(図3A)などのパスポートによって提供されるユーザ束縛を選択する。その代わりに、ユーザが、プライベート・ユーザ情報2306(図23)などのプライベート・ユーザ情報を提供することを好まず、購入が行われた特定のコンピュータ・システムでのみコンテンツにアクセスするつもりである場合には、ユーザは、パスポート148B(図3B)などのパスポートによって提供される機械束縛を選択する。
【0048】
ユーザまたはコンピュータ・システムのいずれかへの束縛のためにコンテンツを準備するために、コンテンツを、マスタ鍵208(図4)などのマスタ鍵を使用して暗号化し、このマスタ鍵を、暗号器406によって暗号化して、媒体鍵302を形成する。媒体鍵302は、暗号化されたコンテンツと共に含まれる。公開鍵304Bを、非対称暗号化と共に使用して、媒体鍵302を形成し、媒体鍵302を、したがって暗号化されたコンテンツ自体を、秘密鍵304を用いてのみ解読できるようにする。
【0049】
コンテンツを特定のコンピュータ・システムに束縛するために、認証サーバ126に、機械束縛パスポート・ジェネレータ404(図4)が含まれる。証明書データベース124(図1)内に、認証サーバ126が、コンテンツ・プレイヤ142などの認証サーバ126に登録されたすべてのコンテンツ・プレイヤの秘密鍵/公開鍵対を保管する。認証サーバ126の動作の理解および認識を容易にするために、証明書データベース124に保管されるデータのタイプおよび構造を、図17に関してより完全に説明する。
【0050】
証明書データベース124に、複数のテーブルすなわち、(i)アカウント・レコード1702のテーブル、(ii)鍵レコード1704のテーブル、および(iii)ヒストリ・レコード1706のテーブルが含まれる。アカウント・レコード1702などのアカウント・レコードには、コンテンツ配布システム100(図1)内の特定のユーザに関するデータが保管される。鍵レコード1704(図17)などの鍵レコードは、上で説明した形の配布されるコンテンツの暗号化に使用される秘密鍵/公開鍵対を表し、これには、有効期限および鍵対を再発行できる回数の限度などの、鍵対の使用パラメータが含まれる。鍵対の再発行は、下で詳細に説明する。ヒストリ・レコード1706などのヒストリ・レコードは、鍵対の再発行または機械束縛からユーザ束縛へのパスポートの変換などのイベントを表す。パスポートおよび/またはコンテンツの詐欺および/または無許可コピーを、時々、ヒストリ・レコードを検査することによって検出することができる。たとえば、紛失した鍵を交換するための、同一ユーザによる多数の異なるクライアント・コンピュータ・システムからの要求は、ユーザが、自分のパスポートの多数のコピーを他人に提供したことを暗示する。
【0051】
アカウント・レコード1702が、図18に詳細に示されており、アカウント・レコード1702には、次のフィールドが含まれる:(i)通し番号フィールド1802、(ii)名前フィールド1804、(iii)電子メール・アドレス・フィールド1806、(iv)国フィールド1808、(v)質問フィールド1810、(vi)回答フィールド1812、(vii)状況フィールド1814、および(viii)タイプ・フィールド1816。通し番号フィールド1802には、認証サーバ126内で処理される通し番号の中で一意の通し番号が保管される。通し番号は、この例示的実施形態では、関係するレコードを関連付けるのに使用される。たとえば、アカウント・レコード1702が、特定のユーザを表し、鍵レコード1704(図19)が、そのユーザの秘密鍵/公開鍵対を表す場合に、通し番号フィールド1802(図18)に保管された通し番号が、通し番号フィールド1902(図19)に保管された通し番号と同等である。さらに、ユーザのアカウントおよび鍵に関係するヒストリ・レコードを、通し番号フィールド2002(図20)に保管された同等の通し番号を有するヒストリ・レコードを突き止めることによって見つけることができる。
【0052】
名前フィールド1804(図18)には、アカウント・レコード1702によって表されるアカウントを所有するユーザの名前を表すデータが保管される。電子メール・アドレス・フィールド1806には、ユーザの電子メール・アドレスを表すデータが保管される。国フィールド1808には、ユーザが居住する国を表すデータが保管される。
【0053】
質問フィールド1810および回答フィールド1812は、たとえばアカウント・レコード1702を修正する要求を受信した時に、ユーザを認証するのに使用される。質問フィールド1810によって、ユーザに尋ねる質問が指定され、回答フィールド1812によって、正しい応答が指定される。たとえば、質問を、ユーザの母親の旧姓に関するものとすることができる。
【0054】
状況フィールド1814は、アカウントの状況を表す。状況フィールド1814に保管される状況値には、「valid(有効)」および「revoked(取り消し)」が含まれる。タイプ・フィールド1816は、アカウントのタイプを表す。タイプ・フィールド1816に保管されるタイプ値には、「machine−bound(機械束縛)」および「user−bound(ユーザ束縛)」が含まれる。
【0055】
鍵レコード1704が、図19に詳細に示されており、鍵レコード1704には、次のフィールドが含まれる:(i)通し番号フィールド1902、(ii)秘密鍵フィールド1904、(iii)公開鍵フィールド1906、(iv)有効性日付フィールド1908、(v)再発行限度フィールド1910、(vi)パスポート鍵限度1912、および(vii)ハードウェア識別子1914。通し番号フィールド1902には、鍵レコードに対応する通し番号が格納される。秘密鍵フィールド1904および公開鍵フィールド1906には、鍵レコード1704によって表される秘密鍵/公開鍵対の秘密鍵および公開鍵が保管される。
【0056】
有効性日付フィールド1908によって、鍵レコード1704から作成された証明書が有効である日付が指定される。鍵レコード1704の有効性終了日付が満了した時に、鍵レコード1704から作成された証明書は、コンテンツ・データベース122からのコンテンツの購入に使用することができなくなる。しかし、鍵レコード1704から作成される証明書は、下で説明する形で、前に獲得したコンテンツを正しく解読し続ける。鍵レコード1704が、期限を延長される時には、有効性日付フィールド1908が、指定された新しい異なる有効性日付に更新され、秘密鍵1904および公開鍵1906は、変更されないままになる。その結果、鍵レコード1704に基づく満了したパスポートを使用して獲得されたコンテンツを、同一のパスポートの期限を延長された版すなわち、期限を延長された版の鍵レコード1704から作成されたパスポートを使用して、解読することができる。というのは、期限を延長されたパスポートに、同一の鍵が含まれるからである。しかし、期限延長が、ユーザがパスワードを変更することを必要とすることができ、その結果、パスポートのうちで、ユーザのパスワードを使用して暗号化されるコンポーネントが、異なって見えることを諒解されたい。
【0057】
再発行限度フィールド1910によって、鍵レコード1704の鍵を、下でより完全に説明する形で再発行できる最大回数が指定される。パスポート鍵限度1912によって、上で説明した形で通し番号フィールド1902によって判定される関連するアカウントの所有者が保持するパスポートによって保持することができる鍵の最大個数が指定される。ハードウェア識別子フィールド1914は、上で説明した形で鍵対が束縛されるハードウェア識別子を表す。たとえば、ハードウェア識別子フィールド1914が、ハードウェア識別子140を表す場合に、秘密鍵フィールド1904で表される秘密鍵を含む機械束縛パスポートが、ハードウェア識別子140を使用して暗号化される。
【0058】
ヒストリ・レコード1706(図17)が、図20に完全に示されており、ヒストリ・レコード1706には、次のフィールドが含まれる:(i)通し番号フィールド2002、(ii)作成フィールド2004、および(iii)アクティビティ・フィールド2006。通し番号フィールド2002には、通し番号フィールド1802(図18)および1902(図19)に関して上で説明したものに類似する通し番号が格納される。作成フィールド2004(図20)によって、ヒストリ・レコード1706が作成された時が指定される。アクティビティ・フィールド2006によって、ヒストリ・レコード1706(図17)のテーブルに記録される通し番号フィールド2002の通し番号に関連するアクティビティのタイプが指定される。アクティビティ・フィールド2006によって表されるタイプには、たとえば、鍵の再発行、鍵の期限延長、およびユーザ束縛パスポートへの鍵の追加が含まれる。
【0059】
認証サーバ126は、図21に示されているように、アカウント・レコード1702および鍵レコード1704の諸フィールドからディジタル証明書、たとえばITU−T X.509証明書を作成することができる。具体的に言うと、証明書2100には、鍵レコード1704(図19)からの公開鍵1906および有効性日付1908と、名前1804(図21)と、アカウント・レコード1702(図18)からの電子メール・アドレス1806および国1808が含まれる。さらに、証明書2100には、この例示的実施形態ではITU−T X.509仕様に適合する証明書通し番号2102が含まれる。証明書通し番号2102が、通し番号1802(図18)、1902(図19)、および2002(図20)に関係せず、独立であることに留意されたい。証明書2100には、この例示的実施形態でITU−T X.509仕様に適合する、認証サーバ126の秘密鍵から認証サーバ126によって作成されたディジタル署名2104も含まれる。
【0060】
証明書データベース124は、機械束縛またはユーザ束縛のいずれかの、獲得されたコンテンツの認証のための包括的で柔軟な基礎を提供する。
【0061】
機械束縛パスポート・ジェネレータ404(図4)に戻って、マスタ鍵208は、秘密鍵304を使用しなければ、媒体鍵302から解読することができない。したがって、媒体鍵302およびそれに関連するコンテンツをクライアント・コンピュータ・システム104(図1)に束縛するために、秘密鍵304を、暗号器408内で暗号化して、鍵としてハードウェア識別子140を使用する秘密鍵2404を形成する。したがって、ハードウェア識別子140は、秘密鍵304を解読し復元するのに必要であり、秘密鍵304は、マスタ鍵208を解読し復元するのに必要であり、マスタ鍵208は、それを用いて暗号化された獲得されたコンテンツを解読するのに必要である。ハードウェア識別子140は、鍵レコード1704のハードウェア識別子フィールド1914で表され、鍵レコード1704には、秘密鍵フィールド1904に秘密鍵304、公開鍵フィールド1906に公開鍵304Bが含まれる。
【0062】
秘密鍵2404は、パスポート・パッカー410によってパスポート情報2204Aに含められ、パスポート・パッカー410は、認証サーバ126の秘密鍵を使用してパスポート情報2204Bに署名して、署名2208を形成する。さらに、パスポート・パッカー410は、パスポート情報2204Bおよび署名2208を、下でより完全に説明する形で保護されたチャネルを介してコンテンツ・プレイヤ142に送信する。したがって、機械束縛パスポート・ジェネレータ404は、マスタ鍵208を用いて暗号化されたコンテンツをハードウェア識別子140に束縛する。
【0063】
認証サーバ126には、パスポート148A(図3A)などのユーザ束縛パスポートを作成するフル・パスポート・ジェネレータ504(図5)も含まれる。暗号器406が、上で説明した形で、公開鍵304Bを使用してマスタ鍵208を暗号化して、媒体鍵302を形成する。
【0064】
フル・パスポート・ジェネレータ504(図5)には、暗号器508が含まれ、暗号器508は、平文登録鍵520を使用して、相応鍵すなわち秘密鍵304を暗号化して、秘密鍵2304を形成する。したがって、秘密鍵2304は、隠され、パスポート情報2204Aに含める準備ができる。平文登録鍵520は、ユーザ供給パスワードを鍵として使用して暗号器506によって暗号化されて、登録鍵2308が形成される。結果のフル・パスポートを他のユーザに配布するのを思いとどまらせるために、パスポート・パッカー510が、プライベート・ユーザ情報2306と共に秘密鍵2304および登録鍵2308をパッケージ化して、パスポート情報2204Aを形成する。さらに、パスポート・パッカー510は、パスポート情報2204Aに関する不正変更を検出し、防止するために、署名2208を形成する。1実施形態では、プライベート・ユーザ情報2306を、ユーザ供給パスワードを使用して暗号化して、獲得されたコンテンツが再生されていない時にユーザのプライベート情報を保護する。パスポート情報2204Aを使用してマスタ鍵208を用いて暗号化された獲得されたコンテンツを成功裡に解読するために、署名2208の認証性が検証され、秘密鍵2304および登録鍵2308が、パスポート情報2204Aから構文解析される。その後、登録鍵2308が、ユーザによって供給された鍵を使用して解読され、解読の後に、秘密鍵2304から秘密鍵304を解読するのに使用される。その後、秘密鍵304が、獲得されたコンテンツから構文解析される媒体鍵302からマスタ鍵208を解読するのに使用される。パスポート・パッカー510は、下でより完全に説明する形で、保護されたチャネルを介してパスポート情報2204Aおよび署名2208をコンテンツ・プレイヤ142に送信する。
【0065】
ある点で、クライアント・コンピュータ104を使用することのみによって獲得したデータを再生することを前に選んだユーザすなわち、前に機械束縛を選んだユーザが、機械束縛からユーザ束縛にアップグレードし、そのユーザが、獲得したコンテンツを異なるコンピュータ・システムを使用して再生できるようにすることを選ぶ場合がある。たとえば、ユーザが、自分の前のコンピュータ・システムを新しいものに交換した場合、または追加のコンピュータ・システムを購入した場合がある。パスポート148Bなどの機械束縛パスポートのパスポート148Bなどのユーザ束縛パスポートへの認証サーバ126による変換は、パスポート・コンバータ602(図6A)によって実行される。
【0066】
パスポートを変換するために、パスポート・コンバータ602は、ハードウェア識別子140、プライベート・ユーザ情報2306、およびユーザ供給パスワードを受け取る。これらの要素は、保護された接続を介してクライアント・コンピュータ・システム104から受け取られる。プライベート・ユーザ情報2306およびユーザ供給パスワードは、変換の時にクライアント・コンピュータ・システム104のユーザによって入力される。というのは、そのような情報が、ユーザ束縛パスポートに必要であるが、機械束縛パスポートには必要ないからである。機械束縛からの変換の重要な考慮事項が、獲得されたコンテンツに対する修正が一切不要であることである。本質的に、獲得されたコンテンツを解読するのに必要な、核の秘密鍵、たとえば秘密鍵304は、変換されたパスポート内で保存され、媒体鍵302を未変更のままにすることができる。
【0067】
図6Aのパスポート・コンバータ602は、処理の大部分が認証サーバ126によって実行される、多少単純化された実施形態である。パスポート・コンバータ602の要素の一部がコンテンツ・プレイヤ142の一部である代替実施形態を、図6Bに関して下で説明する。
【0068】
パスポート・コンバータ602には、アップグレードされるパスポートの署名2208を検証し、パスポート情報2204Bから秘密鍵2404を構文解析するパスポート・パーサ604が含まれる。さらに、パスポート・コンバータ602には、ハードウェア識別子140を鍵として使用して秘密鍵2404を解読して、秘密鍵304を再導出する解読器606が含まれる。代替案では、認証サーバ126が、ハードウェア識別子140を使用して、証明書データベース124からのハードウェア識別子フィールド1914に従って鍵304および304Bに対応する鍵レコード1704(図19)を取り出す。どちらの場合でも、秘密鍵304(図6A)は、ハードウェア識別子140を使用してクライアント・コンピュータ・システム104に前に束縛された獲得されたコンテンツを再生するのに必要である。
【0069】
パスポート・コンバータ602には、上で図5に関して説明した形で秘密鍵2304および登録鍵2308を形成する暗号器506および508が含まれる。プライベート・ユーザ情報2306も、鍵としてユーザ供給パスワードを使用して暗号化される。パスポート・コンバータ602には、秘密鍵2304、登録鍵2308、およびプライベート・ユーザ情報2306をパッケージ化してパスポート情報2204Aを形成するパスポート・パッカー510が含まれる。パスポート・パッカー510は、署名2208を形成して、パスポート情報2204Aに関する不正変更を検出し、防止する。上で図3Bに関して説明したように、パスポート148Aなどのユーザ束縛パスポートは、ユーザ供給パスワードを要求することとプライベート・ユーザ情報2306(図23)の表示とを介して、獲得されたコンテンツを特定のユーザに束縛する。パスポート148Aおよびそれからアクセス可能なすべてのコンテンツが、ハードウェア識別子140に束縛されず、再生のために他のコンピュータ・システムに移動することができる。
【0070】
論理流れ図650(図6B)に、代替実施形態による、機械束縛パスポート148Bのユーザ束縛パスポート148Aへの変換を示す。ステップ652で、コンテンツ・プレイヤ142が、パスポート148Bの公開鍵、たとえば証明書2302の公開鍵を使用して、ハードウェア識別子140を暗号化する。ステップ654で、コンテンツ・プレイヤ142が、パスポート148Bの証明書および暗号化されたハードウェア識別子を、パスポート148Bのユーザ束縛パスポートへのアップグレードの要求の一部として認証サーバ126に送信する。
【0071】
ステップ656で、認証サーバ126が、証明書と暗号化されたハードウェア識別子をコンテンツ・プレイヤ142から受信する。ステップ658で、認証サーバ126が、証明書の署名を検証する。認証サーバ126は、受信した証明書に対応する証明書レコード、たとえば証明書レコード2100(図21)を、ステップ660(図6B)で証明書データベース124から取り出す。ステップ662で、認証サーバ126が、関連するアカウント・レコード、たとえばアカウント・レコード1702と、鍵レコード、たとえば鍵レコード1704を得る。
【0072】
ステップ664で、認証サーバ126が、取り出された鍵レコードの秘密鍵、たとえば鍵レコード1704の秘密鍵1904を使用して、受信した暗号化されたハードウェア識別子を解読する。ステップ666で、認証サーバ126が、解読されたハードウェア識別子を、取り出された鍵レコードのハードウェア識別子、たとえば鍵レコード1704のハードウェア識別子1914と比較する。ハードウェア識別子が一致しない場合には、パスポート148Bの変換が失敗する。そうでない場合には、変換が継続される。
【0073】
ステップ668で、認証サーバ126が、平文の秘密鍵および登録鍵と空白のユーザ情報を有するフル・パスポート・レコードを作成し、送信する。平文は、本明細書では、暗号での一般的な使用法で、暗号化されていないが、必ずしも人間に理解できるテキストではないことを意味する。暗号化アルゴリズムを使用して鍵を形成することができるが、鍵が、たとえば他のデータの暗号化/解読に鍵を使用する前に解読を必要としない場合には、平文とみなされることに留意されたい。フル・パスポート・レコードが、保護されたチャネルを介してコンテンツ・プレイヤ142に送信される。
【0074】
ステップ670で、コンテンツ・プレイヤ142が、認証サーバ126からフル・パスポート・レコードを受信する。コンテンツ・プレイヤ142は、ステップ672で、従来のユーザ・インターフェース技法によってユーザからユーザ供給パスワードおよびプライベート・ユーザ情報を受け取る。
【0075】
ステップ674で、コンテンツ・プレイヤ142が、暗号器506および508(図6A)およびパスポート・パッカー510に関して上で説明した形で、ユーザ供給パスワードを使用してプライベート・ユーザ情報、秘密鍵、および登録鍵を暗号化する。
【0076】
データの購入および再生のための変換可能パスポートの使用
論理流れ図700(図7)に、購入するユーザによるデータの購入中のコンテンツ・プレイヤ142(図1)による認証を示す。テスト・ステップ702(図7)で、コンテンツ・プレイヤ142(図1)が、フルのユーザ束縛パスポートが存在するかどうかを判定する。1実施形態では、コンテンツ・プレイヤ142に、コンテンツ・プレイヤ142を介して再生できるデータに関連する1つまたは複数のパスポートのレジストリが含まれる。フル・パスポートが存在する場合に、処理はステップ704(図7)に移り、購入するユーザが、従来のユーザ・インターフェース技法を使用してパスワードを入力する。テスト・ステップ706(図7)で、コンテンツ・プレイヤ142が、入力されたパスワードが、時々本明細書で選択されたフル・パスポートと称する、テスト・ステップ702で存在すると判定されたフル・パスポートに対応するかどうかを判定する。コンテンツ・プレイヤ142は、選択されたフル・パスポートの秘密鍵2304(図23)の解読を試みることによって、そのような判定を行う。この例示的実施形態では、秘密鍵2304が、RSA Security社の既知のPKCS #5パスワード暗号化アルゴリズムを使用して暗号化され、そのアルゴリズムを使用することによって、秘密鍵2304の解読に使用されたパスワードが正しいパスワードであるかどうかを示す信号がもたらされる。パスワードが、選択されたフル・パスポートに対応しない場合には、処理は、ステップ704に戻され、ユーザが、別のパスワードを入力する。パスワードが選択されたフル・パスポートに対応する場合には、処理がステップ708に移され、コンテンツの購入の処理が継続される。
【0077】
購入には、購入される特定のコンテンツの選択と、支払認可が含まれる。購入のためにユーザによって選択された特定のコンテンツを、本明細書では、時々、選択されたコンテンツと称する。コンテンツ・プレイヤ142が、選択されたコンテンツが束縛されるパスポートとして選択されたフル・パスポートを指定する、そのパスポートの内部の証明書を提供し、認証サーバ126が、上で図5に関して説明した形で、選択された証明書にコンテンツを束縛する。具体的に言うと、選択されたコンテンツのマスタ鍵が、鍵としてプレイヤの公開鍵304Bを使用して暗号器406によって暗号化されて、媒体鍵302が形成される。フル・パスポート・ジェネレータ504は使用されない。というのは、選択されたフル・パスポートが、既にコンテンツ・プレイヤ142内に存在するからである。公開鍵304Bを使用してマスタ鍵208を暗号化することによって、秘密鍵304を含むパスポートにコンテンツが束縛される。選択されたコンテンツに含まれる証明書通し番号、たとえば証明書通し番号2102によって、選択されたコンテンツがどのパスポートに束縛されるかが識別される。
【0078】
テスト・ステップ702(図7)に戻って、フル・パスポートがコンテンツ・プレイヤ142内に存在しない場合には、処理はテスト・ステップ710に移る。テスト・ステップ710で、コンテンツ・プレイヤ142が、機械束縛パスポートが存在するかどうかを判定する。機械束縛パスポートが存在しない場合には、処理はステップ718に移るが、このステップは下で説明する。逆に、機械束縛パスポートが存在する場合には、処理はステップ712に移る。
【0079】
ステップ712で、コンテンツ・プレイヤ142が、ハードウェア識別子140を取り出す。ステップ714で、コンテンツ・プレイヤ142は、ハードウェア識別子140が、コンテンツ・プレイヤ142によって突き止められた機械束縛パスポートに対応するハードウェア識別子であるかどうかを判定する。1実施形態では、そのような判定が、解読に使用された鍵が正しい鍵であるかどうかを示す、RSA PCKS #5アルゴリズムなどの解読アルゴリズムを使用して、ハードウェア識別子140を使用して秘密鍵2404の解読を試みることによって行われる。そうでない場合には、処理はステップ716に移り、エラー・メッセージをユーザに提示する。エラー・メッセージによって、突き止められた機械束縛パスポートが、クライアント・コンピュータ・システム104に属さないことが示される。コンテンツ・プレイヤ142は、さまざまな形でそのようなエラーに応答することができる。たとえば、コンテンツ・プレイヤ142は、誤りのある機械束縛パスポートを削除し、論理流れ図700による処理を再開するようにユーザに指示することができる(処理は、論理流れ図700による後続の反復処理で下のステップ718以下参照に達する)。コンテンツ・プレイヤ142は、そのようなエラーを認証サーバ126に報告し、機械束縛パスポートの無許可配布を追跡できるようにすることもできる。
【0080】
しかし、ハードウェア識別子140が正しい識別子である場合には、処理はテスト・ステップ714からステップ708に移り、購入されるコンテンツが機械束縛パスポートに束縛されることを除いて、上で説明した形で購入処理が継続される。選択されたコンテンツを要求する際に、コンテンツ・プレイヤ142は、その証明書を認証サーバ126に送信する。認証サーバ126は、証明書の公開鍵を使用してマスタ鍵208を暗号化し、これによって、選択されたコンテンツをコンテンツ・プレイヤ142に束縛する。コンテンツ・プレイヤ142によって検出された機械束縛パスポートに、すでに、ハードウェア識別子140を使用して暗号化されたコンテンツ・プレイヤ142の秘密鍵が含まれる。
【0081】
テスト・ステップ710(図7)に戻って、コンテンツ・プレイヤ142が機械束縛パスポートを見つけない場合には、コンテンツ・プレイヤ142は、パスポートを全く有しておらず、処理はステップ718に移る。ステップ718では、コンテンツ・プレイヤ142が、認証サーバ126に新しい機械束縛パスポートを要求する。ステップ718は、下で論理流れ図718(図8)に関してより完全に説明する。ステップ718の後に、コンテンツ・プレイヤ142は、認証サーバ126から受信した機械束縛パスポート・レコードから新しい機械束縛パスポートを構成する。ステップ720の後に、コンテンツの購入が、ステップ708で、上で説明した形で継続される。
【0082】
論理流れ図718(図8)に、機械束縛パスポートの要求を詳細に示す。ステップ802で、コンテンツ・プレイヤ142が、認証サーバ126との保護された接続を確立する。そのような保護された接続は、下で詳細に説明する。ステップ804で、コンテンツ・プレイヤ142が、新しい機械束縛パスポートの情報テンプレートを要求する。そのような要求に応答して、認証サーバ126が、新しい機械束縛パスポートの情報テンプレートを送信する。情報テンプレートとは、ユーザ供給データ・フィールドとそのためのプロンプトを指定するデータの集合である。1実施形態では、情報テンプレートが、ユーザから収集されるデータのXML記述である。情報テンプレートが、コンテンツ・プレイヤ142によって受信された場合には、処理はテスト・ステップ806を介してステップ808に移り、コンテンツ・プレイヤ142が、受信した情報テンプレートで指定された情報を収集する。そのような情報は、従来のユーザ・インターフェース技法を使用してユーザが入力することができる。処理はステップ810に移る。情報テンプレートが受信されない場合には、処理は、テスト・ステップ806を介して、ステップ808をスキップしてステップ810に移る。
【0083】
ステップ810では、コンテンツ・プレイヤ142が、新しい機械束縛パスポートの要求として、認証サーバ126にハードウェア識別子140およびユーザ供給情報を送信する。ステップ810の後に、論理流れ図718に従う処理が完了し、したがって、ステップ718(図7)が完了する。
【0084】
論理流れ図900(図9)に、コンテンツ・プレイヤ142によってステップ810(図8)で行われる新しい機械束縛パスポートの要求に応答する、認証サーバ126(図1)による処理を示す。ステップ902(図9)で、認証サーバ126が、ハードウェア識別子およびユーザ供給情報を受信する。テスト・ステップ904で、認証サーバ126が、受信したハードウェア識別子に対応する鍵レコードが証明書データベース124内に存在するかどうかを判定する。認証サーバ126は、ハードウェア識別子フィールド1914内の同等のハードウェア識別子を表す鍵レコード、たとえば鍵レコード1704(図19)を検索することによって、そのような判定を行う。そのような鍵レコードが見つからない場合には、処理はステップ906(図9)に移る。逆に、そのような鍵レコードが見つかる場合には、処理はステップ912に移るが、これは下で説明する。
【0085】
ステップ906で、認証サーバ126は、新しい秘密鍵/公開鍵対、たとえば鍵レコード1704(図19)の鍵対を作成し、新しい鍵対に基づいて新しい証明書、たとえば証明書2100(図21)を作成する。ステップ908(図9)で、認証サーバ126は、新しい証明書と受信したハードウェア識別子、たとえばハードウェア識別子140を、証明書データベース124内で関連付ける。そのような関連付けは、鍵レコード1704のハードウェア識別子フィールド1914(図19)にハードウェア識別子140を保管することによって達成される。ステップ910(図9)で、認証サーバ126が、機械束縛パスポート・レコードをコンテンツ・プレイヤ142に返す。機械束縛パスポート・レコードは、コンテンツ・プレイヤ142が、上で説明したパスポート148Bなどの機械束縛パスポートをそれから構成することができるデータの集合である。そのような機械束縛パスポート・レコードには、たとえば、パスポート情報2204B(図24)と、署名アルゴリズム2206および署名2208が含まれる。ステップ910(図9)の後に、論理流れ図900による処理が完了する。
【0086】
テスト・ステップ904に戻って、ハードウェア識別子140(図1)に関連する鍵対が、証明書データベース124内に既に存在する場合には、処理は、テスト・ステップ912(図9)に移り、ポリシ判断を実施する。ポリシによって、既存の機械束縛パスポートに関連する鍵の再発行を許可するかどうかが決定される。ユーザが、たとえば故意でない削除を介してまたはハードウェア障害に起因するデータ消失を介して、機械束縛パスポートを紛失する可能性がある。さらに、機械束縛パスポート鍵の再発行が許可される場合に、そのような再発行が許可される回数を制限することができる。たとえば、そのような制限が、再発行限度フィールド1910(図19)で指定される。1実施形態では、0の限度が、機械束縛鍵を再発行できないことを示す。この実施形態では、機械束縛鍵を1回だけ再発行できることを示すために、再発行限度フィールド1910に、1の値を有するデータが保管される。ポリシによって、たとえば鍵が再発行されないので、または証明書データベース124からこの機械束縛パスポートに関して最大の許容される再発行回数を実行済みであることが示されるので、これらの鍵を再発行してはならないと決定される場合に、処理はステップ914(図9)に移る。ステップ914では、機械束縛パスポート・レコードではなく、エラーを返す。逆に、再発行がポリシによって許可される場合には、処理はステップ916に移る。再発行が全般的に許可され、証明書データベース124から再発行の最大の許容される回数未満が実行されたことが示される場合に、ポリシによってそのような再発行を許可することができる。1実施形態では、認証サーバ126が、再発行を表す証明書データベース124内のヒストリ・レコード1706などのヒストリ・レコードを検索し、数えることによって、鍵レコード1704(図17)の鍵が再発行された回数を判定する。通し番号2002(図20)が通し番号1902(図19)に対応し、アクティビティ・フィールド2006が再発行イベントを指定する場合に、ヒストリ・レコード1706が、鍵レコード1704の鍵の再発行を表す。
【0087】
ステップ916で、認証サーバ126が、受信したハードウェア識別子に関連する秘密鍵/公開鍵対、たとえばハードウェア識別子140に関連する鍵レコード1704の鍵対を、証明書データベース124から取り出し、上で説明した形で執行を猶予された対から機械束縛パスポート・レコードを形成する。ステップ918で、認証サーバ126が、受信したハードウェア識別子に関連する鍵の追加発行を反映するように証明書データベース124を更新する。この例示的実施形態では、認証サーバ126は、鍵レコードの通し番号1902(図19)に対応する通し番号2002(図20)および再発行イベントを表すアクティビティ・フィールド2006を有する新しいヒストリ・レコード、たとえばヒストリ・レコード1706を作成することによって、そのような再発行を記録する。処理は、ステップ918からステップ910に移り、パスポート・レコードが、上で説明した形で返される。ステップ910の後に、論理流れ図900による処理が完了する。
【0088】
論理流れ図1000(図10)に、獲得されたコンテンツのアクセス中のパスポートの処理を示す。図10から16に関して、獲得されたコンテンツ144の特定のコンテンツが、再生のためにユーザによって選択されており、そのコンテンツを、時々、選択された獲得されたコンテンツと称する。テスト・ステップ1002(図10)で、コンテンツ・プレイヤ142が、フル・パスポートが存在するかどうかを判定する。そうでない場合には、処理はテスト・ステップ1008に移るが、これは下でより完全に説明する。逆に、フル・パスポートが存在する場合には、処理がステップ1004に移り、コンテンツ・プレイヤ142が、上でステップ704(図7)および706に関して説明した形でユーザ供給パスワードを検査することを介して、ユーザを認証する。ユーザが認証された後に、コンテンツ・プレイヤ142は、ステップ1006(図10)で、テスト・ステップ1002で突き止めたフルのユーザ束縛パスポートを使用して、選択されたコンテンツの再生を試みる。
【0089】
テスト・ステップ1008で、コンテンツ・プレイヤ142は、機械束縛パスポートが存在するかどうかを判定する。そうでない場合には、パスポートが存在せず、処理はダイアログ・ステップ1016に移る。その一方で、機械束縛パスポートが存在する場合には、処理はステップ1010に移り、コンテンツ・プレイヤ142は、ステップ712(図7)および714に関して上で説明した形で、ハードウェア識別子140が機械束縛パスポートに対応することを検証する。ステップ1010で検証エラーが発生する場合すなわち、ハードウェア識別子140が機械束縛パスポートに対応しない場合には、処理は、下で説明するダイアログ・ステップ1016に移る。逆に、検証に成功する場合には、処理はステップ1006に移る。
【0090】
ステップ1006では、コンテンツ・プレイヤ142が、選択されたコンテンツの再生を試みる。テスト・ステップ1012で、コンテンツ・プレイヤ142は、試みられた再生が成功であったすなわち、パスポート鍵によって選択されたコンテンツが成功裡にデコードされたかどうかを判定する。そのような判定は、上でステップ706(図7)および714に関して説明した形で行われる。
【0091】
選択されたパスポート鍵によって、選択されたコンテンツが成功裡に解読された場合には、処理は、ステップ1014に移り、コンテンツ・プレイヤ142が、選択されたコンテンツの再生を継続する。ステップ1014では、ユーザおよび/またはクライアント・コンピュータ・システム104が、選択されたコンテンツにアクセスする資格を有するものとして認証されている。
【0092】
その一方で、選択されたパスポート鍵によって、選択されたコンテンツを成功裡に解読できない場合には、処理はダイアログ・ステップ1016に移る。したがって、処理がダイアログ・ステップ1016に移るのは、コンテンツ・プレイヤ142によってパスポートが検出されない場合(テスト・ステップ1008を介する)、ハードウェア識別子140がコンテンツ・プレイヤ142によって突き止められた機械束縛パスポートに対応しない場合(ステップ1010から)、または選択されたパスポート鍵によって選択されたコンテンツを成功裡に解読できない場合(テスト・ステップ1012を介する)である。ダイアログ・ステップ1016では、コンテンツ・プレイヤ142が、ユーザが選択されたコンテンツを再生することを許可されないことをユーザに報告し、ユーザがそれを許可されるようになりたいかどうかを尋ねる。
【0093】
ユーザが否定的に応答する場合には、処理はステップ1020に移り、コンテンツ・プレイヤ142が、エラーを返し、処理を打ち切る。逆に、ユーザが肯定的に応答する場合には、処理がステップ1018に移り、選択されたコンテンツについて新しいパスポートが作成され、ステップ1014に継続して、コンテンツ・プレイヤ142が、選択されたコンテンツの再生を継続する。
【0094】
ステップ1018を、論理流れ図1018(図11)として詳細に示す。ステップ1102で、コンテンツ・プレイヤ142が、選択されたコンテンツからコンテンツ証明書を取り出す。コンテンツ証明書は、選択されたコンテンツに含まれ、そのコンテンツを当初に獲得したものを識別する、たとえばITU−T X.509ディジタル証明書などのディジタル証明書である。証明書2100(図21)が、そのような証明書の例示的な例であり、上でより完全に説明される。この例示的実施形態では、コンテンツ・プレイヤ142が、証明書通し番号、たとえば証明書通し番号2102を取り出し、これによって、認証サーバ126(図1)が、証明書データベース124内で証明書2100を突き止めることができる。テスト・ステップ1104(図11)で、コンテンツ・プレイヤ142が、ユーザがフル・パスポートを有するかどうかを判定する。コンテンツ・プレイヤ142は、ステップ1002(図10)で判定されるフル・パスポートの存在に基づいて、またはステップ1004での存在するフル・パスポートを認証することのユーザによる失敗に基づいて、そのような判定を行うことができる。さらに、ユーザに、名前および電子メール・アドレスを請求することができ、それに対するユーザの応答を使用して、同等の名前フィールド1804および電子メール・アドレス・フィールド1806を有するアカウント・レコード1702(図18)などのアカウント・レコードを検索することができる。ユーザが、フル・パスポートを有する場合に、処理は、ステップ1106(図11)に移り、コンテンツ・プレイヤ142が、プライベート・ユーザ情報2306(図23)を含むユーザのフル・パスポート情報を使用して、選択された獲得されたコンテンツのパスポートを要求する。ユーザが、フル・パスポートを有しない場合には、処理は、ステップ1114(図11)に移り、コンテンツ・プレイヤ142が、ハードウェア識別子140を使用して、選択されたコンテンツのパスポートを要求する。この実施形態では、ユーザに、名前、電子メール・アドレス、居住する国などの個人情報を提供する機会が与えられ、その情報に、ステップ1114で新しいパスポートを要求する際にハードウェア識別子140を付随させることができる。
【0095】
ステップ1106および1114の要求に応答する認証サーバ126による処理は、下で、それぞれ図13および図12に関して説明する。ステップ1106(図11)の要求に応答して、認証サーバ126が、フル・パスポート・レコードまたはエラー・メッセージを送信することができる。ステップ1114の要求に応答して、認証サーバ126が、機械束縛パスポートまたはエラー・メッセージを送信することができる。
【0096】
テスト・ステップ1108で、コンテンツ・プレイヤ142が、認証サーバ126によってフル・パスポート・レコードが返されたかどうかを判定する。そうでない場合には、エラーが返され、論理流れ図1018および1000による処理が打ち切られる。逆に、フル・パスポート・レコードが返された場合には、処理はステップ1110に移る。
【0097】
ステップ1110では、コンテンツ・プレイヤ142が、上でフル・パスポート・ジェネレータ504(図5)に関して説明した形で、ユーザ供給パスワードを用いてフル・パスポート・レコードのフル・パスポート情報を保護する。
【0098】
処理は、ステップ1110(図11)からステップ1112に移り、コンテンツ・プレイヤ142が、認証サーバ126から受信したフル・パスポート情報からフル・パスポート148A(図3A)を作成する。
【0099】
処理は、ステップ1114からテスト・ステップ1116に移る。テスト・ステップ1116では、コンテンツ・プレイヤ142が、ステップ1114またはステップ1106の要求に応答する認証サーバ126から受信したデータが、機械束縛パスポート・レコードを表すかどうかを判定する。そうである場合には、コンテンツ・プレイヤ142は、機械束縛パスポート・レコードを使用してパスポート148B(図3B)などの機械束縛パスポートを作成し、論理流れ図1018による処理、したがってステップ1018(図10)の処理が、完了する。
【0100】
逆に、認証サーバ126によって返されたデータが、機械束縛パスポート・レコードを表さない場合には、処理はテスト・ステップ1120に移る。テスト・ステップ1120では、コンテンツ・プレイヤ142が、認証サーバ126による応答から、ユーザが選択された獲得されたコンテンツへのアクセスを正しく認可されるためにフル・パスポートを必要とすることが示されるかどうかを判定する。そうでない場合には、ユーザは、獲得したコンテンツへのアクセスが認可されることができず、コンテンツ・プレイヤ142は、エラーが発生したことを書き留め、そのエラーをユーザに報告し、論理流れ図1018による処理、したがってステップ1018(図10)の処理を打ち切る。その一方で、認証サーバ126からの応答によって、ユーザがフル・パスポートを必要とすることが示される場合には、処理はステップ1122に移る。
【0101】
ステップ1122では、コンテンツ・プレイヤ142が、新しいパスポートの要求を認証サーバ126に送信する。この要求には、ハードウェア識別子140を指定するデータと、選択された獲得されたコンテンツから取り出された証明書が含まれる。獲得されたコンテンツの証明書によって、選択された獲得されたコンテンツが、証明書データベース124(図1)内で識別される。認証サーバ126は、下で論理流れ図1400(図14)に関して説明する形でそのような要求に応答し、フル・パスポート・レコードまたはエラー・メッセージのいずれかをコンテンツ・プレイヤ142に送信する。
【0102】
テスト・ステップ1124で、コンテンツ・プレイヤ142は、認証サーバ126がフル・パスポート・レコードとエラーのどちらを返したかを判定する。エラーが返された場合には、ユーザは、獲得したコンテンツへのアクセスを認証されることができず、コンテンツ・プレイヤ142は、エラーが発生したことを書き留め、そのエラーをユーザに報告し、論理流れ図1018による処理、したがってステップ1018(図10)の処理を打ち切る。その一方で、認証サーバ126からの応答がフル・パスポート・レコードである場合には、処理はステップ1126(図11)に移り、コンテンツ・プレイヤ142が、パスワードを入力するようにユーザに促す。
【0103】
処理は、ステップ1126からステップ1112に移り、コンテンツ・プレイヤ142が、認証サーバ126から受信したフル・パスポート情報からフル・パスポート148A(図3A)を作成する。ステップ1112(図11)の後に、ステップ1110を介した場合でもステップ1126を介した場合でも、論理流れ図1018による処理、したがってステップ1018(図10)の処理が、完了する。
【0104】
上で説明したように、認証サーバ126は、論理流れ図1200(図12)として示された形で、ハードウェア識別子を含むパスポートの要求に応答する。具体的に言うと、論理流れ図1200は、ユーザがフル・パスポートを有しなかった場合にステップ1114(図11)でコンテンツ・プレイヤ142によって行われる要求に対する認証サーバ126の応答を表す。したがって、認証サーバ126は、選択されたコンテンツが既に束縛されていなければならない同一の機械束縛パスポートの再発行を要求される。ステップ1202(図12)で、認証サーバ126が、選択されたコンテンツの証明書を証明書データベース124から取り出す。たとえば、コンテンツ・プレイヤ142が、選択されたコンテンツの証明書として、証明書通し番号2102(図21)を供給する場合に、認証サーバ126は、証明書データベース124(図17)から証明書2100を取り出す。
【0105】
テスト・ステップ1204(図12)で、認証サーバ126が、獲得されたコンテンツが機械束縛パスポートに束縛されているかどうかを判定する。認証サーバ126は、証明書に対応するアカウント・レコード、たとえばアカウント・レコード1702(図18)を取り出すことによって、そのような判定を行う。認証サーバ126は、名前1804、電子メール・アドレス1806、および国1808の対応するデータ値を有するアカウント・レコードを検索することによって、または証明書通し番号2102(図21)などの証明書通し番号を通し番号1802(図18)などの通し番号と相関させるレコードのテーブルを維持することによって、そのようなアカウント・レコードを突き止めることができる。取り出されたアカウント・レコードのタイプ・フィールド1816を検査し、そこに保管されたデータを、機械束縛タイプを表すデータと比較することによって。タイプ・フィールド1816のデータがそれを示す場合に、選択されたコンテンツが、機械束縛パスポートに束縛されている。そうでない場合には、選択されたコンテンツが、フル・パスポートに束縛されている。
【0106】
選択されたコンテンツが、機械束縛パスポートに束縛されていない場合には、認証サーバ126は、選択されたコンテンツにアクセスするのにフル・パスポートが必要であることを示すエラー・メッセージを返し、論理流れ図1200による処理を打ち切る。フル・パスポートが必要になるのは、選択されたコンテンツが、既にフルのユーザ束縛パスポートに束縛されているからである。コンテンツを新しい機械束縛パスポートにも束縛できるようにすることによって、当初の購入するユーザによって使用されるもの以外の多数のコンピュータ・システムでコンテンツを再生できるようになり、セキュリティが危険にさらされるはずである。
【0107】
逆に、選択された獲得されたコンテンツが、機械束縛パスポートに束縛されている場合には、処理がステップ1206に移り、認証サーバ126が、コンテンツ・プレイヤ142からの要求で受信したハードウェア識別子に関連するコンピュータ・システムを表す鍵レコードを取り出す。具体的に言うと、認証サーバ126は、そのハードウェア識別子レコード1914がコンテンツ・プレイヤ142から受信したハードウェア識別子を表す鍵レコード、たとえば鍵レコード1704(図19)を取り出す。
【0108】
そのような鍵レコードが見つからない場合には、処理は、テスト・ステップ1208(図12)を介して終端ステップ1210に移る。終端ステップ1210では、認証サーバ126が、選択されたコンテンツにアクセスするためにユーザがフル・パスポートを必要とすることを示すエラー・メッセージを返す。ユーザがフル・パスポートを必要とするのは、コンテンツ・プレイヤ142から受信したハードウェア識別子が、テスト・ステップ1208で、認証サーバ126が知らないコンピュータ・システムを表すと判定されるからである。
【0109】
認証サーバ126が、鍵レコードを見つけたが、その鍵レコードが、テスト・ステップ1204で取り出された鍵レコードと同一でない場合には、処理はテスト・ステップ1208およびテスト・ステップ1212を介して終端ステップ1210に進む。ユーザがフル・パスポートを必要とするのは、機械束縛パスポートの要求が、獲得されたコンテンツが当初に束縛されたコンピュータ・システム以外のコンピュータ・システムから来たように見えるからである。
【0110】
鍵レコードが、テスト・ステップ1208の判定で見つかり、テスト・ステップ1212の判定で、選択された獲得されたコンテンツに関連する鍵レコードと同一である場合には、処理がテスト・ステップ1214に移り、認証サーバ126が、ポリシ判断を実施する。具体的に言うと、認証サーバ126は、機械束縛鍵を再発行できるかどうかを判定する。この例示的実施形態では、認証サーバ126は、ステップ1206(図12)で取り出された鍵レコードの再発行限度フィールド1910(図19)に保管されたデータに従って、そのような判定を行う。再発行が許可されない場合には、処理が終端ステップ1210に移り、認証サーバ126が、選択されたコンテンツにアクセスするためにユーザがフル・パスポートを必要とすることを示すエラー・メッセージを返す。逆に、機械束縛鍵の再発行が許可される場合には、処理がステップ1216に移る。
【0111】
ステップ1216では、認証サーバ126が、ヒストリ・レコード1706などの新しいヒストリ・レコードを用いて、鍵レコード1704(図19)の再発行を証明書データベース124(図17)に記録する。ステップ1216(図12)の後に、認証サーバ126は、終端ステップ1218(図12)で、鍵レコード1704(図19)からの情報を含む機械束縛パスポート・レコードを、コンテンツ・プレイヤ142(図1)に返す。終端ステップ1210または終端ステップ1218の後に、論理流れ図1200による処理が完了する。
【0112】
上で説明したように、論理流れ図1300(図13)は、フル・パスポート情報を含む新しいパスポートの要求に応答する認証サーバ126による処理を表す。具体的に言うと、論理流れ図1300は、ユーザが既にフル・パスポートを有し、本質的に機械束縛鍵をそのフル・パスポートに追加することを求める場合の、ステップ1106(図11)でコンテンツ・プレイヤ142によって行われる要求に対する、認証サーバ126による応答を表す。ステップ1302(図13)で、認証サーバ126が、上でステップ1202(図12)に関して説明した形で、選択されたコンテンツの証明書を取り出す。テスト・ステップ1304(図13)で、認証サーバ126が、上でステップ1204(図12)に関して説明した形で、コンテンツ証明書が機械束縛であるかどうかを判定する。
【0113】
コンテンツ証明書が機械束縛でない場合には、認証サーバ126は、終端ステップ1306(図13)でエラーを返す。というのは、選択されたコンテンツが、異なるフルのユーザ束縛パスポートに束縛されている、すなわち、異なるユーザに束縛されているからである。逆に、証明書が機械束縛である場合には、処理がステップ1308に移る。
【0114】
テスト・ステップ1308では、ポリシ判断を実施し、認証サーバ126が、機械束縛鍵を事前に存在するフル・パスポートに追加できるかどうかを判定する。これが発生するのは、たとえば、ユーザが、あるクライアント・コンピュータ・システムでフル・パスポートについて登録し、別のクライアント・コンピュータ・システムで機械束縛パスポートについて登録し、その後、獲得したコンテンツを後者のクライアント・コンピュータ・システムから前者に移動することを求める場合である。ユーザは、鍵の2つの異なる組に束縛された獲得されたコンテンツを有する。これが許可されない場合には、処理は終端ステップ1306に移り、エラーが返される。逆に、これが許可される場合には、処理はテスト・ステップ1310に移る。
【0115】
テスト・ステップ1310で、認証サーバ126が、もう1つのポリシ判断すなわち、この特定のフル・パスポートにさらに鍵を含めることができるかどうかを実施する。通常、フル・パスポートは、限られた数の追加の鍵だけを保持することを許可され、ユーザが、友人および同僚から無制限に機械束縛鍵およびコンテンツを収集できないようになっている。この実施形態では、パスポート鍵限度1912(図19)によって、鍵レコード1704に基づいてパスポートによって保持される鍵の最大個数が指定される。認証サーバ126は、ユーザのフル・パスポートに既に保持されている鍵の数を、パスポート鍵限度1912で指定された限度と比較して、パスポートにさらに鍵を含めることができるかどうかを判定する。
【0116】
パスポートにさらに鍵を含めることができない場合には、処理が終端ステップ1306(図13)に移り、エラーが返される。終端ステップ1306では、テスト・ステップ1304、テスト・ステップ1308、またはテスト・ステップ1310のどれから来た場合でも、論理流れ図1300による処理が打ち切られる。
【0117】
逆に、パスポートにさらに鍵を含めることができる場合には、処理がステップ1312に移り、鍵がパスポートに追加され、鍵の追加が、証明書データベース124内の新しいヒストリ・レコードに記録される。鍵を追加する際に、認証サーバ126が、パスポートに追加の鍵レコード2312(図23)を追加する。追加の鍵レコード2312に、鍵2314および証明書2316が含まれる。証明書2316は、選択されたコンテンツが既に束縛されているコンテンツ・プレイヤの証明書であり、鍵2314は、相応する秘密鍵である。鍵2314は、暗号化されていない登録鍵2308(たとえば平文登録鍵520(図5)を参照されたい)を使用して暗号化される。1実施形態では、そのような暗号化が、認証サーバ126によってパスポート情報が返された後にコンテンツ・プレイヤ142(図1)によって実行される。というのは、コンテンツ・プレイヤ142が、ユーザ供給パスワードを直接に受け取るからである。代替実施形態では、認証サーバ126が、平文登録鍵520を維持し、パスポート要求と共にコンテンツ・プレイヤ142からユーザ供給パスワードを受信し、したがって、認証サーバ126が鍵2314(図23)を暗号化する。
【0118】
ステップ1314(図13)の後に、処理が終端ステップ1316に移り、認証サーバが、フル・パスポート・レコードを送信し、論理流れ図1300による処理を完了する。
【0119】
論理流れ図1400(図14)は、ユーザがフル・パスポートを有しないが、前に獲得した機械束縛パスポートをフル・パスポートにアップグレードすることを要求している場合の、ステップ1122(図11)でのコンテンツ・プレイヤ142の要求に対する、認証サーバ126による応答を表す。ユーザが、そのようなアップグレードを明示的に要求することができ、また、コンテンツが束縛されていないクライアント・コンピュータ・システムでユーザが機械束縛コンテンツの再生を試みた後にユーザが同意した時に、そのようなアップグレードを試みることができる。ステップ1402(図14)で、認証サーバ126が、コンテンツへの鍵と共に新しいフル・パスポートを生成する。ステップ1402を、論理流れ図1402(図15)として詳細に示す。
【0120】
ステップ1502で、認証サーバ126が、ステップ1122(図11)の要求でコンテンツ・プレイヤ142から受信したハードウェア識別子に対応するハードウェア識別子1914(図19)を有する鍵レコードを検索する。見つからない場合には、処理がステップ1504に移る。
【0121】
ステップ1504で、認証サーバ126が、新しい鍵対を作成し、新しい鍵対を表す、鍵レコード1704(図19)などの新しい鍵レコードを形成する。ステップ1506で、認証サーバ126が、新しい鍵レコードの鍵を有するフル・パスポートを作成する。具体的に言うと、認証サーバ126は、新たに作成された鍵レコード1704の公開鍵1906(図19)および有効性日付1908を、それぞれ公開鍵2320(図23)および有効性日付2322にコピーする。認証サーバ126は、新しい証明書通し番号2324を作成し、証明書2302に署名して、署名2326を形成する。認証サーバ126は、秘密鍵1904(図19)を秘密鍵2304(図23)にコピーする。この実施形態では、秘密鍵2304が、上で説明したように、ステップ1010(図10)でコンテンツ・プレイヤ142(図1)によって保護される。さらに、プライベート・ユーザ情報2306(図23)は、コンテンツ・プレイヤ142によって完成させるために空のままにする。認証サーバ126は、新しい登録鍵2308および新しい乱数2310を作成する。コンテンツ・プレイヤ142は、上で説明したように、ステップ1010(図10)で登録鍵2308を保護する。
【0122】
テスト・ステップ1502に戻って、受信したハードウェア識別子に対応する鍵レコードが見つかる場合には、処理がテスト・ステップ1508に移り、ポリシ判断が実施される。具体的に言うと、テスト・ステップ1508では、テスト・ステップ1308(図13)によって実施されるものと同一のポリシ判断すなわち、フル・パスポートに機械束縛鍵を含めることができるかどうかを実施する。認証サーバ126が、フル・パスポートに機械束縛鍵を含めることができないと判定する場合に、処理が終端ステップ1510に移り、認証サーバ126が、エラーを返し、論理流れ図1402および1400(図14)による処理を完了する。逆に、フル・パスポートに機械束縛鍵を含めることができる場合には、処理はステップ1512(図15)に移る。
【0123】
ステップ1512で、認証サーバ126が、証明書データベース124内の新しいヒストリ・レコードに、テスト・ステップ1502で突き止めた鍵レコードの鍵の発行を記録する。ステップ1514で、認証サーバ126が、機械束縛鍵レコードの鍵を用いてフル・パスポートを作成する。ステップ1514は、鍵レコード1704がステップ1514で新規作成されないことを除いて、上で説明したステップ1506に類似する。その代わりに、鍵レコード1704が、テスト・ステップ1502で突き止められた鍵レコードになる。
【0124】
ステップ1506またはステップ1514のいずれかの後に、論理流れ図1402による処理、したがってステップ1402(図14)が、完了する。ステップ1404で、認証サーバ126が、受信したハードウェア識別子およびコンテンツ情報を使用して、新しいフル・パスポートを生成する。ステップ1404を、論理流れ図1404(図16)として詳細に示す。
【0125】
テスト・ステップ1602で、認証サーバ126が、選択されたコンテンツの証明書が、ステップ1122の要求と共にコンテンツ・プレイヤ142から受信されたかどうかを判定する。ユーザが、特定のコンテンツの再生を要求せずに、機械束縛からユーザ束縛へのパスポートのアップグレードを明示的に要求する場合には、認証サーバ126によって受信される要求に、コンテンツ証明書が含まれない。しかし、アップグレード要求が、コンテンツが第2のクライアント・コンピュータ・システムに束縛されている時に第1のクライアント・コンピュータ・システムでコンテンツを再生する試みに応答したものである場合の、ステップ1122(図11)を介して来た要求の場合には、その要求に、再生を試みられたコンテンツの証明書が含まれる。
【0126】
コンテンツ証明書がコンテンツ・プレイヤ142からの要求に含まれない場合には、処理はステップ1604(図16)に移り、ステップ1506(図15)またはステップ1514で作成されたフル・パスポート情報が返される。論理流れ図1402(図16)による処理、したがってステップ1404(図14)が、ステップ1604(図16)の後に完了する。
【0127】
その一方で、コンテンツ証明書がコンテンツ・プレイヤ142からの要求に含まれる場合には、処理はテスト・ステップ1606に移る。テスト・ステップ1606では、認証サーバ126が、コンテンツ・プレイヤ142から受信したハードウェア識別子が、コンテンツ証明書と一致するかどうかを判定する。そうである場合には、ユーザが、自分のコンテンツが束縛された機械からのアップグレードを要求しており、処理がステップ1604に移り、ステップ1506(図15)またはステップ1514で作成されたフル・パスポート情報が返される。逆に、受信したハードウェア識別子とコンテンツ証明書が一致しない場合には、処理はテスト・ステップ1608に移る。
【0128】
テスト・ステップ1608では、認証サーバ126が、ポリシ判断すなわち、機械束縛鍵をフル・パスポートに発行できるかどうかを実施する。これは、テスト・ステップ1508のポリシ判断と同一である。機械束縛鍵をフル・パスポートに発行することができない場合には、エラーが返され、論理流れ図1404および1400(図14)による処理が打ち切られる。逆に、機械束縛鍵をフル・パスポートに追加することができる場合には、処理はテスト・ステップ1612に移る。
【0129】
テスト・ステップ1612で、認証サーバ126が、もう1つのポリシ判断すなわち、このパスポートがさらに鍵を保持できるかどうかを実施する。これは、テスト・ステップ1310のポリシ判断と同一である。フル・パスポートがこれ以上の鍵を保持できない場合には、エラーが返され、論理流れ図1404および1400(図14)による処理が打ち切られる。逆に、フル・パスポートがさらに鍵を保持できる場合には、処理はステップ1614(図16)に移る。
【0130】
ステップ1614で、認証サーバ126が、上でステップ1312(図13)に関して説明した形で、フル・パスポートに機械束縛鍵を含めたことを証明書データベース124に記録する。ステップ1616で、認証サーバ126が、コンテンツ証明書からの鍵をフル・パスポートに追加する。たとえば、証明書2100(図21)が、コンテンツ証明書を表す場合に、認証サーバ126は、証明書2100を証明書2316(図23)として保管し、関連する鍵レコードの関連する秘密鍵1904を鍵2314(図23)として保管する。
【0131】
ステップ1614(図16)の後に、処理はステップ1604に移り、ステップ1506(図15)またはステップ1514で作成されたフル・パスポート情報が、ステップ1616(図16)の追加の鍵と共に返され、論理流れ図1404および1400(図14)による処理が完了する。
【0132】
したがって、機械束縛パスポートが、ユーザにとって比較的便利な保護された形で、再暗号化または他の形での束縛されたデータの修正を必要とせずに、ユーザ束縛パスポートに変換される。
【0133】
認証サーバとコンテンツ・プレイヤの間の保護された接続
上で簡単に説明したように、認証サーバ126(図1)およびコンテンツ・プレイヤ142は、広域ネットワーク106を介する保護された接続を介して通信する。1実施形態では、既知のSecure Sockets Layer(SSL)タイプの接続が、認証サーバ126とコンテンツ・プレイヤ142の間の保護された通信に使用される。
【0134】
代替実施形態では、認証サーバ126とコンテンツ・プレイヤ142が、SSLプロトコルより単純な、暗号的に保護されたセッションで互いに通信する。コンテンツ・プレイヤ142が、認証サーバ126に要求メッセージを送信して、認証サーバ126の証明書を得る。コンテンツ・プレイヤ142は、認証サーバ126の公開鍵を使用してその登録情報を暗号化し、その結果、認証サーバ126だけが、登録情報を解読できるようになる。認証サーバ126は、パスポートを作成するのに必要な情報をコンテンツ・プレイヤ142に返す。この情報は、コンテンツ・プレイヤ142によって供給された登録情報から導出された鍵を使用して暗号化され、コンテンツ・プレイヤ142だけが、そのパスポート情報を解読できるようになっている。
【0135】
上の説明は、単に例示的であって制限的ではない。本発明は請求項によってのみ制限される。
【図面の簡単な説明】
【図1】 広域コンピュータ・ネットワークを介してクライアント・コンピュータ・システムに結合されたサーバ・コンピュータ・システムを含むコンピュータ・システムのブロック図である。クライアント・コンピュータ・システムには、本発明に従って保護されるデータにアクセスするコンテンツ・プレイヤが含まれる。
【図2】 図1のコンテンツ・プレイヤを詳細に示すブロック図である。
【図3A】 図2のコンテンツ・プレイヤのセキュリティ・マネージャを詳細に示すブロック図である。
【図3B】 図2のコンテンツ・プレイヤのセキュリティ・マネージャを詳細に示すブロック図である。
【図4】 本発明による機械束縛パスポート・ジェネレータのブロック図である。
【図5】 本発明によるフル、ポータブル・パスポート・ジェネレータのブロック図である。
【図6A】 本発明による、機械束縛パスポートをフル・パスポートに変換するパスポート・コンバータのブロック図である。
【図6B】 代替実施形態による、パスポートの変換を示す論理流れ図である。
【図7】 本発明によるディジタル・データ獲得に関するユーザの認証の論理流れ図である。
【図8】 本発明によるユーザ認証中の新しい機械束縛パスポートの獲得の論理流れ図である。
【図9】 本発明による、新しい機械束縛パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図10】 本発明によるユーザ認証中の新しいフル・パスポートの獲得の論理流れ図である。
【図11A】 本発明による、新しいフル・パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図11B】 本発明による、新しいフル・パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図12A】 本発明による、新しいフル・パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図12B】 本発明による、新しいフル・パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図13】 本発明による、新しいフル・パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図14】 本発明による、新しいフル・パスポートの要求の、図1のサーバ・プロセスによる処理の論理流れ図である。
【図15】 図14の論理流れ図の1ステップの処理を詳細に示す論理流れ図である。
【図16A】 図14の論理流れ図の1ステップの処理を詳細に示す論理流れ図である。
【図16B】 図14の論理流れ図の1ステップの処理を詳細に示す論理流れ図である。
【図17】 図1の証明書データベースを詳細に示すブロック図である。
【図18】 図17のアカウント・レコードを詳細に示すブロック図である。
【図19】 図17の鍵レコードを詳細に示すブロック図である。
【図20】 図17のヒストリ・レコードを詳細に示すブロック図である。
【図21】 証明書のブロック図である。
【図22】 図1のパスポートを詳細に示すブロック図である。
【図23】 ユーザ束縛パスポートのブロック図である。
【図24】 機械束縛パスポートのブロック図である。

Claims (6)

  1. 認証システムおよび1つまたは複数のクライアント・コンピュータ・システムを含むデータ配信システムにおいて、コンテンツ・データを機械束縛からユーザ束縛に変換する方法であって、
    前記コンテンツ・データを前記1つまたは複数のクライアント・コンピュータ・システムに束縛することであって、前記1つまたは複数のクライアント・コンピュータ・システムに関連付けられたハードウェア識別子を暗号鍵として、前記コンテンツ・データを復号化するための1つまたは複数の平文鍵を暗号化し、1つまたは複数の機械束縛鍵を形成すること、
    前記1つまたは複数の機械束縛鍵を、前記1つまたは複数の平文鍵に変換することであって前記1つまたは複数の平文鍵が、前記1つまたは複数のクライアント・コンピュータ・システムに依存しないようにすること、
    ユーザから与えられたパスワードを暗号鍵として、前記1つまたは複数の平文鍵を暗号化し、前記1つまたは複数のユーザ束縛鍵を形成することを備え、
    前記パスワードを用いて前記1つまたは複数のユーザ束縛鍵を復号化し、前記1つまたは複数の平文鍵を得て、前記コンテンツ・データを復号化することを特徴とする方法。
  2. 前記ユーザから与えられたパスワードの入力は前記コンテンツ・データにアクセスするための前記ユーザ束縛鍵の使用を許可する前に、前記1つまたは複数のクライアント・コンピュータ・システムから要求されることを特徴とする請求項1に記載の方法。
  3. 前記1つまたは複数の平文鍵を暗号化し、前記1つまたは複数のユーザ束縛鍵を形成することは、前記1つまたは複数のクライアント・コンピュータ・システムにおいて前記コンテンツ・データに前記ユーザのプライベート情報を関連付けて、前記コンテンツ・データの再生が前記ユーザのプライベート情報の表示を引き起こすようにすることを特徴とする請求項1に記載の方法。
  4. 前記1つまたは複数のクライアント・コンピュータ・システム以外のコンピュータ・システムにおいて、前記コンテンツ・データの再生をユーザが要求する状態の検出に応答して、コンテンツ・データを機械束縛からユーザ束縛に変換することを特徴とする請求項1に記載の方法。
  5. 前記1つまたは複数の平文鍵は、秘密鍵であり、
    前記コンテンツ・データを復号化するためのマスタ鍵を、前記秘密鍵と対となる公開鍵を用いて暗号化して媒体鍵を形成し、前記1つまたは複数のクライアント・コンピュータ・システムに格納することを備え、
    前記1つまたは複数の平文鍵を用いて前記媒体鍵を復号化し、前記マスタ鍵を得ることを特徴とする請求項1に記載の方法。
  6. 前記1つまたは複数のユーザ束縛鍵を復号化するための復号鍵を、前記パスワードを用いて暗号化して登録鍵を形成し、前記登録鍵を復号化し、前記復号鍵を得ることを特徴とする請求項5に記載の方法。
JP2001547236A 1999-12-20 2000-10-11 ディジタル・データの無許可アクセスを防止するための適応可能セキュリティ機構 Expired - Fee Related JP4689920B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US09/468,279 US6792113B1 (en) 1999-12-20 1999-12-20 Adaptable security mechanism for preventing unauthorized access of digital data
US09/468,279 1999-12-20
PCT/US2000/028205 WO2001046786A1 (en) 1999-12-20 2000-10-11 Adaptable security mechanism for preventing unauthorized access of digital data

Publications (2)

Publication Number Publication Date
JP2003518351A JP2003518351A (ja) 2003-06-03
JP4689920B2 true JP4689920B2 (ja) 2011-06-01

Family

ID=23859172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001547236A Expired - Fee Related JP4689920B2 (ja) 1999-12-20 2000-10-11 ディジタル・データの無許可アクセスを防止するための適応可能セキュリティ機構

Country Status (8)

Country Link
US (2) US6792113B1 (ja)
EP (3) EP1517215B1 (ja)
JP (1) JP4689920B2 (ja)
AT (1) ATE285598T1 (ja)
AU (1) AU1432301A (ja)
DE (1) DE60016972T2 (ja)
ES (1) ES2389725T3 (ja)
WO (1) WO2001046786A1 (ja)

Families Citing this family (113)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6298446B1 (en) 1998-06-14 2001-10-02 Alchemedia Ltd. Method and system for copyright protection of digital images transmitted over networks
US7493497B1 (en) 2000-02-03 2009-02-17 Integrated Information Solutions Digital identity device
WO2001084283A2 (en) * 2000-04-28 2001-11-08 Moldflow Corporation Network enabled application software system and method
US7409061B2 (en) * 2000-11-29 2008-08-05 Noatak Software Llc Method and system for secure distribution of subscription-based game software
US9047609B2 (en) * 2000-11-29 2015-06-02 Noatak Software Llc Method and system for dynamically incorporating advertising content into multimedia environments
US8260723B2 (en) 2000-12-01 2012-09-04 Carrott Richard F Transactional security over a network
US20070288394A1 (en) 2000-12-01 2007-12-13 Carrott Richard F Transactional security over a network
US7174568B2 (en) * 2001-01-31 2007-02-06 Sony Computer Entertainment America Inc. Method and system for securely distributing computer software products
JP2002297477A (ja) * 2001-03-28 2002-10-11 Sony Computer Entertainment Inc 配信システム及び配信方法
JP4072761B2 (ja) * 2001-03-29 2008-04-09 ソニー株式会社 情報処理装置および方法、記録媒体、並びに、プログラム
JPWO2002080447A1 (ja) * 2001-03-29 2004-07-22 ソニー株式会社 情報処理装置
JP2002297452A (ja) * 2001-03-30 2002-10-11 Matsushita Electric Ind Co Ltd 記録再生装置、制御方法、及び不正防止システム
FR2823928B1 (fr) * 2001-04-19 2003-08-22 Canal Plus Technologies Procede pour une communication securisee entre deux dispositifs
US7421411B2 (en) * 2001-07-06 2008-09-02 Nokia Corporation Digital rights management in a mobile communications environment
US20030046565A1 (en) * 2001-08-31 2003-03-06 Toshiba Tec Kabushiki Kaisha Method for encrypting and decrypting contents data distributed through network, and system and user terminal using that method
US7062045B2 (en) * 2001-09-06 2006-06-13 Clwt, Llc Media protection system and method
US20030053630A1 (en) * 2001-09-20 2003-03-20 International Business Machines Corporation Method and system for key usage control in an embedded security system
US7318238B2 (en) * 2002-01-14 2008-01-08 Microsoft Corporation Security settings for markup language elements
JP4256100B2 (ja) * 2002-01-31 2009-04-22 富士通株式会社 正当媒体管理システム
JP2004118327A (ja) * 2002-09-24 2004-04-15 Sony Corp コンテンツ使用制御装置及びコンテンツ使用制御方法、並びにコンピュータ・プログラム
EP1556748A2 (en) * 2002-10-22 2005-07-27 Koninklijke Philips Electronics N.V. Method and device for authorizing content operations
CN101635626B (zh) * 2002-12-17 2011-08-03 索尼电影娱乐公司 在重叠多服务器网络环境中用于访问控制的方法和装置
US7203965B2 (en) 2002-12-17 2007-04-10 Sony Corporation System and method for home network content protection and copy management
EP2028860B1 (en) * 2002-12-17 2012-05-16 Sony Pictures Entertainment Inc. Method and apparatus for access control in an overlapping multiserver network environment
US8230084B2 (en) 2002-12-17 2012-07-24 Sony Corporation Network management in a media network environment
US7290149B2 (en) * 2003-03-03 2007-10-30 Microsoft Corporation Verbose hardware identification for binding a software package to a computer system having tolerance for hardware changes
US7310729B2 (en) * 2003-03-12 2007-12-18 Limelight Networks, Inc. Digital rights management license delivery system and method
DE10311249A1 (de) * 2003-03-14 2004-09-23 Robert Bosch Gmbh Mikroprozessorsystem und Verfahren zum Erfassen des Austauschs von Bausteinen des Systems
US7356143B2 (en) * 2003-03-18 2008-04-08 Widevine Technologies, Inc System, method, and apparatus for securely providing content viewable on a secure device
US7007170B2 (en) * 2003-03-18 2006-02-28 Widevine Technologies, Inc. System, method, and apparatus for securely providing content viewable on a secure device
EP1618453B1 (en) 2003-04-25 2009-10-07 Apple, Inc. Methods and system for secure network-based distribution of content
WO2004097759A1 (en) 2003-04-25 2004-11-11 Apple Computer, Inc. Method and system for network-based purchase and distribution of media
EP1639440A4 (en) 2003-04-25 2009-03-11 Apple Inc GRAPHIC USER INTERFACE FOR BROWSING, BROWSING AND PRESENTING MEDIA ARTICLES
US20040215534A1 (en) 2003-04-25 2004-10-28 Apple Computer, Inc. Method and system for network-based allowance control
WO2004114575A2 (en) * 2003-06-17 2004-12-29 Visa International Service Association Method and systems for securely exchanging data in an electronic transaction
US20050066355A1 (en) * 2003-09-19 2005-03-24 International Business Machines Corporation System and method for satellite broadcasting and receiving encrypted television data signals
US7721111B2 (en) * 2003-12-14 2010-05-18 Realnetworks, Inc. Auto-negotiation of content output formats using a secure component model
EP1700182B1 (de) * 2003-12-30 2009-06-17 Wibu-Systems AG Verfahren zum wiederherstellen eines berechtigungscodes
US7802085B2 (en) 2004-02-18 2010-09-21 Intel Corporation Apparatus and method for distributing private keys to an entity with minimal secret, unique information
WO2006000029A1 (en) * 2004-06-23 2006-01-05 Telstra Corporation Limited Content delivery system and player
US7765404B2 (en) * 2004-06-29 2010-07-27 Nokia Corporation Providing content in a communication system
JP2006031175A (ja) * 2004-07-13 2006-02-02 Sony Corp 情報処理システム、情報処理装置、およびプログラム
US7697691B2 (en) * 2004-07-14 2010-04-13 Intel Corporation Method of delivering Direct Proof private keys to devices using an on-line service
US7565577B2 (en) 2004-07-22 2009-07-21 Research In Motion Limited Method and apparatus for providing intelligent error messaging
US9609279B2 (en) 2004-09-24 2017-03-28 Google Inc. Method and system for providing secure CODECS
US8924728B2 (en) 2004-11-30 2014-12-30 Intel Corporation Apparatus and method for establishing a secure session with a device without exposing privacy-sensitive information
US20060218413A1 (en) * 2005-03-22 2006-09-28 International Business Machines Corporation Method of introducing physical device security for digitally encoded data
JP2006268682A (ja) * 2005-03-25 2006-10-05 Fujitsu Ltd 認証システム、その制御方法、情報処理システムおよび携帯型認証装置
JP4760101B2 (ja) * 2005-04-07 2011-08-31 ソニー株式会社 コンテンツ提供システム,コンテンツ再生装置,プログラム,およびコンテンツ再生方法
KR20060109237A (ko) * 2005-04-13 2006-10-19 삼성전자주식회사 라이센스 정보에 기초하여 컨텐트의 사용을 제어하기 위한암호화/복호화 방법 및 장치
US7720221B2 (en) * 2005-05-20 2010-05-18 Certicom Corp. Privacy-enhanced e-passport authentication protocol
US8078740B2 (en) 2005-06-03 2011-12-13 Microsoft Corporation Running internet applications with low rights
US8219493B2 (en) * 2005-06-10 2012-07-10 Aniruddha Gupte Messaging method and apparatus for use in digital distribution systems
US7912960B2 (en) * 2005-06-20 2011-03-22 Microsoft Corporation Reciprocal public trust relationship
US20070030965A1 (en) * 2005-07-19 2007-02-08 Mansz Robert P Methods and apparatuses for management of entitlement to digital security operations
US7814330B2 (en) * 2005-08-01 2010-10-12 Oracle International Corporation Method and apparatus for facilitating multi-level computer system authentication
US8135645B2 (en) * 2005-12-06 2012-03-13 Microsoft Corporation Key distribution for secure messaging
FR2894417A1 (fr) * 2005-12-07 2007-06-08 France Telecom Recouvrement de cles de dechiffrement perimees
US8479186B2 (en) * 2005-12-22 2013-07-02 Sandisk Technologies Inc. Method for program code execution with memory storage controller participation
US8484632B2 (en) * 2005-12-22 2013-07-09 Sandisk Technologies Inc. System for program code execution with memory storage controller participation
US7774708B2 (en) 2006-01-04 2010-08-10 Apple Inc. Graphical user interface with improved media presentation
ZA200807344B (en) * 2006-02-27 2009-07-29 It Crimes Cc Method and system for registering a device
US8014530B2 (en) 2006-03-22 2011-09-06 Intel Corporation Method and apparatus for authenticated, recoverable key distribution with no database secrets
US8185737B2 (en) 2006-06-23 2012-05-22 Microsoft Corporation Communication across domains
US8175269B2 (en) * 2006-07-05 2012-05-08 Oracle International Corporation System and method for enterprise security including symmetric key protection
US8689254B2 (en) 2006-09-11 2014-04-01 Apple Inc. Techniques and graphical user interfaces for preview of media items
US7761468B2 (en) * 2006-10-04 2010-07-20 International Business Machines Corporation Supporting multiple security mechanisms in a database driver
US20080092239A1 (en) 2006-10-11 2008-04-17 David H. Sitrick Method and system for secure distribution of selected content to be protected
US8619982B2 (en) * 2006-10-11 2013-12-31 Bassilic Technologies Llc Method and system for secure distribution of selected content to be protected on an appliance specific basis
US8719954B2 (en) 2006-10-11 2014-05-06 Bassilic Technologies Llc Method and system for secure distribution of selected content to be protected on an appliance-specific basis with definable permitted associated usage rights for the selected content
US9016469B2 (en) 2006-11-17 2015-04-28 Apple Inc. Gift card carriers
US8689300B2 (en) * 2007-01-30 2014-04-01 The Boeing Company Method and system for generating digital fingerprint
US20080289046A1 (en) * 2007-05-17 2008-11-20 Thomas Michael Fryer Method and device for the prevention of piracy, copying and unauthorized execution of computer-readable media
US10019570B2 (en) 2007-06-14 2018-07-10 Microsoft Technology Licensing, Llc Protection and communication abstractions for web browsers
US9875495B2 (en) 2007-09-04 2018-01-23 Apple Inc. Method and apparatus for purchasing digital playlists
KR101453464B1 (ko) * 2007-11-09 2014-10-21 삼성전자주식회사 이동통신 단말기의 컨텐츠 권한 정보 관리 장치 및 방법
US8082592B2 (en) * 2008-01-12 2011-12-20 Harris Technology, Llc Read/write encrypted media and method of playing
US8868464B2 (en) 2008-02-07 2014-10-21 Google Inc. Preventing unauthorized modification or skipping of viewing of advertisements within content
US8875886B2 (en) 2008-08-25 2014-11-04 Apple Inc. Carrier card arrangement with removable envelope
US8407202B2 (en) 2008-10-06 2013-03-26 At&T Intellectual Property I, L.P. Embedded business metadata
US9400891B2 (en) * 2009-01-23 2016-07-26 Randall Stephens Owner controlled transmitted file protection and access control system and method
US8572394B2 (en) 2009-09-04 2013-10-29 Computer Associates Think, Inc. OTP generation using a camouflaged key
US8533460B2 (en) * 2009-11-06 2013-09-10 Computer Associates Think, Inc. Key camouflaging method using a machine identifier
DE102009052454A1 (de) 2009-11-09 2011-05-12 Siemens Aktiengesellschaft Verfahren und System zum vertraulichen Bereitstellen von Softwarekomponenten
US8843757B2 (en) * 2009-11-12 2014-09-23 Ca, Inc. One time PIN generation
US9881069B2 (en) 2010-06-28 2018-01-30 International Business Machines Corporation Information landscape modeling, analysis and validation
WO2012054903A2 (en) * 2010-10-21 2012-04-26 Rimage Corporation Content distribution and aggregation
AU2011100168B4 (en) * 2011-02-09 2011-06-30 Device Authority Ltd Device-bound certificate authentication
US8983067B2 (en) * 2011-08-17 2015-03-17 Nxp B.V. Cryptographic circuit and method therefor
US8903088B2 (en) * 2011-12-02 2014-12-02 Adobe Systems Incorporated Binding of protected video content to video player with encryption key
US8879731B2 (en) 2011-12-02 2014-11-04 Adobe Systems Incorporated Binding of protected video content to video player with block cipher hash
US8751800B1 (en) 2011-12-12 2014-06-10 Google Inc. DRM provider interoperability
EP2890046B1 (en) * 2012-08-24 2018-12-19 Sony Corporation Information processing device, information storage device, server, information processing system, information processing method, and program
JP5749236B2 (ja) 2012-09-28 2015-07-15 株式会社東芝 鍵付け替え管理装置および鍵付け替え管理方法
US9064318B2 (en) 2012-10-25 2015-06-23 Adobe Systems Incorporated Image matting and alpha value techniques
US9355649B2 (en) 2012-11-13 2016-05-31 Adobe Systems Incorporated Sound alignment using timing information
US9201580B2 (en) 2012-11-13 2015-12-01 Adobe Systems Incorporated Sound alignment user interface
US10638221B2 (en) 2012-11-13 2020-04-28 Adobe Inc. Time interval sound alignment
US9076205B2 (en) 2012-11-19 2015-07-07 Adobe Systems Incorporated Edge direction and curve based image de-blurring
US10249321B2 (en) 2012-11-20 2019-04-02 Adobe Inc. Sound rate modification
US10455219B2 (en) 2012-11-30 2019-10-22 Adobe Inc. Stereo correspondence and depth sensors
US9135710B2 (en) 2012-11-30 2015-09-15 Adobe Systems Incorporated Depth map stereo correspondence techniques
US10249052B2 (en) 2012-12-19 2019-04-02 Adobe Systems Incorporated Stereo correspondence model fitting
US9208547B2 (en) 2012-12-19 2015-12-08 Adobe Systems Incorporated Stereo correspondence smoothness tool
US9214026B2 (en) 2012-12-20 2015-12-15 Adobe Systems Incorporated Belief propagation and affinity measures
JP6113508B2 (ja) * 2013-01-08 2017-04-12 株式会社東芝 記録方法及び電子機器
US20150372825A1 (en) * 2014-06-23 2015-12-24 Google Inc. Per-Device Authentication
EP2998895B1 (en) * 2014-09-22 2017-05-03 Denuvo GmbH Technique for enabling nominal flow of an executable file
JP5971820B2 (ja) * 2014-12-24 2016-08-17 インターナショナル・ビジネス・マシーンズ・コーポレーションInternational Business Machines Corporation データを利用する方法及び装置
US10366244B2 (en) * 2015-06-09 2019-07-30 International Business Machines Corporation Performing an operation on sensitive data
US10785220B2 (en) 2018-06-01 2020-09-22 Bank Of America Corporation Alternate user communication routing
US10785214B2 (en) 2018-06-01 2020-09-22 Bank Of America Corporation Alternate user communication routing for a one-time credential
US11741159B2 (en) * 2019-10-29 2023-08-29 Shmuel Ur Innovation Ltd Digital media authentication

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002512412A (ja) * 1998-04-17 2002-04-23 アイオメガ コーポレイション 不正コピー防止のため特定媒体へ電子化保護データを対応づけるシステム

Family Cites Families (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA1238427A (en) 1984-12-18 1988-06-21 Jonathan Oseas Code protection using cryptography
US5418713A (en) 1993-08-05 1995-05-23 Allen; Richard Apparatus and method for an on demand data delivery system for the preview, selection, retrieval and reproduction at a remote location of previously recorded or programmed materials
US5454039A (en) 1993-12-06 1995-09-26 International Business Machines Corporation Software-efficient pseudorandom function and the use thereof for encryption
DE4413451A1 (de) 1994-04-18 1995-12-14 Rolf Brugger Vorrichtung zum Vertrieb von Musikinformationen in digitaler Form
CA2143874C (en) * 1994-04-25 2000-06-20 Thomas Edward Cooper Method and apparatus for enabling trial period use of software products: method and apparatus for utilizing a decryption stub
CN1869997A (zh) 1995-02-13 2006-11-29 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US5943422A (en) 1996-08-12 1999-08-24 Intertrust Technologies Corp. Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
JP3688356B2 (ja) 1995-08-31 2005-08-24 富士通株式会社 ライセンシー通知システム
JPH09179768A (ja) * 1995-12-21 1997-07-11 Olympus Optical Co Ltd ファイル暗号化システム及びファイル復号化システム
US5898777A (en) 1996-03-07 1999-04-27 Portland Software, Inc. Digital product dissemination and sale
CN104376032A (zh) 1996-05-15 2015-02-25 英特托拉斯技术公司 获取dvd盘受控内容或信息的方法及装置、操作dvd设备的方法
JP3751684B2 (ja) * 1996-06-18 2006-03-01 日本電信電話株式会社 暗号化情報復号方法
EP1693804B1 (en) 1996-09-04 2009-11-11 Intertrust Technologies Corp. Trusted infrastructure support systems, methods and techniques for secure electronic commerce, electronic transactions, commerce process control and automation, distributed computing and rights management
US5958051A (en) * 1996-11-27 1999-09-28 Sun Microsystems, Inc. Implementing digital signatures for data streams and data archives
US5920861A (en) 1997-02-25 1999-07-06 Intertrust Technologies Corp. Techniques for defining using and manipulating rights management data structures
AU6759198A (en) 1997-03-14 1998-10-12 Cryptoworks, Inc. Digital product rights management technique
JPH11122237A (ja) * 1997-10-09 1999-04-30 Taisei Corp 暗号化装置及びデータ保護装置
US6112181A (en) 1997-11-06 2000-08-29 Intertrust Technologies Corporation Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information
US5982892A (en) 1997-12-22 1999-11-09 Hicks; Christian Bielefeldt System and method for remote authorization for unlocking electronic data
US6385596B1 (en) * 1998-02-06 2002-05-07 Liquid Audio, Inc. Secure online music distribution system
DE69925466T2 (de) 1998-03-16 2006-02-02 Intertrust Technologies Corp., Santa Clara Streaming-media-abspielgerät mit fortdauernde kontrolle und schutz von medieninhalt
US6434535B1 (en) * 1998-11-13 2002-08-13 Iomega Corporation System for prepayment of electronic content using removable media and for prevention of unauthorized copying of same

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002512412A (ja) * 1998-04-17 2002-04-23 アイオメガ コーポレイション 不正コピー防止のため特定媒体へ電子化保護データを対応づけるシステム

Also Published As

Publication number Publication date
EP1240568B1 (en) 2004-12-22
EP2400362A1 (en) 2011-12-28
ES2389725T3 (es) 2012-10-30
EP1517215A3 (en) 2009-07-15
AU1432301A (en) 2001-07-03
JP2003518351A (ja) 2003-06-03
US6792113B1 (en) 2004-09-14
US20050033974A1 (en) 2005-02-10
EP1517215B1 (en) 2012-07-11
DE60016972D1 (de) 2005-01-27
EP1240568A1 (en) 2002-09-18
ATE285598T1 (de) 2005-01-15
WO2001046786A1 (en) 2001-06-28
US7603563B2 (en) 2009-10-13
EP1517215A2 (en) 2005-03-23
DE60016972T2 (de) 2005-05-25
EP2400362B1 (en) 2013-09-11

Similar Documents

Publication Publication Date Title
JP4689920B2 (ja) ディジタル・データの無許可アクセスを防止するための適応可能セキュリティ機構
EP1357455B1 (en) Digital rights management on device without interactive authentication
US7644446B2 (en) Encryption and data-protection for content on portable medium
US7765604B2 (en) Information processing method, information processing apparatus and recording medium
KR100236697B1 (ko) 소프트웨어 복사 처리 장치
US7231669B2 (en) Binding content to a portable storage device or the like in a digital rights management (DRM) system
JP5330648B2 (ja) ドメイン管理システム下でのデータの記録及び再生方法
US20060212363A1 (en) Rendering digital content in an encrypted rights-protected form
JP2003067256A (ja) データ保護方法
JP2006504176A (ja) コンテンツ操作を許可する方法及び装置
JP2000503154A (ja) デジタル所有権のアクセスと分配を制御するためのシステム
JP2012249035A (ja) 情報処理装置、および情報処理方法、並びにプログラム
EP1471405A1 (en) Method and device for protecting information against unauthorised use
JP2003509881A (ja) 記録された電子出版資料からのマスター鍵の復元方法
GB2404828A (en) Copyright management where encrypted content and corresponding key are in same file
JPH08186667A (ja) デジタル情報記録システム
JP2005507195A (ja) エンティティ・ロックされたセキュア・レジストリを用いて素材にアクセスする装置及び方法
JP2003188869A (ja) コンテンツ提供システム、コンテンツ提供方法およびプログラム
JP3843566B2 (ja) ユーザ認証装置および方法
KR20020076470A (ko) 온라인 및 일회성 기록 매체를 통한 디지털 컨텐츠유통에서의 보안 서비스 방법, 이를 위한 보안 서비스시스템 및 그 일회성 기록 매체
JP3773920B2 (ja) 利用者端末認証装置および利用者端末認証プログラム

Legal Events

Date Code Title Description
A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A711

Effective date: 20070622

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20071011

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20101022

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110124

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20110215

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20110217

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20140225

Year of fee payment: 3

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees
S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350