JP5189764B2 - 次世代メディアプレーヤ向けデュアルバーチャルマシン及びトラステッドプラットフォームモジュールアーキテクチャ - Google Patents

次世代メディアプレーヤ向けデュアルバーチャルマシン及びトラステッドプラットフォームモジュールアーキテクチャ Download PDF

Info

Publication number
JP5189764B2
JP5189764B2 JP2006517804A JP2006517804A JP5189764B2 JP 5189764 B2 JP5189764 B2 JP 5189764B2 JP 2006517804 A JP2006517804 A JP 2006517804A JP 2006517804 A JP2006517804 A JP 2006517804A JP 5189764 B2 JP5189764 B2 JP 5189764B2
Authority
JP
Japan
Prior art keywords
virtual machine
security
application
instruction set
media player
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 - Lifetime
Application number
JP2006517804A
Other languages
English (en)
Other versions
JP2007529044A5 (ja
JP2007529044A (ja
Inventor
ワトソン スコット
Original Assignee
ディズニー エンタープライゼス インコーポレイテッド
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 ディズニー エンタープライゼス インコーポレイテッド filed Critical ディズニー エンタープライゼス インコーポレイテッド
Publication of JP2007529044A publication Critical patent/JP2007529044A/ja
Publication of JP2007529044A5 publication Critical patent/JP2007529044A5/ja
Application granted granted Critical
Publication of JP5189764B2 publication Critical patent/JP5189764B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/14Protection against unauthorised use of memory or access to memory
    • 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/106Enforcing content protection by specific content processing
    • G06F21/1064Restricting content processing at operating system level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/52Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow
    • G06F21/53Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems during program execution, e.g. stack integrity ; Preventing unwanted data erasure; Buffer overflow by executing in a restricted environment, e.g. sandbox or secure virtual machine
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing (AREA)
  • Quality & Reliability (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Storage Device Security (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Description

本発明は、持ち運び可能なメディアプレーヤのコピー防止を含んでいる新しいセキュリティ方法及びニューシステムの開発に関するものである。
バーチャルマシン(VM)は、コンパイラコードと、プログラムの命令を実際に実行するマイクロプロセッサ(またはハードウェアプラットフォーム)との間のインターフェースとして働くソフトウェアを記述するのに使用される語である。コンパイラは、特定のプログラム言語で書かれた命令文を処理する特別なプログラムであり、それらの命令文をバイナリ機械言語、もしくはコンピュータの処理装置が使用する「コード」へと変換する。
Java(登録商標)プログラム言語及びランタイム環境のディベロッパであるサンマイクロシステムは、Javaバーチャルマシンの開発で有名である。Javaバーチャルマシンが、コンピュータプロセッサ(または「ハードウェアプラットフォーム」)用にコンパイルされたJavaバイナリコード(バイトコードと呼ばれる)を解釈し、その結果Javaプログラムの命令を実行することが出来る。
Javaは、各プラットフォーム毎に、プログラマが書き直したり再コンパイルする必要がなしに、どのプラットフォーム上でも実行出来るアプリケーションプログラムを作成できるように設計されている。1度Javaバーチャルマシンがプラットフォーム用に提供されると、どんなJavaプログラムもプラットフォーム上でランすることが出来る。Javaバーチャルマシンは特定の命令長と他のプラットフォームの特殊性を知っている為、これを可能にする。
バーチャルマシンは、抽象的な計算機である。実在の計算機と同様に、命令セットを有し、ランタイムでさまざまな記憶エリアを処理する。バーチャルマシンを用いてプログラム言語を実行することは非常に一般的なことであり、最もよく知られるバーチャルマシンはUCSDパスカルのP-Codeマシンである。
そうでなければ、バーチャルマシンは、オペレーティングシステムかそれともコンピュータを実行するプログラムより一般的に記述することが出来る。
DVDやCDプレーヤの様な次世代メディアプレーヤにおける改良されたコピー防止方法を開発することが長く望まれていた。
DVD用に使用されている1つの既知のコンテンツセキュリティシステムは、コンテンツスクランブルシステム(CSS)であり、そのDVD上のデータが暗号化されている。DVDプレーヤは40ビットの解読キーを用いてデータを解読する。しかしCSSの致命的な欠点は、そのキーとアルゴリズムがスタティックになることにある。その暗号化のアルゴリズムを逆解析すれば、現存のDVDディスクを再生する全ての解読キーを利用出来る。一度暗号が解かれると、セキュリティアルゴリズムやキーを更新する方法がない為、そのシステムはずっと安全性を損なう。DVDコンテンツから全てのセキュリティをワンクリックのみで解除することができる、消費者に利用可能なプログラムが現在多くある。
特にコンテンツフィデリティが増加するにつれて、コンテンツ所持者はこのようなセキュリティ解除すること再び起こるのを望まない。それ故に次世代のコンテンツセキュリティシステムは、この様に無防備であるべきではない。
ソフトウェアベンダーもまた、著作権侵害に直面するが、コンピュータの本質を考え、DVD向けのエンターテイメント産業において用いられるのとは異なるアプローチを用いている。歴史的に、パッケージソフトウェア問題(すなわちコンピュータゲーム)の製造業者は、手続き型セキュリティでそれらのコンテンツを保護している。それぞれのソフトウェアプロデューサは、コンテンツを保護するために、セキュリティコードを書いたり獲得する代わりに、プログラムを保護する非スタティックな方法がある。この手続き型セキュリティコードは、プログラム毎複雑な技術で変化するが、もっとも重要なことに、それぞれのプログラムが異なるセキュリティソフトウェアを実現するため、例えばDVDセキュリティを解除するような汎用の「セキュリティ除去」プログラムを記述すること出来ない。
もう1つ知られるコピー防止の方法は、ハードウェアの特定の命令を記述することである。この様な方法は、極めて限定的である点が問題となる。この方法によれば、さまざまな命令のセットを、それぞれのハードウェア構成に表現しなければならない。これはあまり実用的ではない。
従って、メディアプレーヤの様なハードウェアに、ハードウェア仕様ではない、コピー防止を提供する方法が望まれている。
従って本発明は、プラットフォーム型のコピー防止の処理のシステムと方法が、メディアプレーヤに提供される。本発明はデュアルバーチャルマシンアーキテクチャを、次世代メディアプレーヤに付与することによる解決を提案する。本発明は更に、バーチャルマシンアーキテクチャの所定の特徴とインターフェースで接続する、例えばトラステッドプラットフォームモジュール(TPM)の様なハードウェアベースのシステムに搭載された安全サブシステムの利用を提案する。
本発明によるデュアルバーチャルマシンアーキテクチャは、高レベルバーチャルマシンと低レベルバーチャルマシンから成る。低レベルバーチャルマシンはメディアの低レベルの解読とデコーディング機能をサポートする様に設計し、高レベルバーチャルマシンはアプリケーション層アクティビティを操作する様に設計する。従ってこのアーキテクチャは、アプリーケーションソフトウェアからセキュリティソフトウェアを区分する。
一般に、手続型セキュリティに最も適したバーチャルマシンは、実際のハードウェアCPUの命令セットによりよく似ている。すなわち、このバーチャルマシンはポインタをサポートするものであり、実行可能なコードとデータとので根本的な区別はない。従ってバーチャルマシンのこの第1のタイプは、「低レベルVM」又は「セキュリティVM」と呼ばれる。この低レベルバーチャルマシンは、不正防止ソフトウェア技術をサポートする、従来型のCPUに合わせて設計されている。
このようなバーチャルマシンに対する弱点は、プログラミングエラーや予期せぬランタイムコンディションが致命的になりやすい点にある。セキュリティシステムに対しては、不正防止の点は強いが、(もっと複雑であり、典型的に、より集中的ではないテスト範囲の)アプリケーションに対してはプログラミングエラー等の点は弱い。
アプリケーションに対して、一層多くの計算の詳細を陰で管理する「高レベルVM」は予測可能に確実に動作する信頼できるアプリケーションプログラムを開発することを可能にする。例えば、Javaは「ポインタ」又は明示的メモリ管理の概念(プログラミングエラーの共通ソースである)をサポートしないが、プログラムやプログラマが予期せぬランタイムコンディションを予測可能に処理することを助ける「例外処理」をサポートする。
この高レベル、すなわちアプリケーションレベルのバーチャルマシンは、十分な機能を有するように設計され、高性能なアプリケーションインターフェースを搭載する。
他のアプリケーションと共同して働くプラットフォームに依存しないセキュリティ機能を提供するためには、低レベルVMと高レベルVMの両方の利点を併合するのが理想的である。さらに、トラステッドプラットフォームモジュールは実行環境に安全に問合わせを行い検証を行なうことでハードウェアベースの信頼の基礎を提供する。
典型的な実施例において、本発明はDVDやCDプレーヤでの更新可能なセキュリティとコピー防止の目的の為に用いられる。しかし、この様なアーキテクチャはまた、ハードドライブに記録されるメディアの再生や、ソリッドステートのメモリや、ネットワークを介して伝えられる記録サポートしている。
以上によると、低レベルバーチャルマシンはメディアの低レベルの解読とデコーディング機能をサポートする様に設計する。次世代メディア(NGM)アプリケーションにおいて、この低レベルバーチャルマシンは更に、高レベルVMのブートストラップを実施する。高レベルVMはアプリケーション層のアクティビティ、例えばアドバンストユーザインターフェースや、種種雑多なIOや、ネットワークアクティビティを処理する。
本発明のデュアルVMアーキテクチャは全く新しいものである。このデュアルVMアーキテクチャは、従来からある上下関係で稼動する「スタックVM」関係とは違い、ピア関係を提供する。上下関係で稼動する1つのVMのスタック関係の例として、パワーPC(Macの様な)やウインドウズエミュレータ(x86エミュレータまたはVM)があり、それぞれがJavaVMを実行する。
更に、ハードウェアベースのトラステッドコンピュータモジュールとデュアルVMアーキテクチャの組み合わせは、全く新しいものである。
本発明は手続型セキュリティの使用をCDやDVDのようなメディアに拡張する。さらに、手続型セキュリティは宣言型のシステムよりはるかにフレキシブルな権利管理もコンテンツ所有者に可能とする。このフレキシビリティを利用して、CSSのような従来のスタティックセキュリティシステムにより提供されるシンプルコピープロテクション(CP)とは対照的に、本格的なデジタル権利管理(DRM)を実現することができる。
本発明の前述の目的、機能と利点は、本発明の特徴と利点を説明する典型的な実施例の以下の詳細記述を読むことで明白である。
図を簡単かつ明快にするために、図に示される構成部分を正確に描く必要がないことが認識されるべきである。例えば、いくつかの構成部分の特徴が、それぞれ明確に区別されるように示されている。更に考えられる適切な参考番号は、対応する構成部分を示すように図の中で繰り返される。

以下に本発明の実施例を詳細の説明を記載するが、これらの実施例は本発明の模範例にすぎず、種々の形態に具体化することができる。それ故、ここに記載する本発明の特定の構造及び機能の詳細は、本発明を限定するものでなく、単に本発明の特許請求範囲の基礎と考えるべきものであり、且つ本発明は任意の適切な詳細構造で種々に使用することができることを当業者に教えるための代表的な基礎と考えるべきのものである。以下、図面(図1及び図2)を参照して本発明を詳細に説明する。
本発明のシステム及び方法はメディアプレーヤ用のデュアルバーチャルマシンアーキテクチャを提供する。1つのVMはメディアの解読及びデコーディングのようなセキュリティ機能をサポートするように設計される。次世代メディアアプリケーションでは、低レベルVMがアプリケーションレベルVMのブートストラップに責任をもつものとすることができる。ハイレベル即ちアプリケーションレベルVMはアドバンストユーザインタフェース、種々のIO及びネットワークアクティビティのようなアプリケーション層アクティビティを処理する。
図1及び図2は本発明の代表的実施例のコンピュータ環境10におけるメディアアーキテクチャを示す。特に、図1には、メディアデータ又はコンテンツ18と、メディアプレーヤでのメディアの再生を許可するセキュリティコード12と、ブートコード16とを含むメディアソース(例えばDVD、光ディスク、ソリッドステートデバイス、又はネットワーク)が示されている。
本発明のメディア再生装置は少なくとも1つのバーチャルマシン(VM)を実行し得る中央処理ユニット(CPU)26を含む。代表的な実施例では、バーチャルチャルマシンはデュアルバーチャルマシンアーキテクチャであり、CPU26で実行される低レベルVM(例えばセキュリティVM)22と高レベルVM(例えばアプリケーションVM)24とを具える。VMで実行されるプログラムは使用規則を実行及び実施するのみならず、暗号化アルゴリズムを更新することができる。コンピュータ環境10は種々のプログラムの相互通信を許可する1組のルーティン又はプロトコルであ、アプリケーションプログラムインタフェース(API)40−44も含む。
1つの態様では、一方のVM(22又は24)が他方のVMを制御することができる。他の態様では、高レベル及び低レベルバーチャルマシンが非階層的にピアとして機能し、互いにメッセージを送ることができる。これらのメッセージは、一方のバーチャルマシンが他方のバーチャルマシンのルーティンをコールする「外部機能(foreign-function)コール」として、あるいは、通信チャンネルに沿って送られる通常のメッセージとして実行することができる。
例えば、アプリケーションVM(即ちハイレベルVM)24はメディアコンテンツ18の再生(従ってトランスパレントデコーディング)を開始するためにセキュリティVM(即ち低レベルVM)をコールする。
同様に、セキュリティVM22の内のコードがアプリケーションVM24をコールして、同期イベントまたはデコーディング問題(例えばセキュリティまたは許可問題)について知らせる。
例えば、メディアがオリジナルの光メディアからコピーされたものである状態では、セキュリティVM22はアプリケーションVM24に、再生を続けるためにはキーが必要であることを知らせる。これに応答して、アプリケーションVM24は、この映画をユーザインターフェース27で所定期間「借りる」ことができることをユーザに知らせるメッセージをアプリケーションレベル機能25によって表示する。ユーザがこれを選択する場合には、ユーザはスタジオサーバとトランザクションを実行してキーを含む(VMしか理解できない)「不透明メッセージ」を得る必要がある。アプリケーションVM24がキーを含むこのメッセージを認証のためにセキュリティVM22及びコピー防止アルゴリズム23に返送する。
メディア再生装置はさらに処理モジュール(例えばトラステッドプロセッシングモジュール又はTPM)32を含む。TPM仕様はトラステッドコンピューティンググループ(TCG)(http://www.trustedcomputinggroup.org) により生成されたトラステッドコンピューティングプラットフォームアライアンス(TCPA)仕様の1部である。TPM32はデクリプションキーを含み、セキュア暗号化計算を処理する。メディア再生装置はさらにAPI40−42を含み、バーチャルマシンで実行中の任意のプログラムがI/Oハードウェア及びTPMに問合わせを行うことを可能にする。これにより、VMで実行中のプログラムが使用規則のインテリジェントな選択を行うことが可能になる。さらに、CPU26に取り付けられたデコーディングモジュール34が符号化されたオーディオ/ビデオストリームを解凍するために設けられている。
一般に、トラステッドプラットフォームはエンティティが当該プラットフォーム内のソフトウェア又はコンピュータ環境10の状態を決定することを可能にするとともにデータを当該プラットフォーム内の特定のソフトウェア環境にシールすることを可能にする。エンティティはコンピュータ環境の状態が受け入れ可能か否かを推定し、当該プラットフォームとトランザクションを実行する。トランザクションがプラットフォームに蓄積すべき機密データを含む場合には、当該プラットフォーム内のコンピュータ環境の状態がエンティティに受け入れ可能でない限り、エンティティは該データを機密フォーマットで保持する。
これを可能とするために、トラステッドプラットフォームはエンティティがトラステッドプラットフォーム内のソフトウェア環境を推定可能にする情報を提供する。この情報は確実に測定され、エンティティに報告される。同時に、トラステッドプラットフォームは暗号化キーを暗号化し、キーの解読が可能となる前にソフトウェア環境を準備が整った状態にする手段を提供する。
「トラステッド測定ルート」が所定のプラットフォーム特性を測定し、測定データを測定ストアに記録し、最終結果をTPMに格納する(これは完全性メトリクスを格納し報告するための信頼の基礎を含む)。従って、TPMは全てのデクリプションキーの安全な格納位置を提供する。TPMは殆どの暗号化計算及び機能も処理する。
メディア再生装置はさらにセキュアな保護された入力及び出力28と、他のプレーヤとのネットワーク機能30、メモリデバイス(例えばRAM36及びROM38)を有する。
従って、代表的な実施例によれば、別個のバーチャルマシン(VM)がCPUを含む同一のコンピュータ環境内で実行される。本発明のアーキテクチャは2つのバーチャルマネージャ(言い換えると高レベル即ちアプリケーションVM及び低レベル即ちセキュリティVM)に区分し、アプリケーション及びセキュリティマネージャは標準APIを経て通信する。アプリケーションバーチャルマネージャの機能はセキュリティバーチャルマネージャ内で実行されるセキュリティコードにネットワークサービスを付与し、メディアアクセス機能とデコーディング機能がセキュリティVMにより調停されるため、コンテンツセキュリティはアプリケーション作成者には透過的である
計算の複雑度に関しては、セキュリティVMはシステムリソースに与える影響は小さく、簡単で軽量、低レベルで安全であり、且つこのVM用の適切なソフトウェアはセキュリティベンダにより提供され得る。アプリケーションVMは比較的大きなCPU及びメモリ影響を有するとともに、ユーザインターフェース及び入力/出力機能に対して責任がある。
本発明は通常のCD及びDVDプレーヤのようなメディアプレーヤへの使用に限定されず、PC、あるいは、持ち運び可能なメディアを再生する機能を含むもっとも一般的なハードウエアシステムを実行するものに拡張することができる。
本発明の好適な実施例としての以上の説明は、例示と説明のために示される。本発明の他の目的、機能、利点は本発明の記載を読むことで明らかとなる。本開示網羅的なものであること又は、本発明を正確に公開された形式に限定することを意図しない。多くの修正と変更が前記記載を踏まえて可能になる。
代表的な実施例によるコンピュータ環境におけるメディア再生アーキテクチャの図である。 代表的な実施例による低レベルバーチャルマシンと高レベルバーチャルマシンのインタラクションと機能性を示すブロック図である。

Claims (12)

  1. ディアプレーヤのためのセキュリティ暗号解読およびオーディオ/ビデオのデコーディング機能を実行するように構成されるセキュリティバーチャルマシンと、
    前記メディアプレーヤのためのアプリケーションレベル機能を実行し、ユーザーインターフェースを提供するように構成されるアプリケーションバーチャルマシンと、
    前記セキュリティバーチャルマシンおよび前記アプリケーションバーチャルマシンを実行するように構成される処理ユニットと、
    を具え、
    前記セキュリティバーチャルマシンは、前記セキュリティ暗号解読および前記デコーディング機能を実行するための命令セットを使用するようにさらに構成され、
    前記アプリケーションバーチャルマシンは、前記アプリケーションレベル機能を実行するための命令セットを使用するようにさらに構成され、
    前記セキュリティ暗号解読および前記デコーディング機能を実行するための前記命令セットは、前記アプリケーションレベル機能を実行するための命令セットとは異なる、
    ことを特徴とするメディアプレーヤ。
  2. 前記セキュリティバーチャルマシンは第1の命令セットをサポートするようにさらに構成され、
    前記アプリケーションバーチャルマシンは第2の命令セットをサポートするようにさらに構成され、
    前記第1の命令セットは前記セキュリティバーチャルマシン用であり、
    前記第2の命令セットは前記アプリケーションバーチャルマシン用である、
    ことを特徴とする請求項1に記載のメディアプレーヤ。
  3. アプリケーションプログラムインタフェース(API)をさらに具え、前記APIを経て、前記セキュリティバーチャルマシンと前記アプリケーションバーチャルマシンとが互いに通信可能であることを特徴とする請求項1に記載のメディアプレーヤ。
  4. 前記メディアは暗号解読をするためのセキュリティコードを含み、
    前記アプリケーションバーチャルマシンは前記セキュリティコードを前記セキュリティバーチャルマシンに送達する、
    ことを特徴とする請求項1に記載のメディアプレーヤ。
  5. 前記セキュリティバーチャルマシンは、コピー防止アルゴリズムを処理することを特徴とする請求項1に記載のメディアプレーヤ。
  6. 前記セキュリティバーチャルマシンは、前記アプリケーションバーチャルマシンより計複雑ではないことを特徴とする請求項1に記載のメディアプレーヤ。
  7. 理ユニット上で動作しているセキュリティバーチャルマシンを使用して、前記メディアプレーヤのためのセキュリティ暗号解読およびオーディオ/ビデオのデコーディング機能を実行するステップと、
    前記処理ユニット上で動作しているアプリケーションバーチャルマシンを使用して、前記メディアプレーヤのためのアプリケーションレベル機能を実行するステップと、
    を具え、
    前記アプリケーションバーチャルマシンはユーザーインターフェースを提供し、
    前記セキュリティバーチャルマシンは、前記セキュリティ暗号解読および前記デコーディング機能を実行するための命令セットを使用するようにさらに構成され、
    前記アプリケーションバーチャルマシンは、前記アプリケーションレベル機能を実行するための命令セットを使用するようにさらに構成され、
    前記セキュリティ暗号解読および前記デコーディング機能を実行するための前記命令セットは、前記アプリケーションレベル機能を実行するための命令セットとは異なる、
    ことを特徴とする方法。
  8. 前記セキュリティバーチャルマシンを使用して、第1の命令セットをサポートするステップと、
    前記アプリケーションバーチャルマシンを使用して、第2の命令セットをサポートするステップと、
    をさらに具え、
    前記第1の命令セットは前記セキュリティバーチャルマシン用であり、
    前記第2の命令セットは前記アプリケーションバーチャルマシン用である、
    ことを特徴とする請求項に記載の方法。
  9. アプリケーションプログラムインタフェース(API)を経て、前記セキュリティバーチャルマシンおよび前記アプリケーションバーチャルマシンを互いに通信可能とするステップをさらに具えることを特徴とする請求項に記載の方法。
  10. 前記メディアは暗号解読をするためのセキュリティコードを含み、
    前記セキュリティコードを、前記アプリケーションバーチャルマシンによって前記メディアから前記セキュリティバーチャルマシンに送達するステップをさらに具える、
    ことを特徴とする請求項に記載の方法。
  11. 前記セキュリティバーチャルマシンは、コピー防止アルゴリズムを処理することを特徴とする請求項に記載の方法。
  12. 前記セキュリティバーチャルマシンは、前記アプリケーションバーチャルマシンより計複雑ではないことを特徴とする請求項に記載の方法。
JP2006517804A 2003-06-27 2004-06-28 次世代メディアプレーヤ向けデュアルバーチャルマシン及びトラステッドプラットフォームモジュールアーキテクチャ Expired - Lifetime JP5189764B2 (ja)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US48103403P 2003-06-27 2003-06-27
US60/481,034 2003-06-27
US48106603P 2003-07-07 2003-07-07
US60/481,066 2003-07-07
US49307203P 2003-08-05 2003-08-05
US60/493,072 2003-08-05
PCT/US2004/021048 WO2005001666A2 (en) 2003-06-27 2004-06-28 Dual virtual machine and trusted platform module architecture for next generation media players

Publications (3)

Publication Number Publication Date
JP2007529044A JP2007529044A (ja) 2007-10-18
JP2007529044A5 JP2007529044A5 (ja) 2012-12-20
JP5189764B2 true JP5189764B2 (ja) 2013-04-24

Family

ID=33556423

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2006517804A Expired - Lifetime JP5189764B2 (ja) 2003-06-27 2004-06-28 次世代メディアプレーヤ向けデュアルバーチャルマシン及びトラステッドプラットフォームモジュールアーキテクチャ

Country Status (7)

Country Link
US (1) US20050033972A1 (ja)
EP (1) EP1644802B1 (ja)
JP (1) JP5189764B2 (ja)
KR (1) KR100950007B1 (ja)
AU (1) AU2004252921B2 (ja)
CA (1) CA2530441C (ja)
WO (1) WO2005001666A2 (ja)

Families Citing this family (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7469346B2 (en) * 2003-06-27 2008-12-23 Disney Enterprises, Inc. Dual virtual machine architecture for media devices
CN101213560B (zh) * 2005-06-28 2011-06-01 松下电器产业株式会社 验证方法、信息处理装置及集成电路
CN100589112C (zh) 2005-07-14 2010-02-10 松下电器产业株式会社 验证方法、信息处理装置、集成电路
US8046837B2 (en) 2005-08-26 2011-10-25 Sony Corporation Information processing device, information recording medium, information processing method, and computer program
US7577809B2 (en) * 2005-11-02 2009-08-18 Promethean Storage Llc Content control systems and methods
WO2007092651A2 (en) * 2006-01-04 2007-08-16 Nytor, Inc. Trusted host platform
US7571368B1 (en) 2006-01-26 2009-08-04 Promethean Storage Llc Digital content protection systems and methods
US8243922B1 (en) * 2006-02-24 2012-08-14 Hitachi Global Storage Technologies Netherlands B.V. Digital content modification for content protection
US7996899B1 (en) 2006-02-24 2011-08-09 Hitachi Global Storage Technologies Netherlands B.V. Communication systems and methods for digital content modification and protection
US7921286B2 (en) * 2007-11-14 2011-04-05 Microsoft Corporation Computer initialization for secure kernel
US8266707B2 (en) * 2008-02-28 2012-09-11 Intel Corporation Tamper resistant method, apparatus and system for secure portability of digital rights management-protected content
US8266448B2 (en) 2008-12-09 2012-09-11 Nvidia Corporation Apparatus, system, method, and computer program product for generating and securing a program capable of being executed utilizing a processor to decrypt content
US8868925B2 (en) * 2008-12-09 2014-10-21 Nvidia Corporation Method and apparatus for the secure processing of confidential content within a virtual machine of a processor
US8135964B2 (en) 2008-12-09 2012-03-13 Nvidia Corporation Apparatus, system, method, and computer program product for executing a program utilizing a processor to generate keys for decrypting content
US8213618B2 (en) * 2008-12-30 2012-07-03 Intel Corporation Protecting content on client platforms
US8938674B2 (en) * 2009-04-20 2015-01-20 Adobe Systems Incorporated Managing media player sound output
US8402280B1 (en) 2009-10-15 2013-03-19 Nvidia Corporation System, method, and computer program product for buffering in association with audio/video digital rights management (DRM) processing
JP4905566B2 (ja) * 2010-02-22 2012-03-28 ソニー株式会社 情報処理装置、情報記録媒体、および情報処理方法、並びにコンピュータ・プログラム
US8589702B2 (en) * 2010-05-28 2013-11-19 Dell Products, Lp System and method for pre-boot authentication of a secure client hosted virtualization in an information handling system
JP4905587B2 (ja) * 2010-12-28 2012-03-28 ソニー株式会社 情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
GB201105222D0 (en) * 2011-03-29 2011-05-11 Becrypt Ltd Dual environment computing system and method and system for providing a dual environment computing system
DE102011018431A1 (de) 2011-04-21 2012-10-25 Giesecke & Devrient Gmbh Verfahren zur Anzeige von Informationen auf einer Anzeigeeinrichtung eines Endgeräts
DE102011115135A1 (de) * 2011-10-07 2013-04-11 Giesecke & Devrient Gmbh Mikroprozessorsystem mit gesicherter Laufzeitumgebung
US10797955B2 (en) * 2016-01-08 2020-10-06 Nec Corporation System and method for operating a network
US20220174485A1 (en) * 2020-11-30 2022-06-02 At&T Intellectual Property I, L.P. Network application programming interface service for application guidance and control

Family Cites Families (63)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4333152A (en) * 1979-02-05 1982-06-01 Best Robert M TV Movies that talk back
US4792895A (en) * 1984-07-30 1988-12-20 International Business Machines Corp. Instruction processing in higher level virtual machines by a real machine
JPS62159239A (ja) * 1985-12-30 1987-07-15 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 仮想マシンの編集システム
JPH0327539A (ja) * 1989-06-25 1991-02-05 Sony Corp 電荷転送装置
US5522075A (en) * 1991-06-28 1996-05-28 Digital Equipment Corporation Protection ring extension for computers having distinct virtual machine monitor and virtual machine address spaces
EP0652524A4 (en) * 1993-05-21 1996-01-03 Sega Enterprises Kk IMAGE PROCESSING METHOD AND APPARATUS.
US5699123A (en) * 1993-10-20 1997-12-16 Victor Company Of Japan, Ltd. Television receiver with an adjustable frame size
CA2212574C (en) * 1995-02-13 2010-02-02 Electronic Publishing Resources, Inc. Systems and methods for secure transaction management and electronic rights protection
JP3472659B2 (ja) * 1995-02-20 2003-12-02 株式会社日立製作所 映像供給方法および映像供給システム
US5600726A (en) * 1995-04-07 1997-02-04 Gemini Systems, L.L.C. Method for creating specific purpose rule-based n-bit virtual machines
US5606374A (en) * 1995-05-31 1997-02-25 International Business Machines Corporation Video receiver display of menu overlaying video
US5548340A (en) * 1995-05-31 1996-08-20 International Business Machines Corporation Intelligent television receivers combinations including video displays, and methods for diversion of television viewers by visual image modification
US5880739A (en) * 1995-06-06 1999-03-09 Compaq Computer Corporation Blitting of images using instructions
US5708845A (en) * 1995-09-29 1998-01-13 Wistendahl; Douglass A. System for mapping hot spots in media content for interactive digital media program
KR100211056B1 (ko) * 1995-12-23 1999-07-15 이계철 다수개의 비디오에 대한 윈도우 제어방법
WO1997025798A1 (en) * 1996-01-11 1997-07-17 Mrj, Inc. System for controlling access and distribution of digital property
US5929849A (en) * 1996-05-02 1999-07-27 Phoenix Technologies, Ltd. Integration of dynamic universal resource locators with television presentations
US6570587B1 (en) * 1996-07-26 2003-05-27 Veon Ltd. System and method and linking information to a video
US5774666A (en) * 1996-10-18 1998-06-30 Silicon Graphics, Inc. System and method for displaying uniform network resource locators embedded in time-based medium
US20020054049A1 (en) * 1996-11-12 2002-05-09 Kenji Toyoda Image playback apparatus, image recording apparatus, and methods thereof
JPH11327520A (ja) * 1998-05-13 1999-11-26 Sony Corp 表示制御方法及び表示制御装置
AU758390B2 (en) * 1998-07-27 2003-03-20 Webtv Networks, Inc. Remote computer access
JP2000059857A (ja) * 1998-08-11 2000-02-25 Casio Comput Co Ltd 画像通信装置、画像通信方法及び記憶媒体
US7051005B1 (en) * 1999-03-27 2006-05-23 Microsoft Corporation Method for obtaining a black box for performing decryption and encryption functions in a digital rights management (DRM) system
US6407779B1 (en) * 1999-03-29 2002-06-18 Zilog, Inc. Method and apparatus for an intuitive universal remote control system
US6373500B1 (en) * 1999-08-19 2002-04-16 Micron Technology, Inc. Method for implementing picture-in-picture function for multiple computers
US7120251B1 (en) * 1999-08-20 2006-10-10 Matsushita Electric Industrial Co., Ltd. Data player, digital contents player, playback system, data embedding apparatus, and embedded data detection apparatus
US6772340B1 (en) * 2000-01-14 2004-08-03 Microsoft Corporation Digital rights management system operating on computing device and having black box tied to computing device
US6868440B1 (en) * 2000-02-04 2005-03-15 Microsoft Corporation Multi-level skimming of multimedia content using playlists
US20020060750A1 (en) * 2000-03-29 2002-05-23 Istvan Anthony F. Single-button remote access to a synthetic channel page of specialized content
EP1168168A3 (en) * 2000-06-20 2005-04-13 Interuniversitair Microelektronica Centrum Vzw Virtual hardware machine methods and devices
US6493038B1 (en) * 2000-06-21 2002-12-10 Koninklijke Philips Electronics N.V. Multi-window pip television with the ability to watch two sources of video while scanning an electronic program guide
JP4269501B2 (ja) * 2000-09-07 2009-05-27 ソニー株式会社 情報記録装置、情報再生装置、情報記録方法、情報再生方法、および情報記録媒体、並びにプログラム提供媒体
KR100380345B1 (ko) * 2000-09-20 2003-04-11 삼성전자주식회사 텔레비전의 오에스디 구성 방법 및 전자프로그램 가이드 구성방법
US20020097280A1 (en) * 2001-01-25 2002-07-25 Bertram Loper Apparatus and method of printing on a curved surface with an ink jet printer
US7308717B2 (en) * 2001-02-23 2007-12-11 International Business Machines Corporation System and method for supporting digital rights management in an enhanced Java™ 2 runtime environment
US6868449B1 (en) * 2001-03-16 2005-03-15 Veritas Operating Corporation Model for cost optimization and QoS tuning in hosted computing environments
US7043726B2 (en) * 2001-03-20 2006-05-09 Hewlett-Packard Development Company, L.P. Binding of processes in network systems
US20020138851A1 (en) * 2001-03-23 2002-09-26 Koninklijke Philips Electronics N.V. Methods and apparatus for simultaneously viewing multiple television programs
US7987510B2 (en) * 2001-03-28 2011-07-26 Rovi Solutions Corporation Self-protecting digital content
US20020141582A1 (en) * 2001-03-28 2002-10-03 Kocher Paul C. Content security layer providing long-term renewable security
US20020162117A1 (en) * 2001-04-26 2002-10-31 Martin Pearson System and method for broadcast-synchronized interactive content interrelated to broadcast content
SE520531C2 (sv) * 2001-05-11 2003-07-22 Ericsson Telefon Ab L M Multimediapresentation
US6922774B2 (en) * 2001-05-14 2005-07-26 The United States Of America As Represented By The National Security Agency Device for and method of secure computing using virtual machines
US20020184520A1 (en) * 2001-05-30 2002-12-05 Bush William R. Method and apparatus for a secure virtual machine
GB2378013A (en) * 2001-07-27 2003-01-29 Hewlett Packard Co Trusted computer platform audit system
US20030046557A1 (en) * 2001-09-06 2003-03-06 Miller Keith F. Multipurpose networked data communications system and distributed user control interface therefor
US20030170011A1 (en) * 2001-09-24 2003-09-11 Masato Otsuka System and method for seamless navigation between local and external documents in an optical disc player
US20040047588A1 (en) * 2002-03-27 2004-03-11 Tomoyuki Okada Package medium, reproduction apparatus, and reproduction method
EP1492265A4 (en) * 2002-03-29 2005-04-13 Matsushita Electric Ind Co Ltd DEVICE, METHOD AND PROGRAM FOR CONTENT PROCESSING AND CONTENT ACCUMULATION MEDIUM
JP3559024B2 (ja) * 2002-04-04 2004-08-25 マイクロソフト コーポレイション ゲームプログラムおよびゲーム装置
US20030196100A1 (en) * 2002-04-15 2003-10-16 Grawrock David W. Protection against memory attacks following reset
US7027101B1 (en) * 2002-05-13 2006-04-11 Microsoft Corporation Selectively overlaying a user interface atop a video signal
US7210144B2 (en) * 2002-08-02 2007-04-24 Microsoft Corporation Method for monitoring and emulating privileged instructions of programs in a virtual machine
JP4477501B2 (ja) * 2002-10-04 2010-06-09 エルジー エレクトロニクス インコーポレイティド グラフィックデータの再生を管理するためのデータ構造を有する記録媒体、記録及び再生方法並びに装置
US20040175218A1 (en) * 2003-03-05 2004-09-09 Katzer Lawrence John Method and apparatus for printing on flat and non-flat objects
US7136945B2 (en) * 2003-03-31 2006-11-14 Sony Corporation Method and apparatus for extending protected content access with peer to peer applications
GB2418506A (en) * 2003-06-02 2006-03-29 Disney Entpr Inc System and method of video player commerce
CA2527083C (en) * 2003-06-02 2011-04-26 Disney Enterprises, Inc. System and method of programmatic window control for consumer video players
AU2004246672B2 (en) * 2003-06-02 2009-02-26 Disney Enterprises, Inc. System and method of interactive video playback
US7380136B2 (en) * 2003-06-25 2008-05-27 Intel Corp. Methods and apparatus for secure collection and display of user interface information in a pre-boot environment
WO2005008385A2 (en) * 2003-07-07 2005-01-27 Cryptography Research, Inc. Reprogrammable security for controlling piracy and enabling interactive content
US7401230B2 (en) * 2004-03-31 2008-07-15 Intel Corporation Secure virtual machine monitor to tear down a secure execution environment

Also Published As

Publication number Publication date
WO2005001666A3 (en) 2005-06-23
CA2530441C (en) 2009-08-25
EP1644802A2 (en) 2006-04-12
AU2004252921B2 (en) 2009-07-16
EP1644802B1 (en) 2016-11-23
KR20060039405A (ko) 2006-05-08
CA2530441A1 (en) 2005-01-06
US20050033972A1 (en) 2005-02-10
WO2005001666A2 (en) 2005-01-06
KR100950007B1 (ko) 2010-03-29
EP1644802A4 (en) 2011-03-16
JP2007529044A (ja) 2007-10-18
AU2004252921A1 (en) 2005-01-06

Similar Documents

Publication Publication Date Title
JP5189764B2 (ja) 次世代メディアプレーヤ向けデュアルバーチャルマシン及びトラステッドプラットフォームモジュールアーキテクチャ
US9003539B2 (en) Multi virtual machine architecture for media devices
JP2007529044A5 (ja)
KR100611687B1 (ko) 멀티-토큰 실 및 실 해제
JP5904505B2 (ja) 仮想ディスクを暗号化及び復号するためのコンピュータ可読ストレージ媒体
KR100737628B1 (ko) 고정형 토큰 및 이동형 토큰 모두를 이용한 어테스테이션
US6006190A (en) Computer implemented method and a computer system for enforcing software licenses
US7827550B2 (en) Method and system for measuring a program using a measurement agent
JP5443599B2 (ja) セキュアなアプリケーションの実行を提供する方法および装置
US20130007889A1 (en) Trusted computing source code escrow and optimization
JP7256861B2 (ja) セキュアコンピュータシステム
JP2003173215A (ja) 情報処理装置、プログラムロード方法、記録媒体、プログラム更新方法及び回路素子
WO2015084144A1 (en) A system and method to secure virtual machine images in cloud computing
KR101604892B1 (ko) 안드로이드 기반 어플리케이션의 부정사용 방지 방법 및 장치
JP6068325B2 (ja) セキュアなアプリケーションの実行を提供するプロセッサ
WO2006011888A1 (en) Dual virtual machine architecture for media devices
CN100451983C (zh) 下一代媒体播放器的双虚拟机以及信任平台
MXPA06000204A (en) Dual virtual machine and trusted platform module architecture for next generation media players
Abela et al. Runtime Verification for Trustworthy Computing
JP2019109910A (ja) プロセッサ
JP6480403B2 (ja) 装置
JP2015122099A (ja) プロセッサ、プログラム、システム及び方法
Bugiel Using TCG/DRTM for application-specific credential storage and usage
Fleming Data Tethers: Preventing Information Leakage by Enforcing Environmental Data Access Policies
vor starken Angreifern et al. Trusted Systems in Untrusted Environments: Protecting against Strong Attackers

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070726

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20070726

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20081208

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090216

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100803

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101104

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20101130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20110330

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20110404

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20110428

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20110517

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20110517

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20121107

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20130125

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

Free format text: PAYMENT UNTIL: 20160201

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5189764

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

EXPY Cancellation because of completion of term