JP2008539503A - ソフトウェアのライセンス供与/商用デジタル配信ポリシーのための補足的な信頼モデル - Google Patents

ソフトウェアのライセンス供与/商用デジタル配信ポリシーのための補足的な信頼モデル Download PDF

Info

Publication number
JP2008539503A
JP2008539503A JP2008508818A JP2008508818A JP2008539503A JP 2008539503 A JP2008539503 A JP 2008539503A JP 2008508818 A JP2008508818 A JP 2008508818A JP 2008508818 A JP2008508818 A JP 2008508818A JP 2008539503 A JP2008539503 A JP 2008539503A
Authority
JP
Japan
Prior art keywords
license
product
licenses
computer
application
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.)
Pending
Application number
JP2008508818A
Other languages
English (en)
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 JP2008539503A publication Critical patent/JP2008539503A/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/12Applying verification of the received information
    • H04L63/126Applying verification of the received information the source of the received data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • 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/105Arrangements for software license management or administration, e.g. for managing licenses at corporate 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/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/1063Personalisation
    • 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/107License processing; Key processing
    • G06F21/1073Conversion
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0823Network architectures or network communication protocols for network security for authentication of entities using certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2105Dual mode as a secondary aspect
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2141Access rights, e.g. capability lists, access control lists, access tables, access matrices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2145Inheriting rights or properties, e.g., propagation of permissions or restrictions within a hierarchy
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/101Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying security measures for digital rights management

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computing Systems (AREA)
  • Multimedia (AREA)
  • Technology Law (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Storage Device Security (AREA)

Abstract

アプリケーションレベル製品ポリシー定義ライセンス、および各ライセンス供与可能な製品に対応するライセンス供与可能製品ポリシー定義ライセンスを含む、複数のライセンス供与可能な製品を含むアプリケーションのための柔軟な使用ライセンス供与システムが提供される。柔軟な使用ライセンスは、使用ライセンスを様々の環境条件に対して検証するための権利アカウント証明書と、使用ライセンス全体を伝送することなしにライセンス供与者において使用ライセンスを検証するための外部検証コンポーネントとをさらに含む。

Description

本発明は、それによりデジタルライセンスに従ってのみデジタルコンテンツへのアクセスが提供される権利管理(RM)システムに関する。より詳細には、本発明は、幅広い種類の使用環境における最大限の使用のために、幅広い種類の配布経路を介した幅広い種類のソフトウェア製品のライセンス供与に適用できる柔軟なライセンス供与アーキテクチャに関する。
ソフトウェアの著作権侵害は全世界で10億ドル産業にまで増大した。この大きくなり続けている問題に対する1つの解決策は、ソフトウェア製品のアクティベーションの使用である。通常、ソフトウェアがユーザのコンピュータ上で実行されることが可能となる前に、まずライセンスが取得されなければならない。ユーザは、ユーザのコンピュータの何らかの種類の識別子を、ユーザがどのようにソフトウェアを使用したいと望んでいるかの何らかの指示子と共に集中的なライセンス供与者に電子的に送ることができる。供与者は、要求された特定の使用を許可するライセンスで応答する。次に、ソフトウェアは、供与者によって与えられたライセンスに応じてユーザによって操作されることができる。
しかし、現在のソフトウェアアクティベーションによる解決方法に関連した問題が存在する。第1に、現在のソフトウェアライセンスは企業毎に異なる独自仕様の形式で表される傾向がある。一部のより極端な事例では、ライセンスの形式は同じ企業内で製品毎に異なる場合がある。
さらに、販売されている多くのソフトウェアアプリケーションに関して、製品定義は平坦な構造ではなく、むしろ基礎的なアプリケーションの下に枝分かれしたより多くのまたはより少ない機能を特色とする様々なバージョンのアプリケーションを有する樹状構造である。これらのバージョンは、親アプリケーションの同一のソースコードを共有することができるが、異なる価格を設定されることができ、異なるユーザを対象とすることができる。典型的なライセンスは均一であり、したがってこれらの現在の製品定義の複雑なライセンス供与の要求を表すことはできない。
さらに、製品定義の複雑性に適合するためにソフトウェアライセンスの複雑性が増すにつれて、ライセンス供与者による外部からのライセンスの検証は困難なプロセスになる可能性がある。大きなデジタル署名されたライセンスをユーザとライセンス供与者の間で相互に送信することは、帯域幅の消費が激しい可能性がある。低速なインターネット接続を使用するユーザに関しては、これは非常に時間を要するタスクである可能性がある。
したがって、必要とされているのは、オンラインでの検証に適したままでありながら現在のソフトウェアアプリケーションの複雑なライセンス供与の要求を表すことができる標準的なライセンスである。
アプリケーションレベル製品ポリシー定義ライセンスと、各ライセンス供与可能な製品に対応するライセンス供与可能製品ポリシー定義ライセンスとを含む、複数のライセンス供与可能な製品を含むアプリケーションのための柔軟な使用ライセンス供与システムが提供される。柔軟な使用ライセンスは、種々の環境条件に対して使用ライセンスを検証するための権利アカウント証明書と、使用ライセンス全体を伝送することなしにライセンス供与者において使用ライセンスを検証するための外部検証コンポーネントとをさらに含む。
加えて、複数の使用ライセンスを一緒に集約し、集約ポリシーと、各ライセンスに関連する優先レベルとに基づいて結果として得られる使用権利を決定する方法が提供される。
図1および以下の考察は、その環境内で本発明が実施され得る好適なコンピューティング環境の簡潔で全体的な説明を提供するように意図される。しかし、ハンドヘルド、ポータブル、およびその他のあらゆる種類のコンピューティングデバイスが、本発明に関連した使用を考慮されることを理解されたい。汎用コンピュータが以下で説明されるが、これは単なる一例に過ぎない。したがって、本発明は、その環境内に非常に少ないまたは最小のクライアント資源が含まれるネットワーク化されたホスト型サービスの環境、例えば、その環境内でクライアントデバイスが単にブラウザ、またはワールドワイドウェブへのインターフェースとして機能するネットワーク化された環境において実施されることもできる。
必須ではないが、本発明は、開発者による使用のためにアプリケーション・プログラミング・インターフェース(API)を介して実施されることができる、および/またはクライアントワークステーション、サーバ、またはその他のデバイスなどの1つまたは複数のコンピュータによって実行されるプログラムモジュールなどのコンピュータが実行可能な命令との一般的な関連で説明されるネットワーク・ブラウジング・ソフトウェアに含まれることができる。概して、プログラムモジュールは、特定のタスクを実行するか、または特定の抽象データ型を実装するルーチン、プログラム、オブジェクト、コンポーネント、データ構造などを含む。通常、プログラムモジュールの機能は、種々の実施形態において要求に応じて組み合わせられるまたは分散されることができる。さらに、当業者は、本発明がその他のコンピュータシステム構成を用いて実施され得ることを理解するであろう。本発明での使用に好適なその他のよく知られているコンピューティングシステム、環境、および/または構成は、パーソナルコンピュータ(PC)、現金自動預け払い機、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサに基づくシステム、プログラム可能な家庭用電化製品、ネットワークPC、ミニコンピュータ、メインフレームコンピュータなどを含むがこれらに限定されない。本発明は、通信ネットワークまたはその他のデータ伝送媒体を介して接続されたリモートの処理装置によってタスクが実行される分散コンピューティング環境において実施されることもできる。分散コンピューティング環境では、プログラムモジュールは、メモリ記憶装置を含むローカルのおよびリモートのコンピュータ記憶媒体のどちらにも配置されることができる。
したがって、図1は、その環境内で本発明が実施され得る好適なコンピューティングシステム環境100の例を示すが、上で明らかにされたように、コンピューティングシステム環境100は好適なコンピューティング環境の単なる一例に過ぎず、本発明の使用または機能の範囲についていかなる限定を示唆するようにも意図されていない。同様に、コンピューティング環境100は、例示的な動作環境100に示されたコンポーネントの任意の1つまたは組合せに関するいかなる依存性または要件を有するようにも解釈されるべきではない。
図1を参照すると、本発明を実施するための例示的なシステムは、コンピュータ111の形態の汎用コンピューティングデバイスを含む。コンピュータ111のコンポーネントは、処理ユニット120と、システムメモリ130と、システムメモリの処理ユニット120への結合を含め種々のシステムコンポーネントを結合するシステムバス121とを含むことができるがこれらに限定されない。システムバス121は、各種のバスアーキテクチャのいずれかを使用したメモリバスまたはメモリコントローラ、周辺バス、およびローカルバスを含む数種のバス構造のいずれであってもよい。限定ではなく例として、かかるアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、拡張ISA(EISA)バス、ビデオ電子装置規格化協会(VESA)ローカルバス、および周辺装置相互接続(PCI)バス(Mezzanineバスとしても知られる)を含む。
通常、コンピュータ111は、様々なコンピュータ可読媒体を含む。コンピュータ可読媒体は、コンピュータ111によってアクセスされることができ、揮発性および不揮発性両方の媒体、リムーバブルおよび非リムーバブル媒体を含む任意の入手可能な媒体であってよい。限定でなく例として、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含むことができる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータなどの情報を記憶するための任意の方法または技術で実現された揮発性および不揮発性両方の媒体、リムーバブルおよび非リムーバブル媒体を含む。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリ、もしくはその他のメモリ技術、CDROM、デジタルバーサタイルディスク(DVD)、もしくはその他の光ディスク記憶装置、磁気カセット、磁気テープ、磁気ディスク記憶装置、もしくはその他の磁気記憶装置、または所望の情報を記憶するために使用されることができ、コンピュータ111によってアクセスされることができる任意のその他の媒体を含むがこれらに限定されない。通常、通信媒体は、搬送波などの変調されたデータ信号またはその他の搬送機構でコンピュータ可読命令、データ構造、プログラムモジュール、またはその他のデータを具現化し、任意の情報配信媒体を含む。用語「変調されたデータ信号」は、その信号の特徴のうちの1つまたは複数を、信号中に情報を符号化するような方法で設定または変更させた信号を意味する。限定ではなく例として、通信媒体は、有線ネットワークまたは直接有線接続などの有線媒体、ならびに音響、RF、赤外線、およびその他の無線媒体などの無線媒体を含む。上記の媒体のうちの任意のものの組合せもコンピュータ可読媒体の範囲に含まれるべきである。
システムメモリ130は、読み出し専用メモリ(ROM)131およびランダムアクセスメモリ(RAM)132などの揮発性および/または不揮発性メモリの形態のコンピュータ記憶媒体を含む。起動中などにコンピュータ111内の要素間で情報を転送することに役立つ基礎的なルーチンを含む基本入出力システム133(BIOS)は、概してROM131に記憶される。通常、RAM132は、処理ユニット120によって直ちにアクセスできる、および/または処理ユニット120によって現在使用されているデータおよび/またはプログラムモジュールを含む。限定ではなく例として、図1は、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137を示す。
コンピュータ111は、その他のリムーバブル/非リムーバブルの揮発性/不揮発性コンピュータ記憶媒体を含んでもよい。単なる例として、図1は、非リムーバブル不揮発性磁気媒体からの読み出し、または当該媒体に対する書き込みを行うハードディスクドライブ141と、リムーバブル不揮発性磁気ディスク152からの読み出し、または当該磁気ディスクに対する書き込みを行う磁気ディスクドライブ151と、CDROMまたはその他の光媒体などのリムーバブル不揮発性光ディスク156からの読み出し、または当該光ディスクに対する書き込みを行う光ディスクドライブ155とを示す。例示的な動作環境で使用されることができるその他のリムーバブル/非リムーバブルの揮発性/不揮発性コンピュータ記憶媒体は、磁気テープカセット、フラッシュメモリカード、デジタルバーサタイルディスク、デジタルビデオテープ、固体RAM、固体ROMなどを含むがこれらに限定されない。ハードディスクドライブ141は、概してインターフェース140などの非リムーバブルメモリインターフェースを介してシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は、概してインターフェース150などのリムーバブルメモリインターフェースによってシステムバス121に接続される。
上で考察され図1に示されたドライブおよびそれらのドライブに関連するコンピュータ記憶媒体は、コンピュータ111のためのコンピュータ可読命令、データ構造、プログラムモジュール、およびその他のデータの記憶を行う。図1において、例えばハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147を記憶するように示されている。これらのコンポーネントは、オペレーティングシステム134、アプリケーションプログラム135、その他のプログラムモジュール136、およびプログラムデータ137と同じであるか、または異なるかのいずれであってもよいことに留意されたい。オペレーティングシステム144、アプリケーションプログラム145、その他のプログラムモジュール146、およびプログラムデータ147は、少なくともそれらが別のコピーであることを示すためにここでは異なる番号が与えられる。ユーザは、キーボード162、および一般的にマウス、トラックボール、またはタッチパッドと呼ばれるポインティングデバイス161などの入力デバイスを介してコンピュータ111に命令および情報を入力することができる。その他の入力デバイス(図示せず)は、マイクロホン、ジョイスティック、ゲームパッド、衛星通信用パラボラアンテナ、スキャナなどを含んでよい。これらのおよびその他の入力デバイスは、システムバス121に結合されたユーザ入力インターフェース160を介して処理ユニット120に接続されることが多いが、パラレルポート、ゲームポート、またはユニバーサルシリアルバス(USB)などのその他のインターフェースおよびバス構造によって接続されてもよい。
モニタ191またはその他の種類のディスプレイデバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続される。ノースブリッジなどのグラフィックスインターフェース182も、システムバス121に接続されることができる。ノースブリッジは、CPUまたはホスト処理ユニット120と通信し、アクセラレーテッド・グラフィックス・ポート(accelerated graphics port)(AGP)通信に関する役割を担うチップセットである。1つまたは複数のグラフィックス処理ユニット(GPU)184は、グラフィックスインターフェース182と通信することができる。この点に関し、概してGPU184はレジスタ記憶装置などのオンチップのメモリ記憶装置を含み、GPU184はビデオメモリ186と通信する。しかし、GPU184はコプロセッサのほんの一例に過ぎず、したがって様々なコプロセッシングデバイスがコンピュータ111に含まれてよい。モニタ191またはその他の種類のディスプレイデバイスも、ビデオインターフェース190などのインターフェースを介してシステムバス121に接続され、当該インターフェースは同様にビデオメモリ186と通信することができる。モニタ191に加えて、コンピュータは、出力周辺機器インターフェース195を介して接続されることができる、スピーカ197およびプリンタ196などのその他の周辺出力デバイスを含んでもよい。
コンピュータ111は、リモートコンピュータ180などの1つまたは複数のリモートコンピュータへの論理接続を使用したネットワーク化された環境で動作することができる。リモートコンピュータ180は、パーソナルコンピュータ、サーバ、ルータ、ネットワークPC、ピアデバイス、またはその他の一般的なネットワークノードであってよく、図1にはメモリ記憶装置181のみが示されたが、概してコンピュータ111に関して上述した要素の多くまたは全てを含む。図1に示された論理接続は、ローカルエリアネットワーク(LAN)171および広域ネットワーク(WAN)173を含むが、その他のネットワークを含んでもよい。かかるネットワーキング環境は、オフィス、企業規模のコンピュータネットワーク、イントラネット、およびインターネットにおいて一般的である。
LANネットワーキング環境において使用される場合、コンピュータ111は、ネットワークインターフェースまたはアダプタ170を介してLAN171に接続される。WANネットワーキング環境において使用される場合、概して、コンピュータ111は、モデム172、またはインターネットなどのWAN173を介して通信を確立するためのその他の手段を含む。内蔵でも外付けでもよいモデム172は、ユーザ入力インターフェース160またはその他の適切な機構を介してシステムバス121に接続されることができる。ネットワーク化された環境において、コンピュータ111に関連して示されたプログラムモジュール、またはそのモジュールの一部は、リモートのメモリ記憶装置に記憶されることができる。限定ではなく例として、図1は、リモートアプリケーションプログラム185をメモリ装置181に存在するものとして示す。図示されたネットワーク接続は例示的であり、コンピュータ間で通信リンクを確立するその他の手段が使用され得ることが理解されるであろう。
当業者は、コンピュータ111またはその他のクライアントデバイスがコンピュータネットワークの一部として配置され得ることを理解することができる。この点で、本発明は、任意の数のメモリまたは記憶装置と、任意の数の記憶装置または記憶ボリュームにまたがって発生する任意の数のアプリケーションおよびプロセスとを有する任意のコンピュータシステムに適する。本発明は、ネットワーク環境内に配置された、リモートまたはローカルの記憶装置を持つサーバコンピュータおよびクライアントコンピュータを有する環境に適用することができる。本発明は、プログラミング言語の機能、解釈、および実行能力を有するスタンドアロンのコンピューティングデバイスに適用することもできる。
分散コンピューティングは、コンピューティングデバイスとシステムの間の直接交信によってコンピュータ資源およびサービスの共有を促進する。これらの資源およびサービスは、情報の交換と、キャッシュ記憶装置と、ファイルのためのディスク記憶装置とを含む。分散コンピューティングは、ネットワークの接続性を利用し、クライアントがそれらクライアントの集団的な能力を活用して事業全体に利益をもたらすことを可能にする。この点に関して、様々なデバイスが、(1つまたは複数の)高信頼グラフィックスパイプライン用に本発明の認証技術を利用するために交信することができるアプリケーション、オブジェクト、または資源を有することができる。
図2は、例示的なネットワーク化されたまたは分散されたコンピューティング環境の概略図を提供する。分散コンピューティング環境は、コンピューティングオブジェクト10a、10bなどと、コンピューティングオブジェクトまたはデバイス110a、110b、110cなどとを含む。これらのオブジェクトは、プログラム、メソッド、データストア、プログラマブルロジックなどを含んでよい。オブジェクトは、PDA、テレビジョン、MP3プレーヤ、テレビジョン、パーソナルコンピュータなどの同じまたは異なるデバイスの一部を含んでよい。各オブジェクトは、通信ネットワーク14を介して別のオブジェクトと通信することができる。このネットワーク自体が、図2のシステムにサービスを提供するその他のコンピューティングオブジェクトおよびコンピューティングデバイスを含むことができる。本発明の一態様によれば、各オブジェクト10または110は、高信頼グラフィックスパイプライン用に本発明の認証技術を要求し得るアプリケーションを含むことができる。
110cなどのオブジェクトは、別のコンピューティングデバイス10または110上でホストされ得ることも理解されることができる。したがって、示された物理的環境は接続されたデバイスをコンピュータとして示し得るが、そのような説明は例示的であるに過ぎず、物理的環境は代替的に、PDA、テレビジョン、MP3プレーヤなどの種々のデジタルデバイス、インターフェース、COMオブジェクトなどのソフトウェアオブジェクトを含むように示される、または説明されることができる。
分散コンピューティング環境をサポートする様々なシステム、コンポーネント、およびネットワーク構成が存在する。例えば、コンピューティングシステムは、ローカルネットワークまたは広域分散ネットワークによって有線または無線システムで一緒に接続されることができる。現在、ネットワークの多くは、広域分散コンピューティングのためのインフラストラクチャを提供し、多くの異なるネットワークを包含するインターネットに接続されている。
ホームネットワーキング環境では、電力線、データ(無線および有線の両方)、音声(例えば電話)、および娯楽媒体などの、それぞれが固有のプロトコルをサポートすることができる少なくとも4つの異種のネットワーク伝送媒体が存在する。電灯のスイッチおよび家庭電化製品などのほとんどのホームコントロールデバイスは、接続性を得るために電力線を使用することができる。データサービスは、ブロードバンド(例えば、DSLまたはケーブルモデムのいずれか)として家庭に入ることができ、無線(例えば、HomeRFまたは802.11b)または有線(例えば、HomePNA、Cat5、さらには電力線)の接続性を使用して家庭内でアクセスすることができる。音声トラヒックは、有線(例えば、Cat3)として、または無線(例えば、携帯電話)としてのいずれかで家庭に入ることができ、Cat3配線を使用して家庭内で分配されることができる。娯楽媒体は、衛星またはケーブルのいずれかを介して家庭に入ることができ、概して同軸ケーブルを使用して家庭内で分配される。一群の媒体デバイス用のデジタル相互接続としてIEEE1394およびDVIも登場しつつある。これらのネットワーク環境の全て、およびプロトコル標準として台頭する可能性があるその他のネットワーク環境は、インターネットを介して外部と接続されることができるイントラネットを形成するように相互接続されることができる。要するに、データの記憶および伝送のために様々な異種のソースが存在しており、その結果、一歩進めると、コンピューティングデバイスはデータ処理パイプラインの全ての部分でコンテンツを保護する方法を必要とすることになる。
通常、「インターネット」は、コンピュータネットワーキングの分野でよく知られているTCP/IPプロトコル群を利用するネットワークおよびゲートウェイの集合体を指す。TCP/IPは、「伝送制御プロトコル/インターフェースプログラム(Transport Control Protocol/Interface Program)」に対する頭字語である。インターネットは、ユーザがネットワークを介して交信し情報を共有することを可能にするネットワーキングプロトコルを実行するコンピュータによって相互接続された地理的に分散されたリモートコンピュータネットワークのシステムとして説明されることができる。このような広域に分散している情報の共有によって、これまでに、概してインターネットなどのリモートネットワークは、そのシステムに対して開発者が、特殊なオペレーションまたはサービスを実行するソフトウェアアプリケーションを基本的に制約なしで設計することができるオープンシステムに発展してきた。
したがって、ネットワークインフラストラクチャは、クライアント/サーバ、ピアツーピア、またはハイブリッドアーキテクチャなどの多くのネットワークトポロジのホストを可能にする。「クライアント」は、それが関連していない別のクラスまたはグループのサービスを使用するクラスまたはグループのメンバである。したがって、コンピューティングにおいて、クライアントは別のプログラムによって提供されるサービスを要求するプロセス、つまり大まかに言って1組の命令またはタスクである。クライアントプロセスは、別のプログラムまたはサービス自体についての動作詳細を全く「知る」必要なしに、要求されたサービスを利用する。クライアント/サーバアーキテクチャ、特にネットワーク化されたシステムにおいては、通常、クライアントは、別のコンピュータ、例えばサーバによって提供される共有ネットワーク資源にアクセスするコンピュータである。図2の例において、コンピュータ110a、110bなどはクライアントとみなされることができ、コンピュータ10a、10bなどはサーバとみなされることができ、ここでサーバ10a、10bなどは、その後クライアントコンピュータ110a、110bなどに複製されるデータを保持する。
通常、サーバは、インターネットなどのリモートネットワーク経由でアクセス可能なリモートコンピュータシステムである。クライアントプロセスは第1のコンピュータシステムにおいてアクティブであってよく、サーバは第2のコンピュータシステムにおいてアクティブであってよく、通信媒体を介して互いに通信し、それによって分散された機能を提供し、複数のクライアントがサーバの情報収集能力を利用することを可能にする。
クライアントおよびサーバは、プロトコルレイヤによって提供される機能を利用して互いに通信する。例えば、ハイパーテキスト転送プロトコル(HTTP)は、ワールドワイドウェブ(WWW)と共に使用される共通プロトコルである。概して、ユニバーサル・リソース・ロケータ(URL)またはインターネットプロトコル(IP)アドレスなどのコンピュータネットワークアドレスは、サーバまたはクライアントコンピュータを互いに識別するために使用される。ネットワークアドレスは、ユニバーサル・リソース・ロケータ・アドレスと呼ばれる場合もある。例えば、通信は通信媒体を介して提供されることができる。具体的には、クライアントおよびサーバは、大容量通信のためのTCP/IP接続を介して互いに結合されることができる。
したがって、図2は、その環境内で本発明が使用され得る、ネットワーク/バスを介してクライアントコンピュータと通信しているサーバを用いた例示的なネットワーク化されたまたは分散された環境を示す。より詳細には、いくつかのサーバ10a、10bなどは、LAN、WAN、イントラネット、インターネットなどであってよい通信ネットワーク/バス14を介して、ポータブルコンピュータ、ハンドヘルドコンピュータ、シンクライアント、ネットワーク家電、またはVCR、TV、オーブン、電灯、ヒータなどの本発明によるその他のデバイスなどのいくつかのクライアントまたはリモートコンピューティングデバイス110a、110b、110c、110d、110eなどと相互接続される。したがって、本発明は、そのデバイスに関連して信頼できるソースからの安全なコンテンツを処理、記憶、またはレンダリングすることが望ましい任意のコンピューティングデバイスに適用することができることが意図される。
例えば、その環境における通信ネットワーク/バス14がインターネットであるネットワーク環境では、サーバ10は、クライアント110a、110b、110c、110d、110eなどがそのウェブサーバとHTTPなどのいくつかの知られているプロトコルのいずれかを介して通信するウェブサーバであってよい。分散コンピューティング環境の特徴となり得ることだが、サーバ10は、クライアント110としても機能することができる。通信は、適切ならば有線または無線でよい。クライアントデバイス110は、通信ネットワーク/バス14を介して通信してもしなくてもよく、当該クライアントに関連する個別の通信を行うこともできる。例えば、TVまたはVCRの場合、それらの制御にはネットワーク化された態様が存在することもしないこともあり得る。各クライアントコンピュータ110およびサーバコンピュータ10は、様々なアプリケーションプログラムモジュールまたはオブジェクト135を備えることができ、様々な種類のストレージエレメントまたはオブジェクトに対する接続またはアクセスを備えることができ、それらのストレージエレメントまたはオブジェクトに渡ってファイルが記憶されることができるか、またはそれらのストレージエレメントまたはオブジェクトに対してファイルの一部がダウンロードまたは移動されることができる。このように、本発明は、コンピュータネットワーク/バス14にアクセスし、それと交信することができるクライアントコンピュータ110a、110bなどと、クライアントコンピュータ110a、110bなど、ならびにその他のデバイス111およびデータベース20と交信できるサーバコンピュータ10a、10bなどとを有するコンピュータネットワーク環境において利用されることができる。
図3は、本発明による例示的なアプリケーション階層を示す。図示されるように、階層は、アプリケーション301と、一群のライセンス供与可能な製品302〜305とを含む。ライセンス供与可能な製品302〜305は、アプリケーション301と同じソースコードを共有することができるが、ライセンス供与可能な製品302〜305のそれぞれは、互いに独立して販売されることが可能な別個の製品として製造される。例えば、アプリケーション301およびライセンス供与可能な製品302〜305は、コンパクトディスクまたはその他のコンピュータ可読媒体で一緒に配布されることができる。
かかるアプリケーション301の例は、オペレーティングシステムであってよい。特定のオペレーティングシステムは、例えば64ビットバージョン、外国語バージョン、プロフェッショナルバージョンなどの様々なバージョンで入手可能な場合がある。これらのバージョンのそれぞれが、ライセンス供与可能な製品を表す。各バージョンは異なる特徴を有することができるが、それらのバージョンは、それらのソースコードの一部または全てを親アプリケーション301から受け継ぐことができる。アプリケーション301の製造業者は、ライセンス供与可能な製品302〜305のそれぞれを一緒に含む単一のパッケージを販売し、購入者が使用したい特定のライセンス供与可能な製品についてのみ購入者に代金を請求することによって省力化を実現することができる。別の利点は、特定のライセンス供与可能な製品の購入者が当該ライセンス供与可能な製品のより完全な機能を搭載したバージョンへアップグレードしたいと望む場合に、購入者がアプリケーション301の新しいバージョンを入手することなしにアップグレードを行うことができることである。
これを容易にするために、各バージョンまたはライセンス供与可能な製品は、ライセンス307〜309として示された使用ライセンスを有することができる。図示されたように、ライセンス307〜309は、初期使用ライセンス307、オンライン使用ライセンス308、およびオフライン使用ライセンス309を含む。各ライセンス供与可能な製品は1つの使用ライセンスのみを有するように示されているが、本発明をライセンス供与可能な製品あたり1ライセンスのみに限定することが意図されるものではない。各ライセンス供与可能な製品が含むことができるライセンスの数に対する制限はない。
初期使用ライセンス307(または、すぐに使用できる(out of the box)ライセンス)は、ソフトウェアアプリケーションを購入したときにユーザに与えられる初期の権利を含むことができる。例えば、サーバアプリケーションの購入者は、各バージョンがより多くのまたはより高度な機能を含んでいるアプリケーションのいくつかのバージョンを含むCD−ROMを提供されることができる。例えば、CD−ROMに付随しているのは、最小限の数の機能を有するアプリケーションのバージョンに対応する初期使用ライセンスであってよい。あるいは、初期使用ライセンスは、初めにアプリケーションのより完全な機能を搭載したバージョンの利用をユーザに許可し、その後ある紹介期間が経過した後でより機能の少ないバージョンに戻ることができる。購入者が後から当該ライセンス供与可能な製品の別のバージョンへアップグレードしたいと望んだとすると、購入者は追加のライセンスのために発行者に連絡を取る必要があるであろう。
オンライン使用ライセンス308は、ユーザがソフトウェアアプリケーションを購入した後、例えばインターネットを介してユーザによって取得される使用ライセンスを含むことができる。ユーザがアプリケーションを購入したとき、ユーザは、オンライン使用ライセンスを受け取るためにアプリケーションをオンライン状態にするように要求される場合がある。ユーザは、ソフトウェアアプリケーションの製造者に「購入証明」または製品のその他の何らかの識別子を提供することができる。製造者が購入証明を認証した後、製造者は、購入証明に対応する特定の権利をユーザに与えるオンラインライセンスをユーザに提供することができる。
オフライン使用ライセンス309は、例えば、自身のライセンスをオンラインで検証することができないユーザ向けの使用ライセンスを含むことができる。これを容易にするために、例えば、オフライン使用ライセンスは、外部バリデータ315を含むことができる。ユーザが製品を購入したとき、ユーザは、購入された製品に対応する番号、例えば購入証明を入力するように最初に要求される場合がある。ユーザが番号を入力したとき、例えば、ユーザはユーザのコンピュータに入力すべき第2の番号を受け取ることができる。この第2の番号は、例えばハッシュ関数などの何らかの数学的な変換を介して購入証明と関連することができる。この第2の番号は、ユーザのコンピュータ内の知られている場所に記憶されることができる。後でユーザがオフライン使用ライセンス309に対応する製品を使用しようと試みるとき、外部バリデータ315が処理される。外部バリデータ315は、オフライン使用ライセンスを検証する方法に関する指示を有するデータを含むことが望ましい。前述の例に関しては、この外部バリデータは、購入証明のハッシュがユーザのコンピュータ内の知られている場所に記憶された値と一致しなければならないことを示すことができる。その場合、このシステムは、外部バリデータ315によって命令されるように購入証明に対してハッシュを実行し、それを記憶された値と照合することによってオフライン使用ライセンス309を検証することができる。例えば、外部バリデータは図6に関してさらに説明される。
図4は、本発明による例示的な製品ライセンス401を示すブロック図である。破線によって境界を示された四角の内側に配置されたブロック308、415、410、および423は、製品ライセンス401に含まれ得る各種ライセンスおよびコンポーネントを示す。さらに、製品ライセンス401を含むコンピュータ上にオプションの権利アカウント証明書(「RAC」)521およびセキュリティ処理装置証明書(「SPC」)431があってよい。例えば、SPC431はRAC421を検証するために使用されることができ、同様にRAC421は製品ライセンス401を検証するために使用されることができる。図3で既に示されたように、アプリケーション301はアプリケーション301に関連する複数のライセンス供与可能な製品302〜305を有することができ、各ライセンス供与可能な製品はさらに使用ライセンス307〜309のうちの1つと関連する。単に説明を容易にするために、ライセンス供与可能な製品303および305、ならびに関連する使用ライセンスは図4から除かれている。製品ライセンス401内に示されることができるライセンス供与可能な製品および関連する使用ライセンスの数に対する制限はない。
例えば、製品ライセンス401は、国際標準化機構権利記述言語(International Standards Organization Rights Expression Language)(「ISO REL」)などの一般的な権利またはポリシー言語で表されることが望ましい。例えば、一般的な権利またはポリシー言語を使用することは、製品ライセンス401が、様々な起こりうるライセンス供与のシナリオでの使用に関して柔軟で好適であること可能にする。製品ライセンス401は、使用ライセンス308と、ライセンス供与可能製品レベルポリシー製品定義ライセンス(policy product definition license)(「PPDLIC」)415と、アプリケーションレベルPPDLIC410と、プロダクトキー証明書423とを含むいくつかのコンポーネントまたはライセンスを含むことが望ましい。図4には各コンポーネントの1つのインスタンスのみが示されているが、製品ライセンス401においてサポートされることができるコンポーネントまたはライセンスの数に対する制限はない。
特定のライセンス供与可能製品レベルPPDLIC415において与えられる使用権利は、製品ポリシー(「PP」)で定義される。各ライセンス供与可能製品レベルPPDLIC415は、関連するアプリケーションにおいて与えられた特定の使用権利にそれぞれが対応する複数のPPを含む。
同様に、アプリケーションレベルPPDLIC410もPPを含む。初めに、特定のアプリケーション301は、アプリケーションレベルPPDLIC410のみと共に配布されることができる。例えば、アプリケーションレベルPPDLIC410は、アプリケーション301のユーザに与えられた最小限の使用権利に対応するPPを含むことができる。
例えば、プロダクトキー証明書423は、アプリケーションバイナリに対応する購入証明またはその他の識別子を含むことが望ましい。例えば、プロダクトキー証明書423の例は、購入されたソフトウェアアプリケーションにバンドルされてくることが多いシリアル番号である。その場合、これらのシリアル番号がユーザによって入力された後、購入されたソフトウェアアプリケーションがアクティベートされることが可能になる。プロダクトキー証明書423は、発行者が製品またはアプリケーションがどのようにライセンス供与されることを望んでいるのかを表すデータを含むことが望ましい。例えば、特定のプロダクトキー証明書423は特定の製品に対してのみ有効であってよく、したがってユーザがこの製品またはアプリケーションをアクティベートするとき、ユーザは対応するプロダクトキー証明書423を持っている必要がある。アクティベートされているアプリケーションまたは製品が特定のプロダクトキー証明書423と適合しない場合、操作は失敗し、製品またはアプリケーションはアクティベートされることができない。
ライセンス供与可能製品レベルPPDLIC415の数が増え、アプリケーションのより多くの機能が使用可能にされるにつれて、様々なPPDLIC415にまたがって定義されたいくつかの重複PPが存在する場合がある。アプリケーションのユーザにどの権利が与えられるかを決定するために、各PPは優先レベルおよび集約タイプを含むことが望ましい。2つのPPが衝突する場合、衝突がどのように解決されるかを決定するために優先レベルおよび集約タイプが使用されることができる。
例えば、サーバ製品のユーザは、当該サーバ製品に関連する複数のライセンス供与可能製品レベルPPDLIC415を有することができる。1つのライセンス供与可能製品レベルPPDLIC415には、5つのクライアント接続の権利をユーザに与えるPPがある可能性がある。別のライセンス供与可能製品レベルPPDLIC415には、3つのクライアント接続の権利をユーザに与えるPPがある可能性がある。集約タイプと優先レベルに応じて、いくつかの異なる処置が取られることができる。集約タイプが「合計」である場合、PPは合算され、ユーザに合計8つのクライアント接続を許可する。タイプが「置き換え」の場合、最も高い優先レベルを有するPPに関連する値が選択されることができる。PP集約タイプが衝突する場合、最も高い優先順位を有するPPの集約タイプが使用される。衝突するPPを集約するこの方法は、図5に関してさらに説明される。
権利アカウント証明書(「RAC」)421は、製品ポリシーライセンス401を、特定のユーザ、コンピュータ、ネットワーク、または発行者がアプリケーション301の使用をそれに制限したいと望み得る任意の他の1つのデータに関連付けるために使用される環境バインダを含む。RAC421はいくつかのライセンスと関連付けられることができ、特定の使用が認められることが可能となる前に特定のライセンスを認証するために使用されることができる。RAC421は、係属中の米国特許出願第11/048087号に記載の方法に従って実現されることができる。例えば、RAC421は、特定のハードウェア識別番号に対応する識別子を含むことができる。
ハードウェア識別番号に加えて、例えば、RAC421は、いくつかの特定のネットワークの特徴に対応する識別子を含んでもよい。例えば、最初にユーザが特定のRAC421を受け取っていた場合、ユーザは、ユーザのネットワーク環境に関連する何らかの識別子または特徴を、ユーザが知った上で、またはユーザが知ることなしにライセンス供与者に提供した可能性がある。アプリケーションの特定の使用が許可される前に、特定のネットワークの特徴の存在が確認される。例えば、会社の環境においては、ネットワークの特徴は会社のネットワークに対応して提供された可能性があり、したがって、オフィスにいないときにユーザが製品を使用することを防止する。ネットワークの特徴の例は、ドメインコントローラの数、DNS名、IPアドレス、または当技術分野で知られている任意の他のネットワークの特徴を含んでよい。
RAC421は、相手先商標製造会社(「OEM」)指定のコンピュータの特徴に対応する識別子を含んでもよい。OEMは、それらOEMのコンピュータの1つの購入にソフトウェアをバンドルすることが多い。ソフトウェアの供給業者は、多くの場合、ソフトウェアをOEMに数量割引で提供しており、ソフトウェアがコンピュータの購入者によって転売または再配布されず、市場において供給業者の正規価格のソフトウェアと競合しないことを望む場合がある。購入されたソフトウェア用のライセンスを取得するためのいくつかの一連のステップを踏むことをコンピュータの購入者に要求しないで、しかし同時に購入者がバンドルされたソフトウェアおよびライセンスを別のユーザに売ることを防止するために、RAC421はOEMコンピュータの特定の特徴に対応する何らかの識別子を含むことができる。例えば、この識別子は、BIOSに関連する何らかの値に対応することができる。OEMの拘束は、ハードウェアシステムを記述し、その記述を特定のOEMに相関させるための、当技術分野で知られている任意のシステムを使用して実現されることができる。RAC421で使用されるべき特定のOEMの特徴は、OEMによってソフトウェア製造業者に提供されることができ、したがって、ソフトウェアがOEMコンピュータにインストールされる前にソフトウェア製造業者によってRAC421に組み込まれることができる。OEMコンピュータの購入者がインストールされたソフトウェアを使用しようと試みるとき、RAC421に記載されたOEMの特徴はユーザのコンピュータのOEMの特徴と照合されることになり、OEMの特徴が一致した場合に限り、要求されたソフトウェアの使用が許可されることになる。
セキュリティ処理装置証明書(「SPC」)431は、RAC421を認証するために使用されることができる。上述の通り、RAC421は、アプリケーションバイナリ301に関連する製品ライセンス401を認証するために使用される。同様に、SPC431は、RAC421を認証するために使用される。SPC431は、認証のための、当技術分野で知られている任意のシステム、方法、または技術を使用してRAC421を認証するために使用されることができる。例えば、SPC431は、ユーザの処理装置に記憶された値と比較されることができる署名された値を含み得る。署名された値を復号した後で、それが記憶された値と一致する場合、RAC421は本物であると宣される。
図5は、本発明によるライセンス集約の例示的な方法の流れ図である。特定のアプリケーションのための1組の使用ライセンスが取り出される。使用ライセンスが認可される。使用ライセンスのそれぞれに関連する任意の条件が確認される。条件(もしあれば)が確認される場合、各確認された使用ライセンスに関連する各製品ポリシー(「PP」)は集約される。条件が確認されない場合、集約の目的に関してライセンスは無視され、1組の認可されたライセンスからの次のライセンスが評価される。各ライセンスが評価され終わるまでこの実施形態が継続する。
501において、ユーザまたは管理者は、使用すべきアプリケーションを選択した。当該アプリケーションに関してどの権利がユーザに与えられたかを判定するために、このアプリケーションに関連する任意のライセンスが取り出されることが望ましい。図4に関して上述したように、特定のアプリケーションに関連する複数のライセンスが存在してよい。各ライセンスは、アプリケーション、またはアプリケーションの特定の機能の使用を許可する前に満足されるべき条件(例えば、時間または支払い条件)を含むことができる。各ライセンスは、アプリケーションに関連する特定の使用権利を与える1つまたは複数のポリシー製品(「PP」)を有することもできる。各ライセンスは複数の重複するPPを含むことができるので、アプリケーションに関連するどの使用権利がユーザに与えられることができるのかを正確に決定するためにPPを集約することが必要な場合がある。したがって、特定のアプリケーションに関連するPPを含む各PPDLICが取り出されることが望ましい。例えば、PPDLICは、ライセンスが記憶されることができるユーザのコンピュータ上のトークンストアまたはその他の集中化された場所から取り出されることができる。
505において、使用ライセンスが認可される。ライセンスは、例えばRAC421などのライセンス検証の方法のいずれかを使用して認可されることができる。例えば、ライセンスを認可することによって、ライセンスが有効であり、別のユーザから譲渡されていないことを保証する。認可されることができない全てのライセンスは、検討されている1組のライセンスから削除されることが望ましい。
510において、認可されたライセンスが選択される。ライセンスは最終的に一緒に集約されるので、ライセンスの選択に関して要求される特定の順序はない。当技術分野で知られている任意のシステム、方法、または技術が使用されることができる。
515において、選択されたライセンスの何れかの条件が満たされているかどうかが判定される。図3に関して上述したように、所与のライセンスに関連するオプションの条件が存在してよい。例えば、特定のライセンス供与可能な製品に関連するライセンスが30日の試用期間を指定する場合、ライセンスが失効するように設定される日付を指定する条件が存在してよい。選択されたライセンスの全ての条件(もしあれば)が満たされる場合、525においてこの実施形態が継続する。そうでない場合、異なるライセンスを選択するためにこの実施形態は510に戻る。
525において、選択されたライセンスに関連するPPは、前に集約されたPPと集約されることが望ましい。例えば、前に集約されたPPはキャッシュに記憶されることができる。上述のように、同じPPが複数のライセンスに関連付けられることができる。典型的なPPは、例えばISO RELで記述されたように集約優先順位と集約タイプを含む。集約タイプは、同じ使用権利を指定するPPとこの特定のPPがどのように集約されるべきかを指定する。集約優先順位は、ある集約タイプに関してどのPPが優先権を有するのかを判定するために使用される。PPの例が以下に示される。
Figure 2008539503
示されたPPは、優先順位2.26および集約タイプ「合計」を有する。例えば、集約ポリシータイプ「合計」は、PPに関連する使用権利が、キャッシュ内の同じ使用権利を指定する全ての前のPPに関連する使用権利と加算されるべきであることを指定する。各集約タイプに関連する集約ポリシーは、以下の表T1に示される。
Figure 2008539503
ライセンスに関連する各PPが順に検討されることになる。同じ使用権利を指定するPPがこの実施形態によってまだ検討されていない場合(すなわち、同じ使用権利を指定するPPが、既に検討されたPPの全てを含むキャッシュ内にまだない場合)、PPはキャッシュ内に置かれ、何の処置も取られる必要がない。そうでない場合、同じ使用権利を指定するPPがキャッシュ内にあり、現在のPPは、PPで指定されている集約タイプに従って、および集約タイプによっては選択されたPPに関連する優先レベルに従ってキャッシュ内のPPと集約されることが望ましい。
集約タイプが「最小」である場合、算術的最小値を有するPPの値がキャッシュに置かれる。
集約タイプが「最大」である場合、算術的最大値を有するPPの値がキャッシュに置かれる。
集約タイプが「合計」である場合、現在のPPの値が、キャッシュ内のPPの値(もしあれば)と合計される。
集約タイプが「ブール」である場合、キャッシュ内のPP値の論理ORが使用される。
集約タイプが「置き換え」である場合、キャッシュ内の最高の集約優先順位を有するPPからの値が使用される。
現在の例は上述の5つの集約タイプを用いて説明されるが、本発明を記載されたこれらのタイプに限定することが意図されるものではない。本発明は、値を集約するための、当技術分野で知られている任意の知られているシステム、方法、または技術をサポートすることができる。
選択されたライセンスに関連する全てのPPを検討した後、510において、この実施形態は次のライセンスを選択する。この実施形態は、残っているライセンスがなくなるまで、残っているライセンスからのPPを集約し続ける。ライセンスを処理し尽くした後で、特定のアプリケーション用にユーザが使用可能な使用権利が、キャッシュに記憶された残っている集約されたPPの中で見つけられることができる。
図6は、本発明による外部検証の例示的な方法の流れ図である。使用ライセンスのための外部検証インジケータが処理される。関連する外部バリデータが検査される。外部バリデータによって使用ライセンスが認証される。検証が成功した場合、使用ライセンスに記載された使用が認められる。そうでない場合、使用は拒否される。
601において、ユーザは特定のライセンス供与可能な製品を使用しようと試み得る。ライセンス供与可能な製品は、例えば図3に関して説明したようにライセンス供与可能な製品305に対応することができる。図示されたように、ライセンス供与可能な製品305は、対応するオフライン使用ライセンス309を有する。オフライン使用ライセンス309は、関連する外部バリデータ315を有する。
ユーザがライセンス供与可能な製品305を使用しようと試みるとき、オフライン使用ライセンス309がライセンスストアから取り出される。上述のように、ライセンスは、ISO RELなどの一般的な権利またはポリシー言語を使用して表されることが望ましい。ライセンスが解釈されるとき、外部バリデータ315に対応するフィールドまたはフラグが処理されることができる。フィールドの存在によって、このオフライン使用ライセンスが関連する外部バリデータ315によって確認されなければならないことが示される。外部バリデータ315は、オフライン使用ライセンス309に付加されるか、またはさもなければ関連付けられるデータを含む。
図3に関して上述されたように、外部バリデータ315は、オフライン使用ライセンス309がどのように検証され得るかを示すデータを含むことが望ましい。最初にユーザがオフライン使用ライセンス309に対応するライセンス供与可能な製品305を購入したとき、ユーザは、購入証明に対応する番号をライセンス供与可能な製品305の生産者に例えば電話で提供した得る。引き替えに、ユーザは購入証明に対応する短い番号を提供され得る。例えば、この番号は、購入証明のハッシュであってよい。例えば、この番号はユ―ザによって入力され得、外部バリデータ315に認識されているコンピュータ上の場所に保存され得る。外部バリデータ315は、購入証明のハッシュをこの記憶された番号と比較するための命令を含むことができ、ハッシュが記憶された番号と一致する場合のみ使用を許可することができる。ユーザは製造業者によって使用されるハッシュ関数を知らないため、ユーザは購入証明から記憶された番号を再作成することはできない。ハッシュ関数に加えて、例えば、記憶された番号は、デジタル署名を含む様々な方法を使用して認証されることができる。
610において、使用ライセンス309は、外部バリデータ315によって認証される。上述のように、外部バリデータ315は、使用ライセンス309がどのように認証され得るかを指示するデータを含むことができる。代替として、外部バリデータ315は、検証のための命令に対応するユーザのコンピュータ上のポインタまたはメモリアドレスを含んでもよい。検証のための、当技術分野で知られている任意のシステム、方法、または技術が使用されることができる。
615において、オフライン使用ライセンス309が成功裏に検証されたかどうかが判定される。ライセンスが成功裏に認証された場合、この実施形態は625に進み、625において、オフライン使用ライセンス309で指定された使用が許可される。そうでない場合、オフライン使用ライセンス309は認証されておらず、635において使用が拒否される。
上述のように、本発明の例示的実施形態が様々なコンピューティングデバイスに関連して説明されたが、根本的な概念は任意のコンピューティングデバイスまたはシステムに適用されることができる。
本明細書に記載された種々の技術は、ハードウェアもしくはソフトウェア、または適切であれば両方の組合せに関連して実施されることができる。したがって、本発明の方法および装置、またはそれらの特定の態様または部分は、フロッピー(登録商標)ディスケット、CD−ROM、ハードドライブ、または任意の他の機械可読記憶媒体などの有形の媒体内に具現化されるプログラムコード(すなわち命令)の形態を取ることができ、プログラムコードがコンピュータなどの機械にロードされ、機械によって実行されるとき、当該機械は本発明を実施するための装置になる。プログラム可能なコンピュータ上でプログラムコードを実行する場合、概してコンピューティングデバイスは、処理装置と、当該処理装置によって可読な記憶媒体(揮発性および不揮発性メモリおよび/またはストレージエレメント)と、少なくとも1つの入力デバイスと、少なくとも1つの出力デバイスとを含む。(1つまたは複数の)プログラムは、必要に応じてアセンブリまたは機械語で実装されることができる。どの場合も、言語はコンパイルされたまたは解釈された言語であってよく、ハードウェア実装と組み合わされてよい。
本発明の方法および装置は、電気配線もしくはケーブル、光ファイバ、または任意の他の伝送形態などの何らかの伝送媒体を介して伝送されるプログラムコードの形態で具現化された通信によって実施されてもよく、プログラムコードがEPROM、ゲートアレイ、プログラマブルロジックデバイス(PLD)、クライアントコンピュータなどの機械に受信およびロードされ、機械によって実行されるとき、当該機械は本発明を実施するための装置になる。汎用プロセッサ上に実装されるとき、プログラムコードは処理装置と連携して、本発明の機能をもたらすように動作する独自の装置を提供する。さらに、本発明に関連して使用される任意の記憶技術は、常にハードウェアとソフトウェアの組合せであってよい。
本発明が種々の図の好ましい実施形態に関連して説明されたが、本発明の同様の機能を実行するために、本発明を逸脱することなくその他の類似の実施形態が使用されることができるか、または記載された実施形態に対して修正または追加が行われることができることを理解されたい。したがって、本発明は任意の単一の実施形態に限定されるべきではなく、むしろ添付の特許請求の範囲による広さおよび範囲内で解釈されるべきである。
その環境内で本発明の態様が実施され得る例示的なコンピューティング環境を示すブロック図である。 その環境内で本発明が実施され得る、種々のコンピューティングデバイスを有する例示的なネットワーク環境を示すブロック図である。 本発明による例示的なアプリケーション階層を示すブロック図である。 本発明による例示的な製品ポリシー定義ライセンス体系を示すブロック図である。 本発明による、使用ライセンスを集約する例示的な方法を示すブロック図である。 本発明による、ライセンスを外部から検証する例示的な方法を示す流れ図である。

Claims (19)

  1. ソフトウェア製品の使用要求を認可する方法であって、
    前記ソフトウェア製品の使用要求を受け取るステップと、
    前記ソフトウェア製品に関連するライセンスを取り出すステップと、
    取り出されたライセンスを集約するステップと、
    要求された使用が集約されたライセンスで許可された使用に従っているかどうかを判定するステップと
    を含む方法。
  2. 前記要求された使用が前記集約されたライセンスにおける前記許可された使用に従っていると判定された場合にのみ、前記要求された使用を許可するステップをさらに含む請求項1に記載の方法。
  3. 前記取り出されたライセンスを集約するステップは、前記取り出されたライセンスを認証するステップと、成功裏に認証された前記取り出されたライセンスのみを集約するステップとを含む請求項1に記載の方法。
  4. 前記取り出されたライセンスは複数の製品ポリシーを含み、各製品ポリシーは使用権利に対応し、前記取り出されたライセンスを集約するステップは同一の使用権利に対応する製品ポリシーを集約するステップを含む請求項1に記載の方法。
  5. 各製品ポリシーは集約タイプおよび集約優先順位を含み、同一の使用権利に対応する製品ポリシー定義は前記製品ポリシーの前記集約タイプおよび集約優先順位に従って集約される請求項4に記載の方法。
  6. 前記集約タイプは、合計、最大、最小、置き換え、およびブールのうちの1つである請求項5に記載の方法。
  7. 前記取り出されたライセンスは、国際標準化機構権利記述言語(ISO REL)で表される請求項1に記載の方法。
  8. コンピュータ可読媒体に記憶された、ライセンス供与可能な製品を含むアプリケーションに対応するライセンスであって、
    各製品ポリシーが前記アプリケーションのための使用権利に対応している複数の製品ポリシーを含むアプリケーション製品ポリシー定義ライセンスと、
    各製品ポリシーが前記ライセンス供与可能な製品のための使用権利に対応している複数の製品ポリシーを含むライセンス供与可能単位製品ポリシー定義ライセンスと、
    プロダクトキー証明書と
    を含むライセンス。
  9. 前記ライセンスは、国際標準化機構権利記述言語(ISO REL)で表される請求項8に記載のライセンス。
  10. 前記ライセンスは環境的な拘束条件を含む権利アカウント証明書に関連付けられ、前記権利アカウント証明書は前記ライセンスを認証することができる請求項8に記載のライセンス。
  11. 前記環境的な拘束条件はハードウェアの識別子である請求項10に記載のライセンス。
  12. 前記環境的な拘束条件は相手先商標製造会社供給モデルの特徴である請求項10に記載のライセンス。
  13. 前記環境的な拘束条件はネットワークの特徴である請求項10に記載のライセンス。
  14. 前記ライセンスは初期使用ライセンスである請求項8に記載のライセンス。
  15. 前記ライセンスはオンライン使用ライセンスである請求項8に記載のライセンス。
  16. 前記ライセンスはオフライン使用ライセンスである請求項8に記載のライセンス。
  17. 前記ライセンスは外部バリデータをさらに含む請求項16に記載のライセンス。
  18. ソフトウェア製品に対応する使用ライセンスを外部から検証する方法であって、
    ソフトウェア製品の使用要求を受け取るステップと、
    外部検証データを含む、前記ソフトウェア製品に関連する使用ライセンスを受け取るステップと、
    前期外部検証データによって前記使用ライセンスを検証するステップと、
    前記使用ライセンスが成功裏に検証された場合に前記使用ライセンスによって前記ソフトウェア製品の使用を許可するステップと
    を含む方法。
  19. 前記外部検証データによって前記使用ライセンスを検証するステップは、前記外部検証データによって指示された第1の値に対して前記外部検証データによって指示された機能を実行して結果を生成するステップと、前記結果を前記外部検証データによって指示された第2の値と比較するステップと、前記結果が前記第2の値と合致する場合に前記ライセンスが有効化されることを決定するステップとを含む請求項18に記載の方法。
JP2008508818A 2005-04-26 2005-08-01 ソフトウェアのライセンス供与/商用デジタル配信ポリシーのための補足的な信頼モデル Pending JP2008539503A (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/114,509 US8091142B2 (en) 2005-04-26 2005-04-26 Supplementary trust model for software licensing/commercial digital distribution policy
PCT/US2005/027329 WO2006115523A1 (en) 2005-04-26 2005-08-01 Supplementary trust model for software licensing/commercial digital distribution policy

Publications (1)

Publication Number Publication Date
JP2008539503A true JP2008539503A (ja) 2008-11-13

Family

ID=37188243

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2008508818A Pending JP2008539503A (ja) 2005-04-26 2005-08-01 ソフトウェアのライセンス供与/商用デジタル配信ポリシーのための補足的な信頼モデル

Country Status (14)

Country Link
US (1) US8091142B2 (ja)
EP (1) EP1875383A1 (ja)
JP (1) JP2008539503A (ja)
KR (1) KR20070122508A (ja)
CN (1) CN101167072A (ja)
AU (1) AU2005331046A1 (ja)
BR (1) BRPI0520064A2 (ja)
CA (1) CA2606098A1 (ja)
IL (1) IL186357A0 (ja)
MX (1) MX2007013355A (ja)
NO (1) NO20075147L (ja)
RU (1) RU2007139588A (ja)
WO (1) WO2006115523A1 (ja)
ZA (1) ZA200708860B (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008186322A (ja) * 2007-01-31 2008-08-14 Hitachi Ltd アプリケーションとデータの管理方法、管理システム、それに用いられるシンクライアント端末、管理サーバ、および、リモート計算機
WO2011055836A1 (en) * 2009-11-04 2011-05-12 Ricoh Company, Ltd. License management system, sales management apparatus, and license management apparatus

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3737462B2 (ja) * 2002-07-30 2006-01-18 ソニー・エリクソン・モバイルコミュニケーションズ株式会社 情報処理システム、情報通信端末および方法、情報処理装置および方法、記録媒体、並びにプログラム
US8103592B2 (en) * 2003-10-08 2012-01-24 Microsoft Corporation First computer process and second computer process proxy-executing code on behalf of first process
US7979911B2 (en) 2003-10-08 2011-07-12 Microsoft Corporation First computer process and second computer process proxy-executing code from third computer process on behalf of first process
US7788496B2 (en) * 2003-10-08 2010-08-31 Microsoft Corporation First computer process and second computer process proxy-executing code on behalf thereof
US20070038572A1 (en) * 2005-08-09 2007-02-15 International Business Machines Corporation Method, system and computer program for metering software usage
US8209729B2 (en) 2006-04-20 2012-06-26 At&T Intellectual Property I, Lp Rules-based content management
US20080134348A1 (en) * 2006-12-05 2008-06-05 Microsoft Corporation Conditional policies in software licenses
US20080141378A1 (en) * 2006-12-12 2008-06-12 Mclean Ivan Hugh Method and apparatus for creating licenses in a mobile digital rights management network
US20080237337A1 (en) * 2007-03-30 2008-10-02 Motorola, Inc. Stakeholder certificates
US8117094B2 (en) * 2007-06-29 2012-02-14 Microsoft Corporation Distribution channels and monetizing
US8667604B2 (en) * 2007-09-13 2014-03-04 Microsoft Corporation Protection of software on portable medium
US8566960B2 (en) 2007-11-17 2013-10-22 Uniloc Luxembourg S.A. System and method for adjustable licensing of digital products
US20090132422A1 (en) * 2007-11-21 2009-05-21 Microsoft Corporation Machine-readable and enforceable license
US20090132435A1 (en) * 2007-11-21 2009-05-21 Microsoft Corporation Popularity based licensing of user generated content
US20090132403A1 (en) * 2007-11-21 2009-05-21 Microsoft Corporation Licensing interface for user generated content
US20090210333A1 (en) * 2008-02-14 2009-08-20 Microsoft Corporation Micro-licensing of composite content
US20090259591A1 (en) * 2008-04-11 2009-10-15 Microsoft Corporation Information Rights Management
CN101291539B (zh) * 2008-06-12 2011-12-21 华为技术有限公司 一种控制授权功能的方法及装置
US8538889B2 (en) * 2008-06-25 2013-09-17 Microsoft Corporation Application hierarchy and state manipulation
US20100293103A1 (en) * 2009-05-12 2010-11-18 Microsoft Corporation Interaction model to migrate states and data
US9424399B2 (en) * 2009-05-12 2016-08-23 Microsoft Technology Licensing, Llc Availability of permission models in roaming environments
US20100293536A1 (en) * 2009-05-12 2010-11-18 Microsoft Corporation Enhanced product functionality based on user identification
US8423473B2 (en) 2009-06-19 2013-04-16 Uniloc Luxembourg S. A. Systems and methods for game activation
US9633183B2 (en) 2009-06-19 2017-04-25 Uniloc Luxembourg S.A. Modular software protection
US20100325200A1 (en) * 2009-06-22 2010-12-23 Craig Stephen Etchegoyen System and Method for Software Activation Through Digital Media Fingerprinting
US20100333213A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Systems and Methods for Determining Authorization to Operate Licensed Software Based on a Client Device Fingerprint
US8213907B2 (en) * 2009-07-08 2012-07-03 Uniloc Luxembourg S. A. System and method for secured mobile communication
US9589114B2 (en) * 2010-01-05 2017-03-07 Microsoft Technology Licensing, Llc Policy for digital rights management
US20110166968A1 (en) * 2010-01-06 2011-07-07 Richard Yin-Ching Houng System and method for activating display device feature
US9319406B2 (en) 2011-07-12 2016-04-19 Apple Inc. System and method for linking pre-installed software to a user account on an online store
US20130019237A1 (en) * 2011-07-12 2013-01-17 Apple Inc. System and method for linking pre-installed software to a user account on an online store
US20140351953A1 (en) * 2012-01-27 2014-11-27 Rajesh Bhatia Permissions for exploitable content
US10475049B2 (en) 2012-06-13 2019-11-12 Transform Sr Brands Llc Systems and methods for determining offer eligibility using a predicate logic tree against sets of input data
US8856757B2 (en) 2012-11-08 2014-10-07 International Business Machines Corporation Automatic license entitlement calculation
US8997242B2 (en) * 2012-11-09 2015-03-31 International Business Machines Corporation Methods and apparatus for software license management
CN104217359A (zh) * 2013-05-30 2014-12-17 华为终端有限公司 一种软件的转售方法、装置和系统
US20140379594A1 (en) * 2013-06-23 2014-12-25 Cisco Technology, Inc. Recording and maintaining acceptances of licenses for using computer products
US20140379596A1 (en) * 2013-06-23 2014-12-25 Cisco Technology, Inc. Cloud-based auditing and management of licenses to use computer products
US9069937B2 (en) * 2013-06-23 2015-06-30 Cisco Techology, Inc. Converting traditional computer product licenses into cloud-based entitlements
JP6340872B2 (ja) * 2014-03-31 2018-06-13 富士通株式会社 購入制御装置、購入制御方法及び購入制御プログラム
CN104035797A (zh) * 2014-06-13 2014-09-10 四川长虹电器股份有限公司 应用程序的分发方法和应用程序的接收方法
US10019558B2 (en) * 2016-05-18 2018-07-10 Adobe Systems Incorporated Controlling licensable features of software using access tokens
US10510020B2 (en) 2018-03-30 2019-12-17 Bluebird Labs, Inc. Semantics data processing
US10404757B1 (en) * 2018-06-21 2019-09-03 Bluebird Labs, Inc. Privacy enforcement in the storage and access of data in computer systems

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002092225A (ja) * 2000-09-19 2002-03-29 Seiko Epson Corp ネットワークを利用した顧客管理システム、顧客管理方法および情報記録媒体
JP2002157037A (ja) * 2000-11-21 2002-05-31 Fujitsu Ltd ライセンス管理方法及びライセンス管理システム
JP2002539515A (ja) * 1999-03-12 2002-11-19 カール・コーポレイション コンテンツをライセンシングするシステムおよび方法

Family Cites Families (131)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3718906A (en) 1971-06-01 1973-02-27 R Lightner Vending system for remotely accessible stored information
FR2448825A1 (fr) 1979-02-06 1980-09-05 Telediffusion Fse Systeme de transmission d'information entre un centre d'emission et des postes recepteurs, ce systeme etant muni d'un moyen de controle de l'acces a l'information transmise
FR2523745B1 (fr) 1982-03-18 1987-06-26 Bull Sa Procede et dispositif de protection d'un logiciel livre par un fournisseur a un utilisateur
JPS58196404A (ja) * 1982-05-11 1983-11-15 Mitsutoyo Mfg Co Ltd タッチ信号プロ−ブ
US4528643A (en) 1983-01-10 1985-07-09 Fpdc, Inc. System for reproducing information in material objects at a point of sale location
US4527508A (en) * 1983-05-11 1985-07-09 Mcgraw-Edison Company Hoist-type material finishing line
US4658093A (en) 1983-07-11 1987-04-14 Hellman Martin E Software distribution system
US5103392A (en) 1983-10-05 1992-04-07 Fujitsu Limited System for storing history of use of programs including user credit data and having access by the proprietor
US4977594A (en) 1986-10-14 1990-12-11 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US5050213A (en) 1986-10-14 1991-09-17 Electronic Publishing Resources, Inc. Database usage metering and protection system and method
US4827508A (en) 1986-10-14 1989-05-02 Personal Library Software, Inc. Database usage metering and protection system and method
US4916738A (en) 1986-11-05 1990-04-10 International Business Machines Corp. Remote access terminal security
US5117457A (en) 1986-11-05 1992-05-26 International Business Machines Corp. Tamper resistant packaging for information protection in electronic circuitry
US5109413A (en) 1986-11-05 1992-04-28 International Business Machines Corporation Manipulating rights-to-execute in connection with a software copy protection mechanism
US4926479A (en) 1988-04-29 1990-05-15 Massachusetts Institute Of Technology Multiprover interactive verification system
US4953209A (en) 1988-10-31 1990-08-28 International Business Machines Corp. Self-verifying receipt and acceptance system for electronically delivered data objects
US5103476A (en) 1990-11-07 1992-04-07 Waite David P Secure system for activating personal computer software at remote locations
US5222134A (en) 1990-11-07 1993-06-22 Tau Systems Corporation Secure system for activating personal computer software at remote locations
WO1992020021A1 (en) 1991-05-08 1992-11-12 Digital Equipment Corporation License management system
US5940504A (en) 1991-07-01 1999-08-17 Infologic Software, Inc. Licensing management system and method in which datagrams including an address of a licensee and indicative of use of a licensed product are sent from the licensee's site
US5956505A (en) 1991-12-24 1999-09-21 Pitney Bowes Inc. Remote activation of software features in a data processing device
US5261002A (en) 1992-03-13 1993-11-09 Digital Equipment Corporation Method of issuance and revocation of certificates of authenticity used in public key networks and other systems
US5193573A (en) 1992-06-15 1993-03-16 Chronister Clyde H Ball valve having replaceable seals under full service pressure
IL107044A0 (en) 1992-09-21 1993-12-28 Uniloc Singapore Private Ltd System for software registration
US5319705A (en) 1992-10-21 1994-06-07 International Business Machines Corporation Method and system for multimedia access control enablement
US5509070A (en) 1992-12-15 1996-04-16 Softlock Services Inc. Method for encouraging purchase of executable and non-executable software
US5835911A (en) 1994-02-08 1998-11-10 Fujitsu Limited Software distribution and maintenance system and method
US5473692A (en) 1994-09-07 1995-12-05 Intel Corporation Roving software license for a hardware agent
US5715314A (en) 1994-10-24 1998-02-03 Open Market, Inc. Network sales system
US5629980A (en) 1994-11-23 1997-05-13 Xerox Corporation System for controlling the distribution and use of digital works
US5634012A (en) 1994-11-23 1997-05-27 Xerox Corporation System for controlling the distribution and use of digital works having a fee reporting mechanism
US5715403A (en) 1994-11-23 1998-02-03 Xerox Corporation System for controlling the distribution and use of digital works having attached usage rights where the usage rights are defined by a usage rights grammar
US5638443A (en) 1994-11-23 1997-06-10 Xerox Corporation System for controlling the distribution and use of composite digital works
JPH08263438A (ja) 1994-11-23 1996-10-11 Xerox Corp ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法
SE504085C2 (sv) 1995-02-01 1996-11-04 Greg Benson Sätt och system för att hantera dataobjekt i enlighet med förutbestämda villkor för användare
CN100452071C (zh) 1995-02-13 2009-01-14 英特特拉斯特技术公司 用于安全交易管理和电子权利保护的系统和方法
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5809144A (en) 1995-08-24 1998-09-15 Carnegie Mellon University Method and apparatus for purchasing and delivering digital goods over a network
US5710887A (en) 1995-08-29 1998-01-20 Broadvision Computer system and method for electronic commerce
US5765152A (en) 1995-10-13 1998-06-09 Trustees Of Dartmouth College System and method for managing copyrighted electronic media
WO1997025798A1 (en) 1996-01-11 1997-07-17 Mrj, Inc. System for controlling access and distribution of digital property
JP3486043B2 (ja) 1996-03-11 2004-01-13 株式会社東芝 ソフトウエア流通システムの動作方法及びソフトウエアシステム
US5673316A (en) 1996-03-29 1997-09-30 International Business Machines Corporation Creation and distribution of cryptographic envelope
US5933646A (en) 1996-05-10 1999-08-03 Apple Computer, Inc. Software manager for administration of a computer operating system
EP0898777B1 (en) 1996-05-15 2007-04-11 Intertrust Technologies Corp Method and apparatus for accessing content stored on a dvd
US6125352A (en) 1996-06-28 2000-09-26 Microsoft Corporation System and method for conducting commerce over a distributed network
AU7106296A (en) 1996-09-04 1998-03-26 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
US5953420A (en) 1996-10-25 1999-09-14 International Business Machines Corporation Method and apparatus for establishing an authenticated shared secret value between a pair of users
US6523119B2 (en) 1996-12-04 2003-02-18 Rainbow Technologies, Inc. Software protection device and method
US6073124A (en) 1997-01-29 2000-06-06 Shopnow.Com Inc. Method and system for securely incorporating electronic information into an online purchasing application
US5920861A (en) 1997-02-25 1999-07-06 Intertrust Technologies Corp. Techniques for defining using and manipulating rights management data structures
US5984508A (en) 1997-06-18 1999-11-16 Aveo, Inc. System, method and article of manufacture for product return of software and other information
US6233567B1 (en) 1997-08-29 2001-05-15 Intel Corporation Method and apparatus for software licensing electronically distributed programs
US6681017B1 (en) 1997-09-03 2004-01-20 Lucent Technologies Inc. Simplified secure shared key establishment and data delivery protocols for electronic commerce
US6289452B1 (en) 1997-11-07 2001-09-11 Cybersource Corporation Method and system for delivering digital products electronically
US6078909A (en) 1997-11-19 2000-06-20 International Business Machines Corporation Method and apparatus for licensing computer programs using a DSA signature
US6094487A (en) 1998-03-04 2000-07-25 At&T Corporation Apparatus and method for encryption key generation
US6189146B1 (en) 1998-03-18 2001-02-13 Microsoft Corporation System and method for software licensing
US6118873A (en) 1998-04-24 2000-09-12 International Business Machines Corporation System for encrypting broadcast programs in the presence of compromised receiver devices
US6243480B1 (en) 1998-04-30 2001-06-05 Jian Zhao Digital authentication with analog documents
US6219652B1 (en) 1998-06-01 2001-04-17 Novell, Inc. Network license authentication
US6226618B1 (en) 1998-08-13 2001-05-01 International Business Machines Corporation Electronic content delivery system
US6299889B1 (en) 1998-09-10 2001-10-09 Avon Products, Inc. Stable ascorbic acid preparation for topical use
JP4527882B2 (ja) 1998-10-07 2010-08-18 アドビ・システムズ・インコーポレーテッド データ項目に対するアクセスを配布する方法及びシステム
US6330670B1 (en) 1998-10-26 2001-12-11 Microsoft Corporation Digital rights management operating system
US7194092B1 (en) 1998-10-26 2007-03-20 Microsoft Corporation Key-based secure storage
US6343280B2 (en) 1998-12-15 2002-01-29 Jonathan Clark Distributed execution software license server
AU2515800A (en) 1999-01-26 2000-08-07 Infolio, Inc. Universal mobile id system and method for digital rights management
GB2346989A (en) 1999-02-19 2000-08-23 Ibm Software licence management system uses clustered licence servers
US7073063B2 (en) 1999-03-27 2006-07-04 Microsoft Corporation Binding a digital license to a portable device or the like in a digital rights management (DRM) system and checking out/checking in the digital license to/from the portable device or the like
US20020019814A1 (en) 2001-03-01 2002-02-14 Krishnamurthy Ganesan Specifying rights in a digital rights license according to events
US20020012432A1 (en) 1999-03-27 2002-01-31 Microsoft Corporation Secure video card in computing device having digital rights management (DRM) system
US7024393B1 (en) 1999-03-27 2006-04-04 Microsoft Corporation Structural of digital rights management (DRM) system
US7103574B1 (en) 1999-03-27 2006-09-05 Microsoft Corporation Enforcement architecture and method for digital rights management
US7225333B2 (en) 1999-03-27 2007-05-29 Microsoft Corporation Secure processor architecture for use with a digital rights management (DRM) system on a computing device
EP1076279A1 (en) 1999-08-13 2001-02-14 Hewlett-Packard Company Computer platforms and their methods of operation
US7716348B1 (en) * 1999-09-03 2010-05-11 Safenet, Inc. License management system and method with license balancing
AU1943801A (en) 1999-12-03 2001-06-12 Mario Kovac System and method for secure electronic digital rights management, secure transaction management and content distribution
JP4120125B2 (ja) 2000-02-01 2008-07-16 富士ゼロックス株式会社 利用許可証発行装置および方法
PL356446A1 (en) 2000-02-05 2004-06-28 Diebold, Incorporated System and method for dispensing digital information from an automated transaction machine
KR100382668B1 (ko) 2000-02-14 2003-05-09 차희장 지적재산권 분할거래 시스템 및 방법
WO2001077795A2 (en) 2000-04-07 2001-10-18 Viatech Technologies Inc. System and embedded license control mechanism for the creation and distribution of digital content files and enforcement of licensed use of the digital content files
US7149721B1 (en) 2000-09-05 2006-12-12 Adobe Systems Incorporated Electronic content rights with and-or expression
US7143289B2 (en) 2000-10-30 2006-11-28 Geocodex Llc System and method for delivering encrypted information in a communication network using location identity and key tables
US20040193545A1 (en) * 2000-10-30 2004-09-30 Gady Shlasky Method and system for digital licensing distribution
JP2002141895A (ja) 2000-11-01 2002-05-17 Sony Corp コンテンツ配信システムおよびコンテンツ配信方法
US6810389B1 (en) * 2000-11-08 2004-10-26 Synopsys, Inc. System and method for flexible packaging of software application licenses
JP4185363B2 (ja) 2001-02-22 2008-11-26 ビーイーエイ システムズ, インコーポレイテッド トランザクション処理システムにおけるメッセージ暗号化及び署名のためのシステム及び方法
US7134144B2 (en) 2001-03-01 2006-11-07 Microsoft Corporation Detecting and responding to a clock rollback in a digital rights management system on a computing device
MXPA03008341A (es) 2001-03-14 2003-12-11 United Parcel Service Inc Sistemas y metodos para iniciar devoluciones en una red.
GB2373605B (en) 2001-03-23 2005-04-27 Ibm A method of metering use of digitally encoded products
US7065507B2 (en) 2001-03-26 2006-06-20 Microsoft Corporation Supervised license acquisition in a digital rights management system on a computing device
US6993664B2 (en) * 2001-03-27 2006-01-31 Microsoft Corporation Method and system for licensing a software product
US20020141582A1 (en) 2001-03-28 2002-10-03 Kocher Paul C. Content security layer providing long-term renewable security
US20030182236A1 (en) 2001-03-29 2003-09-25 Koichi Tanaka Information processor
ATE364202T1 (de) 2001-04-02 2007-06-15 Motorola Inc Aktivieren und deaktivieren von softwarefunktionen
IL142487A0 (en) 2001-04-05 2003-09-17 Hexalock Ltd Method and system for protecting data
US7203966B2 (en) 2001-06-27 2007-04-10 Microsoft Corporation Enforcement architecture and method for digital rights management system for roaming a license to a plurality of user devices
US6948073B2 (en) 2001-06-27 2005-09-20 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US7239708B2 (en) 2001-06-27 2007-07-03 Microsoft Corporation Protecting decrypted compressed content and decrypted decompressed content at a digital rights management client
US7224805B2 (en) 2001-07-06 2007-05-29 Nokia Corporation Consumption of content
WO2003017559A2 (en) 2001-08-13 2003-02-27 Board Of Trustees Of The Leland Stanford Junior University Systems and methods for identity-based encryption and related cryptographic techniques
US7840488B2 (en) * 2001-11-20 2010-11-23 Contentguard Holdings, Inc. System and method for granting access to an item or permission to use an item based on configurable conditions
US7080043B2 (en) 2002-03-26 2006-07-18 Microsoft Corporation Content revocation and license modification in a digital rights management (DRM) system on a computing device
US7395438B2 (en) 2002-04-16 2008-07-01 Microsoft Corporation Digital rights management (DRM) encryption and data-protection for content on device without interactive authentication
US7272858B2 (en) 2002-04-16 2007-09-18 Microsoft Corporation Digital rights management (DRM) encryption and data-protection for content on a relatively simple device
US7346552B1 (en) * 2002-04-24 2008-03-18 Cauldron Solutions, Llc System and method for the enablement of electronic commerce in a content network
US7680743B2 (en) 2002-05-15 2010-03-16 Microsoft Corporation Software application protection by way of a digital rights management (DRM) system
US20030233573A1 (en) 2002-06-18 2003-12-18 Phinney Thomas L. System and method for securing network communications
US7296154B2 (en) 2002-06-24 2007-11-13 Microsoft Corporation Secure media path methods, systems, and architectures
US7152243B2 (en) 2002-06-27 2006-12-19 Microsoft Corporation Providing a secure hardware identifier (HWID) for use in connection with digital rights management (DRM) system
US7174021B2 (en) 2002-06-28 2007-02-06 Microsoft Corporation Systems and methods for providing secure server key operations
US20040027377A1 (en) 2002-08-06 2004-02-12 Grace Hays User interface design and validation including dynamic data
US7707116B2 (en) * 2002-08-30 2010-04-27 Avaya Inc. Flexible license file feature controls
US7698225B2 (en) 2002-08-30 2010-04-13 Avaya Inc. License modes in call processing
WO2004025431A2 (en) * 2002-09-16 2004-03-25 Yahoo! Inc. On-line software rental
KR20040038456A (ko) 2002-11-01 2004-05-08 한국전자통신연구원 홈 서버 컨텐츠 공유가 가능한 디알엠 장치 및 방법
US20040088730A1 (en) * 2002-11-01 2004-05-06 Srividya Gopalan System and method for maximizing license utilization and minimizing churn rate based on zero-reject policy for video distribution
US20040088541A1 (en) 2002-11-01 2004-05-06 Thomas Messerges Digital-rights management system
JP3889004B2 (ja) 2003-01-27 2007-03-07 松下電器産業株式会社 デジタルコンテンツ配信システム
KR20060004657A (ko) * 2003-04-11 2006-01-12 마쯔시다덴기산교 가부시키가이샤 복합 디지털 콘텐츠의 플렉서블 라이센싱 장치 및 방법
US7831457B2 (en) * 2003-06-17 2010-11-09 Satyam Computer Services Limited Of Mayfair Center System and method for maximizing software package license utilization
US7552093B2 (en) * 2003-12-04 2009-06-23 Black Duck Software, Inc. Resolving license dependencies for aggregations of legally-protectable content
US20050132347A1 (en) * 2003-12-15 2005-06-16 Harper Eric D. System for controlling the use of a software application on a plurality of computers
JP4321334B2 (ja) * 2004-04-09 2009-08-26 ソニー株式会社 ライセンス作成装置,ライセンス作成方法およびコンピュータプログラム
US20050289072A1 (en) * 2004-06-29 2005-12-29 Vinay Sabharwal System for automatic, secure and large scale software license management over any computer network
US7860802B2 (en) 2005-02-01 2010-12-28 Microsoft Corporation Flexible licensing architecture in content rights management systems
US7890428B2 (en) 2005-02-04 2011-02-15 Microsoft Corporation Flexible licensing architecture for licensing digital application
US7516452B1 (en) * 2005-03-31 2009-04-07 Emc Corporation Method and system for managing installation of software on a computer system platform
US7337147B2 (en) * 2005-06-30 2008-02-26 Microsoft Corporation Dynamic digital content licensing
US7805616B1 (en) * 2007-03-30 2010-09-28 Netapp, Inc. Generating and interpreting secure and system dependent software license keys

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002539515A (ja) * 1999-03-12 2002-11-19 カール・コーポレイション コンテンツをライセンシングするシステムおよび方法
JP2002092225A (ja) * 2000-09-19 2002-03-29 Seiko Epson Corp ネットワークを利用した顧客管理システム、顧客管理方法および情報記録媒体
JP2002157037A (ja) * 2000-11-21 2002-05-31 Fujitsu Ltd ライセンス管理方法及びライセンス管理システム

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008186322A (ja) * 2007-01-31 2008-08-14 Hitachi Ltd アプリケーションとデータの管理方法、管理システム、それに用いられるシンクライアント端末、管理サーバ、および、リモート計算機
WO2011055836A1 (en) * 2009-11-04 2011-05-12 Ricoh Company, Ltd. License management system, sales management apparatus, and license management apparatus
JP2011100226A (ja) * 2009-11-04 2011-05-19 Ricoh Co Ltd ライセンス管理システム、販売管理装置、ライセンス管理装置、ライセンス管理方法、及びプログラム

Also Published As

Publication number Publication date
NO20075147L (no) 2007-11-20
US20060242081A1 (en) 2006-10-26
US8091142B2 (en) 2012-01-03
ZA200708860B (en) 2009-03-25
IL186357A0 (en) 2008-01-20
RU2007139588A (ru) 2009-04-27
MX2007013355A (es) 2008-01-11
CN101167072A (zh) 2008-04-23
WO2006115523A1 (en) 2006-11-02
BRPI0520064A2 (pt) 2009-04-14
KR20070122508A (ko) 2007-12-31
EP1875383A1 (en) 2008-01-09
AU2005331046A1 (en) 2006-11-02
CA2606098A1 (en) 2006-11-02

Similar Documents

Publication Publication Date Title
US8091142B2 (en) Supplementary trust model for software licensing/commercial digital distribution policy
US8700533B2 (en) Authenticating licenses for legally-protectable content based on license profiles and content identifiers
EP1465040B1 (en) Issuing a publisher use licence off-line in a digital rights management (DRM) System
RU2421808C2 (ru) Цифровое приложение, работающее согласно агрегации множества лицензий
RU2348073C2 (ru) Регистрация/субрегистрация сервера управления цифровыми правами (уцп) в архитектуре уцп
RU2392659C2 (ru) Гибкая архитектура лицензирования в системе управления авторским правом
JP4880331B2 (ja) アクセス管理システム等におけるリソース等にアクセスする権限の委任
NO333104B1 (no) Sikker arkitektur med server-plugins for administrasjonssystemer for digitale rettigheter
CN111460400A (zh) 一种数据处理方法、装置及计算机可读存储介质
CA2547713A1 (en) System and methods for resolving license dependencies and for authenticating licenses

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110408

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20110906

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110908