JP3703095B2 - ディジタル・エンコードされた製品の使用を制御する方法 - Google Patents

ディジタル・エンコードされた製品の使用を制御する方法 Download PDF

Info

Publication number
JP3703095B2
JP3703095B2 JP2002080368A JP2002080368A JP3703095B2 JP 3703095 B2 JP3703095 B2 JP 3703095B2 JP 2002080368 A JP2002080368 A JP 2002080368A JP 2002080368 A JP2002080368 A JP 2002080368A JP 3703095 B2 JP3703095 B2 JP 3703095B2
Authority
JP
Japan
Prior art keywords
computer
product
customer
issuer
adjustment information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2002080368A
Other languages
English (en)
Other versions
JP2003015760A (ja
Inventor
ジョルジョ・コニーニ
アレッソ・プレシュッティ
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines 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 International Business Machines Corp filed Critical International Business Machines Corp
Publication of JP2003015760A publication Critical patent/JP2003015760A/ja
Application granted granted Critical
Publication of JP3703095B2 publication Critical patent/JP3703095B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • 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/2135Metering

Description

【0001】
【発明の属する技術分野】
本発明は、ディジタル・エンコードされた製品の使用を制御する方法に関する。
【0002】
【従来の技術】
ソフトウェア・プログラムなどのディジタル・エンコードされた製品は、無限回のコピーで完全に複製することができる。これは、自分の知的所有権を保護することを望む、製品の発行者にとって重要な問題であり、実際に、発行者は、通常は製品のライセンス交付された使用のそれぞれについてロイヤリティを受け取り、その結果、製品の報告されない使用または配布のすべてが、支払われないロイヤリティをもたらす。この問題は、近年、この種の製品の制御されない配布をさらに容易にするインターネットの大々的な普及によって悪化してきた。
【0003】
ディジタル・エンコードされた製品の報告されない使用を回避する最も単純な方法は、許可されないコピーおよび伝送を防ぐことである。たとえば、ほとんどのソフトウェア・プログラムが、作成できるコピーの数を制限するか、所定の時間期間が経過した後に製品の動作を不能にする、制御コードを組み込まれている。もう1つの技法は、製品を実行するためにソフトウェア・キーまたはハードウェア・キーの所有を必要とすることからなる。
【0004】
当技術分野で提案された異なる解決策は、顧客のコンピュータにライセンス交付管理システムをインストールすることであり、このシステムは、顧客コンピュータ上で稼動する製品が、発行者によって許可される使用のめいめいの条件(たとえば、製品を同時に実行できるエンド・ユーザの最大数の定義)に従うことを制御する。具体的に言うと、使用の許可された条件(機械可読形式に変換される)が、ディジタル・ライセンス証明書に組み込まれ、このディジタル・ライセンス証明書が、通常は製品に添付される。製品には、ライセンス交付管理システムへの呼出しが含まれ、その結果、エンド・ユーザが製品の実行を要求するたびに、対応する要求が、ライセンス交付管理システムに転送されるようになる。ライセンス交付管理システムは、製品の稼動が、ライセンス証明書に組み込まれた使用の条件によって示される限度内であるかどうかを検証し、検証の結果に従って製品の実行を可能にするか止める。
【0005】
【発明が解決しようとする課題】
上で説明した解決策の短所は、製品の使用の許可される条件が、ライセンス証明書が顧客コンピュータにインストールされる時に合意されなければならないので、非常に厳密であることである。したがって、顧客は、実行環境の変更が発生するたびに(製品を同時に実行するエンド・ユーザの数が増えるなど)、新しいライセンス証明書を購入することを強制される。
【0006】
新しいライセンス証明書は、たとえばインターネットを介して、オン・ラインで配布することができる。顧客は、発行者のウェブ・サイトにアクセスし、新しいライセンス証明書の特徴を指定し、その後、自分のコンピュータにライセンス証明書をダウンロードすることができる。この形で、新しいライセンス証明書を購入する処理にかかる時間が減る。しかし、この解決策では、実行環境の変化のそれぞれについて新しいライセンス証明書を購入する必要が除去されない。
【0007】
さらに、オープン・ライセンス証明書が提案された。この場合、顧客は、ライセンス証明書を実行環境に適合させるために、製品の使用の許可される条件にある変更を加えることを許可される。ライセンス証明書に対する変更は、顧客参照のために、ライセンス交付管理システムによってログ記録される。しかし、顧客は、製品の最も広い予見された使用に対応する使用の条件を組み込まれたライセンス証明書を購入することを必ず強制され、その結果、顧客は、この追加の自由に対するトレード・オフとして、より高いコストをこうむる。
【0008】
本発明の目的は、上で述べた短所を克服することである。
【0009】
【課題を解決するための手段】
この目的を達成するために、第1請求項に記載された方法を提案する。
【0010】
手短にいうと、本発明は、データ処理システム上でのディジタル・エンコードされた製品の使用を制御する方法であって、製品の使用の条件の検出のためにシステムの動作を監視するステップと、対応する時間の期間にわたる使用の検出された条件を示す調整情報をコントローラ・データ処理システムに供給するステップと、調整情報に従って、コントローラ・システムに記憶された、製品のライセンス交付条件を示すライセンス交付情報を更新するステップとを含む方法を提供する。
【0011】
さらに、この方法を実行するコンピュータ・プログラム・アプリケーション、このプログラム・アプリケーションを記憶する製品、データ処理システム上で実行するための対応するコンピュータ・プログラム、このプログラムを記憶する製品、ディジタル・エンコードされた製品の使用を制御するシステム(構造)、およびこのシステム(構造)内で使用するためのデータ処理システムも提供する。
【0012】
【発明の実施の形態】
図1を特に参照すると、ソフトウェア製品の使用を制御するライセンス交付構造100が示されている。ライセンス交付システム(構造)100には、たとえばソフトウェア製品を使用する顧客の敷地にインストールされたPC(パーソナル・コンピュータ)である、顧客コンピュータ105cが含まれる。顧客コンピュータ105cは、通信バス110cに並列に接続された、複数の装置を有する。具体的に言うと、中央処理装置(CPU)115cが、顧客コンピュータ105cの動作を制御し、作業メモリ120c(通常はDRAM)が、CPU115cによって直接使用され、読取専用メモリ(ROM)125cに、顧客コンピュータ105cを起動する基本プログラムが記憶される。さらに、さまざまな周辺装置が、通信バス110cに接続される(めいめいのインターフェースによって)。具体的に言うと、バルク・メモリは、ハード・ディスク130cと、CD−ROM140cを読み取るドライバ装置(DRV)135cからなり、顧客コンピュータ105cには、さらに、たとえばキーボードおよびマウスからなる入力装置(IN)145cと、たとえばモニタおよびプリンタからなる出力装置(OUT)150cが含まれる。ネットワーク・インターフェース・カード(NIC)155cが、通常はインターネットであるネットワーク160に顧客コンピュータ105cを接続するのに使用される。
【0013】
もう1つのコンピュータである発行者コンピュータ105pが、ソフトウェア製品の発行者の敷地にインストールされる。具体的に言うと、発行者コンピュータ105pには、通信バス110p、中央処理装置(CPU)115p、作業メモリ(DRAM)120p、読取専用メモリ(ROM)125p、ハード・ディスク130p、CD−ROM140p用のドライバ装置(DRV)135p、入力装置(IN)145p、出力装置(OUT)150p、およびネットワーク160へのアクセス用のネットワーク・インターフェース・カード(NIC)155pが含まれる。
【0014】
同様の考察が、コンピュータに異なる装置(たとえば、フロッピ(R)・ディスク用のドライバ装置)が含まれる場合、コンピュータが異なる構造を有する(マルチプロセッサ・アーキテクチャを有するなど)場合、コンピュータが、たとえば一連のダム端末を伴う集中アーキテクチャを有するか、ローカル・エリア・ネットワーク(LAN)および類似物に接続された一連のワークステーションを伴う分散アーキテクチャを有するものなど、同等のデータ処理システムによって置換される場合にあてはまる。代替案では、ライセンス交付構造に、ソフトウェア製品の流通業者またはより一般的に供給業者の敷地にインストールされたコンピュータが含まれ、ライセンス交付構造が、オーディオ記録物、ビデオ記録物、電子書籍、またはマルチメディア作品などの同等のディジタル・エンコードされた製品の使用を制御するのに使用される。図2を検討すると、動作中の発行者コンピュータおよび顧客コンピュータのめいめいの作業メモリ120pおよび120cの部分的内容が示されており、情報(プログラムおよびデータ)は、通常は、ハード・ディスクに記憶され、プログラムが稼動している時に、対応するオペレーティング・システムおよび他のアプリケーション・プログラム(この図には図示せず)と共に、作業メモリにロードされる(少なくとも部分的に)。プログラムは、当初は、顧客コンピュータおよび発行者コンピュータのハード・ディスクに、CD−ROMからインストールされる。
【0015】
ドライバ・モジュール205p(作業メモリ120p上)およびドライバ・モジュール205c(作業メモリ120c上)が、それぞれ発行者コンピュータおよび顧客コンピュータの、ネットワーク160へのアクセスを制御する。
【0016】
発行者コンピュータは、デリバリ・モジュール(DELIV)210を備え、デリバリ・モジュール210は、グローバル・ライセンス証明書(GC)215および対応するソフトウェア製品(APPL)225の製品ライセンス証明書(PC)220を生成する。グローバル・ライセンス証明書215および製品ライセンス証明書220の所有によって、顧客が、ソフトウェア製品225を使用することを許可され、異なるグローバル・ライセンス証明書215が、顧客ごとに発行され、異なる製品ライセンス証明書220が、顧客に出荷されるソフトウェア製品225ごとに発行される。
【0017】
(機密でない)公開鍵PKdおよび(機密の)秘密鍵SKdが、デリバリ・モジュール210に関連し、この鍵の対が、たとえばRSA(Rivest Shamir Adelman)タイプの、非対称暗号システムで使用される。鍵の一方(公開鍵または秘密鍵のいずれか)が、元のメッセージの暗号化すなわち、元のメッセージを明白には理解できない形に変換するのに使用され、他方の鍵が、元のメッセージを得るために、暗号化されたメッセージを復号するのに使用される。鍵は、公開鍵から秘密鍵を得ることが計算的に実現不可能になるように生成される。
【0018】
秘密鍵SKdは、デリバリ・モジュール210内で実施される。公開鍵PKdは、デリバリ・モジュール210に関連するディジタル証明書DC(PKd)(たとえばX.509標準規格に従って定義される)に含まれる。ディジタル証明書には、所有者を識別する情報(たとえば、所有者の名前、住所など)、所有者の公開鍵、および認証局(CA)の名前が含まれる。ディジタル証明書には、さらに、認証局の秘密鍵を使用して作成される、前述の情報のディジタル署名が含まれる。この形で、認証局は、秘密鍵/公開鍵対の所有者が、実際にディジタル証明書で識別される実体であることを保証する。認証局の識別は、公開鍵インフラストラクチャ(PKI)を定義するために一般に信頼される主認証局までさかのぼる、上位の認証局によって保証される。
【0019】
メッセージのディジタル署名が作成され、メッセージのハッシュ値(ディジタル指紋またはダイジェストとも称する)が生成される。ハッシュ値は、メッセージを直接エンコードするのに必要なビット数より少ない、事前に設定されたビット数からなるが、それにもかかわらず、ハッシュ値は、実質的にメッセージに対して一意である(すなわち、メッセージ内のあらゆる変更によって、異なるハッシュ値が生成される)。ハッシュ値は、一方向関数を使用して生成され、その結果、ハッシュ値からメッセージを得ることが計算的に実現不可能になる。その後、送信者の秘密鍵を用いてハッシュ値を暗号化することによって、ディジタル署名が作成される。(署名された)メッセージの受信者は、単にメッセージのハッシュ値を生成し、このハッシュ値を、送信者の公開鍵を使用してディジタル署名から抽出されたハッシュ値と比較することによって、そのメッセージを検証することができる。この形で、受信者は、元のメッセージが破壊されていないこと(保全性)と、そのメッセージが実際にディジタル証明書で識別される実体によって送信されたこと(認証性)を検証する。
【0020】
発行者コンピュータには、さらに、顧客データベース(INV)230が記憶され、顧客データベース230には、顧客の名前、住所、VAT番号、支払いの条件、および類似物などの、各顧客を識別する情報が含まれる。さらに、顧客データベース230には、顧客コンピュータにインストールされたソフトウェア製品ごとに、諸条件、価格設定ポリシ、およびソフトウェア製品の使用の(許可される)条件などの、めいめいのライセンス交付情報が含まれる。諸条件では、ソフトウェア製品を顧客コンピュータ上で使用でき、おそらくはさらに配布できる方法が定義され、価格設定ポリシでは、ソフトウェア製品の使用に関して顧客に請求する方法が定義される。たとえば、顧客は、ソフトウェア製品を同時に稼動させるエンド・ユーザの最大数に従って、ソフトウェア製品を実行するCPUの計算能力に従って、顧客コンピュータに接続される端末の数に従って、などの形で請求される。
【0021】
デリバリ・モジュール210は、新しいグローバル・ライセンス証明書215または新しい製品ライセンス証明書220が顧客に出荷されるたびに、顧客データベース230に情報を入力する。顧客データベース230内の情報は、調整モジュール(RECON)235の制御下で更新される。秘密鍵SKrが、調整モジュール235内で実施される。対応する公開鍵PKrは、調整モジュール235に関連するディジタル証明書DC(PKr)に含まれ、ディジタル証明書DC(PKr)は、デリバリ・モジュール210によってアクセスされる。調整モジュール235は、ネットワーク160を介して顧客コンピュータと情報を交換するために、ドライバ・モジュール205pと通信する。
【0022】
グローバル・ライセンス証明書215およびめいめいの製品ライセンス証明書220を伴うソフトウェア製品225が、顧客コンピュータにインストールされる。ソフトウェア製品225は、ライセンス交付管理モジュール245と通信し、ライセンス交付管理モジュール245は、グローバル・ライセンス証明書215および製品ライセンス証明書220にアクセスする。秘密鍵SKlが、ライセンス交付管理モジュール245内で実施され、対応する公開鍵PKlは、ライセンス交付管理モジュール245に関連するディジタル証明書DC(PKl)に含まれる。
【0023】
ライセンス交付管理モジュール245は、ソフトウェア製品225の使用の(実際の)条件に依存する現在のライセンス交付情報が記憶されるライセンス状況ファイル(STS)250と、一連のログ・レコード(LOG)255とを管理し、ログ・レコード255のそれぞれには、めいめいの順次識別子を用いてタグが付けられ、ソフトウェア製品225の使用の条件の変更(顧客コンピュータでのライセンス証明書のインストールまたは除去、エンド・ユーザのログインまたはログオフ、またはCPUのアップグレードなど)に関する情報が記憶される。スケジューラ(SCHED)260が、たとえば毎月、グローバル・ライセンス証明書215に含まれる情報に従って、ライセンス交付管理モジュール245を活動化する。(機密の)対称鍵SKが、ランダマイザ(RDM)265によって生成され、ライセンス交付管理モジュール245に供給される。対称鍵SKは、元のメッセージの暗号化と、元のメッセージを得るための暗号化されたメッセージの復号の両方に使用される。
【0024】
ライセンス交付管理モジュール245は、一連の調整メッセージ(RECON)270を作成する。調整メッセージ270は、顧客インターフェース(CUST_ITF)275によってアクセスされる。秘密鍵SKcが、顧客インターフェース275で実施され、対応する公開鍵PKcは、顧客インターフェース275に関連するディジタル証明書DC(PKc)に含まれる。
【0025】
調整メッセージ270は、ドライバ・モジュール205cにも供給され、その後、ネットワーク160を介して調整モジュール235に送信される。調整モジュール235は、調整メッセージ270のそれぞれに応答して受信メッセージ(ACK)280を作成する。受信メッセージ280は、ドライバ・モジュール205pに供給され、ネットワーク160を介してライセンス交付管理モジュール245に送り返される。
【0026】
同様の考察が、プログラム・アプリケーション全体(顧客コンピュータ上のプログラムおよび発行者コンピュータ上のプログラム)および対応するデータが、異なる形で構成される場合、他のモジュールまたは機能が想定される場合などにあてはまる。
【0027】
図3からわかるように、グローバル・ライセンス証明書215には、セクションINFOが含まれ、このセクションINFOには、証明書の識別子、発行者の識別子、顧客コンピュータ上でログ記録されなければならない一般的な情報のリスト、調整メッセージを送信するための発行者コンピュータのアドレス(電子メール・アドレスなど)、および調整メッセージの送信の頻度が含まれる。グローバル・ライセンス証明書215には、さらに、調整モジュール235の公開鍵PKrが含まれ、この公開鍵PKrは、対応するディジタル証明書DC(PKr)から抽出される。グローバル・ライセンス証明書215は、デリバリ・モジュール210によって作成され、その後、対応する秘密鍵SKdを使用して署名される。デリバリ・モジュール210に関連するディジタル署名SIGN(SKd)およびディジタル証明書DC(PKd)が、グローバル・ライセンス証明書215に付加される。ライセンス交付管理モジュール245が、グローバル・ライセンス証明書215を検証するために、対応するディジタル証明書DC(PKd)からデリバリ・モジュール210の公開鍵PKdを抽出し、ディジタル署名SIGN(SKd)を検証する。ディジタル証明書DC(PKr)全体ではなく公開鍵PKrだけが、グローバル・ライセンス証明書に含まれることに留意されたい。実際、ディジタル署名SIGN(SKd)およびディジタル証明書DC(PKd)によって、すでに、公開鍵PKrが破壊されていないことと、それが実際に発行者によって供給されたことが保証されている。
【0028】
類似する形で(図4を参照されたい)、製品ライセンス証明書220に、セクションINFOが含まれ、このセクションINFOに、証明書の識別子、発行者の識別子、発行者によって当初に許可されためいめいのソフトウェア製品の使用の基本条件、使用の基本条件に対する許可される変更のリスト、および特定のソフトウェア製品について顧客コンピュータ上でログ記録されなければならない情報のリストが含まれる。製品ライセンス証明書220は、デリバリ・モジュール210によって作成され、その後、対応する秘密鍵SKdを使用して署名される。デリバリ・モジュール210に関連するディジタル署名SIGN(SKd)およびディジタル証明書DC(PKd)が、製品ライセンス証明書220に付加される。ライセンス交付管理モジュール245は、製品ライセンス証明書220を検証するために、対応するディジタル証明書DC(PKd)からデリバリ・モジュール210の公開鍵PKdを抽出し、ディジタル署名SIGN(SKd)を検証する。
【0029】
図5に移ると、調整メッセージ270に、セクションHEADERが含まれ、このセクションHEADERに、ライセンス交付管理システムの識別子、発行者の識別子、顧客コンピュータにインストールされたグローバル・ライセンス証明書の識別子、および作成の時刻を示すタイムスタンプが含まれる。セクションBODYに、状況情報ファイル、ログ・レコード、顧客コンピュータに関する追加情報(コンピュータのタイプおよび作業メモリの容量など)、および受信メッセージを送り返すための顧客コンピュータのアドレス(電子メール・アドレスなど)が含まれる。セクションBODYは、ランダマイザ265によって供給される対称鍵SKを用いて暗号化される。調整メッセージ270には、さらに、グローバル・ライセンス証明書215から抽出される、調整モジュール235の公開鍵PKrを用いて暗号化された対称鍵SKと、対応するディジタル証明書DC(PKc)から抽出される、顧客インターフェース275の公開鍵PKcを用いて暗号化された対称鍵SKが含まれる。
【0030】
調整メッセージ270は、ライセンス交付管理モジュール245によって作成され、その後、対応する秘密鍵SKlを使用して署名される。ライセンス交付管理モジュール245に関連するディジタル署名SIGN(SKl)およびディジタル証明書DC(PKl)が、調整メッセージ270に付加される。また、調整メッセージ270は、顧客インターフェース275によって、対応する秘密鍵SKcを使用して署名される。顧客インターフェース275に関連するディジタル署名SIGN(SKc)およびディジタル証明書DC(PKc)が、さらに、調整メッセージ270に付加される。調整モジュール235が、調整メッセージ270を検証するために、ライセンス交付管理モジュール245の公開鍵PKlを、対応するディジタル証明書DC(PKl)から抽出し、ディジタル署名SIGN(SKl)を検証する。さらに、調整モジュール235が、調整メッセージ270をさらに検証するために、顧客インターフェース275の公開鍵PKcを、対応するディジタル証明書DC(PKc)から抽出し、ディジタル署名SIGN(SKc)を検証する。調整モジュール235は、めいめいの秘密鍵SKrを使用して対称鍵SKを復号し、その後、そうして得られた対称鍵SKを使用してセクションBODYを復号する。
【0031】
図6からわかるように、受信メッセージ280には、セクションINFOが含まれ、このセクションINFOに、発行者の識別子、ライセンス交付管理モジュールの識別子、および対応する調整メッセージで受信されるログ・レコードの範囲が含まれる。受信メッセージ280は、調整モジュール235によって作成され、その後、対応する秘密鍵SKrを使用して署名される(SIGN(SKr))。ライセンス交付管理モジュール245は、受信メッセージ280を検証するために、調整モジュール235の公開鍵PKrをグローバル・ライセンス証明書215から抽出し、その後、ディジタル署名SIGN(SKr)を検証する。
【0032】
同様の考察が、上で説明したデータ構造に異なる情報が含まれる場合、それらが異なるパターンを有する場合、公開鍵が保護された通信チャネルを介して配布される(ディジタル証明書なしで)場合などにあてはまる。
【0033】
図7ないし9からわかるように、一緒になって方法400を構成する一連のルーチンが、顧客コンピュータにインストールされたソフトウェア製品の使用を制御するために、時間的に連続するステージで実行される。この方法は、ブロック403で開始され、ブロック406に移り、ここで、顧客が発行者に初めて登録する時に、デリバリ・モジュールによって顧客データベースに新しい項目が追加される。その後、デリバリ・モジュールは、ブロック409で、顧客のグローバル・ライセンス証明書を作成する。次にブロック412を検討すると、デリバリ・モジュールが、ソフトウェア製品が顧客によって初めて要求される時に、ソフトウェア製品の製品ライセンス証明書を作成する。ブロック415に進んで、グローバル・ライセンス証明書、製品ライセンス証明書、およびソフトウェア製品が、顧客に出荷され(たとえばネットワークを介して)、顧客のコンピュータにインストールされる(必要な場合にはライセンス交付管理モジュールと共に)。
【0034】
ライセンス交付管理モジュールは、ブロック418で、ソフトウェア製品の実行が、顧客コンピュータ上でエンド・ユーザによって要求されたかどうかを検査する。そうでない場合には、この方法は、ブロック421(下で説明する)へ継続する。その逆の場合には、ブロック424で、グローバル・ライセンス証明書およびソフトウェア製品に関連する製品ライセンス証明書に対する検査を行う。
有効なライセンス証明書が顧客コンピュータにインストールされている場合には、ライセンス交付管理モジュールが、ブロック427でソフトウェア製品の実行を可能にする。そうでない場合には、ブロック430で、ソフトウェア製品の実行が打ち切られ、この方法は、エラー状態(通常は、発行者の側でのさらなる分析のためにログ記録される)に入る。どちらの場合でも、この方法は、ブロック421へ継続する。ブロック421を検討すると、この方法は、ソフトウェア製品の使用の条件の変更が発生したかどうかを検査する。そうでない場合には、この方法は、ブロック433(下で説明する)へ移る。その逆の場合には、対応するイベント(製品ライセンス証明書で示される、顧客コンピュータ上でログ記録されなければならない情報のリストに含まれるタイプの場合に)が、ブロック439で、ライセンス交付管理モジュールによって記録され、署名される。こうして得られた要素が、ブロック441で、新しいログ・レコードとして記憶される。その後、ブロック444で、記録されたイベントに、たとえば、ソフトウェア製品を同時に実行することを許可されるエンド・ユーザの最大数に達した後に、さらなるエンド・ユーザがソフトウェア製品の使用を開始したのでなど、ソフトウェア製品の現在のライセンス交付条件の変更が伴うかどうかの検査が行われる。そうである場合には、ブロック447で状況情報ファイルをそれに応じて更新し、その後、この方法は、ブロック433に進む。そうでない場合には、この方法はブロック433に直接に継続する。
【0035】
次にブロック433を検討すると、スケジューラが、現在時刻(顧客コンピュータの内部クロックによって提供される)を検査する。現在時刻が、発行者コンピュータへの調整メッセージの送信について計画された時刻に対応しない場合には、ライセンス交付管理モジュールは、ブロック448(下で説明する)に進む。逆に、スケジューラが、現在時刻が供給業者コンピュータへの調整メッセージの送信について計画された時刻に対応することを検証する場合には、ブロック450で、ランダマイザが新しい対称鍵SKを生成する。ブロック453に移って、調整メッセージのセクションBODYを、対称鍵SKを用いて暗号化する。ブロック456で、対称鍵SKを、顧客インターフェースの公開鍵PKcと、調整モジュールの公開鍵PKrとを用いて暗号化する。ブロック459で、ライセンス交付管理モジュールおよび顧客インターフェースが、調整メッセージの内容に署名し、ブロック462で、調整メッセージ全体を、供給業者コンピュータに送信する。
【0036】
ブロック465で、調整モジュールが、調整メッセージを検証する。調整メッセージが検証されない(たとえば、その内容が破壊されているか、ディジタル署名が偽造されているので)場合に、この方法は、ブロック468でエラー状態に入り、ブロック448に直接に進む。逆の場合には、この方法は、ブロック471に移り、調整モジュールが、対称鍵SK(めいめいの秘密鍵SKrを使用して復号される)を使用して調整メッセージのセクションBODYを復号する。ブロック474で、1つまたは複数のログ・レコードが調整メッセージに欠けているかどうかの検査を行う(めいめいの順次識別子を走査することによって)。欠けているログ・レコードがない場合には、ブロック477で、受信したログ・レコードに従って(たとえば、対応する期間中にソフトウェア製品を同時に稼動させたエンド・ユーザの最大数を判定するなど)顧客データ・ベースを更新する。逆の場合には、ブロック480で、状況ファイルに従って顧客データ・ベースを更新し、エラー状態に入る(状況ファイルも欠けている場合には、顧客データ・ベースを、発行者によって最初に許可された使用の基本条件または使用可能な最後の状況ファイルに復元する)。
【0037】
どちらの場合でも、この方法は、ブロック483に進み、調整モジュールが、対応する受信メッセージを作成し、署名する。ブロック486で、受信メッセージを顧客コンピュータに送信する。ブロック489で、ライセンス交付管理モジュールが、受信メッセージを検証する。受信メッセージが検証される場合には、この方法はブロック492に移り、受信メッセージで識別されログ・レコードを削除する。逆の場合には、この方法は、ブロック495でエラー状態に入る。どちらの場合でも、この方法はブロック448に進む。
【0038】
ブロック448を検討すると、顧客コンピュータがシャット・ダウンされたかどうかの検査が行われる。そうでない場合には、この方法は、ブロック418に戻る(上で説明したステップを繰り返す)。逆の場合には、この方法は、最終ブロック498で終了する。
【0039】
同様の考察が、同等の方法が実行される場合、たとえばソフトウェア製品とめいめいのライセンス証明書が別々に配布される場合、ソフトウェア製品の実行が必ず使用可能にされる(有効なライセンス証明書がインストールされていない場合であっても)場合、ソフトウェア製品の実行が、検証エラーが発生する時に打ち切られる場合、方法が、上で説明した動作を並列に実行する複数の並列処理を用いて実施される場合、調整メッセージが、異なる頻度で(たとえば3カ月ごとまたは6カ月ごと)発行者コンピュータに送信される場合などにあてはまる。同様に、複数のソフトウェア製品の使用が、同時に制御されるか、顧客コンピュータの動作が、異なる形で監視されるか、同等の調整情報が、発行者に供給されるか、調整情報が、FTP(ファイル転送プロトコル)サイトに送信されるか、フロッピ(R)・ディスクに記憶され、郵送によって発行者に送られる。
【0040】
より一般的に、本発明は、データ処理システム上でソフトウェア製品(または、同等のディジタル・エンコードされた製品)の使用を制御する方法を提供する。この方法には、製品の使用の条件を検出するためにシステムの動作を監視するステップと、対応する時間の期間にわたる使用の検出された条件を示す調整情報をコントローラ・データ処理システムに供給するステップと、調整情報に従って、コントローラ・システムに記憶された、製品のライセンス交付条件を示すライセンス交付情報を更新するステップとが含まれる。
【0041】
本発明の解決策は、製品の発行者が、有効な形で自分の知的所有権を保護できるようにするが、それと同時に、発行者は、柔軟なライセンス交付の諸条件を顧客と交渉することができる。その一方で、顧客は、発行者に継続的に頼る必要なしに、変化する実行環境で製品を使用できるようになる。
【0042】
この解決策では、発行者コンピュータ上のライセンス交付情報を、製品の使用の実際の条件と整列させることが可能になる。
【0043】
その結果、発行者は、製品の実際の使用(調整情報に関連する期間中の)について、顧客が動的に行う、使用の許可される条件に対する変更について、またはこれらの価格設定ポリシの組合せについて、顧客に請求することができる。この形で、顧客は、いつでも製品の使用をやめることができ、購入の数日後に製品の使用を開始することができ、不要なコストをこうむらずに、予想されたものより少ない製品の使用を有することができる。さらに、発行者は、革新的なライセンス交付の諸条件を顧客に提供することができ、たとえば、顧客が、調整情報に関連する期間に沿った製品の使用の平均に従って料金を請求されることができ、また、製品の次の使用(信用が完全に使い果たされるまで許可される)に関する信用を定義する開始額を支払うことができる。
【0044】
代替案では、ライセンス交付情報が、顧客によって行われる製品の実際の使用を記録することだけのために、発行者によって使用される。たとえば、この情報を、マーケティング応用または統計応用に有利に使用することができる。
【0045】
上で説明した本発明の好ましい実施形態は、さらなる長所を提供する。たとえば、提案される解決策では、製品ライセンス証明書が使用されるが、この製品ライセンス証明書では、製品の使用の条件に対する制約が設定されない。この特徴によって、信頼性を損なわずに、構造が非常に柔軟になる。製品ライセンス証明書では、検出され発行者に供給される情報が定義されることが好ましい。この形で、製品ごとに異なる情報を収集することができる。さらに、グローバル・ライセンス証明書を使用することによって、単純にこの証明書を顧客コンピュータ上で置換して、調整情報を発行者に提供する態様を変更することが可能になる。
【0046】
代替案では、製品ライセンス証明書およびグローバル・ライセンス証明書が、異なる構造を有する(たとえば、顧客の出費限度を定義する制約を有する)か、収集される情報を他所で定義する(たとえば、製品内で直接に)か、同一の種類の情報を、すべての製品について収集するか、調整情報を必ず発行者に同一の形で供給するか、製品ライセンス証明書およびグローバル・ライセンス証明書を使用しない。
【0047】
周期的に発行者に送信されるログ・レコードによって、顧客コンピュータの制御が、特に信頼性を有するようになる。受信メッセージ(すでに発行者コンピュータに送信されたログ・レコードの削除を引き起こす)によって、顧客コンピュータと発行者コンピュータの間の完全な整列が保証される。さらに、ログ・レコードに関連する順次識別子の使用および状況ファイルの使用によって、1つまたは複数のログ・レコードが失われた時であっても、調整を実行することができるようになる。
【0048】
同様の考察が、ログ・レコード、状況ファイル、および受信メッセージが異なる構造を有する場合、またはこれらが同等の情報によって置換される場合にあてはまる。代替案では、ログ・レコードが、顧客による要求時に作成されるか、ログ・レコードが、周期的に発行者コンピュータに送信されない(たとえば、要求時に送信されるか、発行者によって直接に収集される)か、受信メッセージが使用されず、ログ・レコードが削除されない(たとえば、顧客参照のためにヒストリ・アーカイブに移動される)か、順次識別子がログ・レコードに付加されないか、ライセンス交付管理システムが、ログ・レコードまたは状況ファイルの一方だけを記憶する。
【0049】
調整メッセージに関して提案された暗号化技法によって、顧客によって発行者に送信される情報の信頼性が保証される。さらに、対称鍵を使用することによって、発行者と顧客の両方が、いつでも調整メッセージを復号できるようになる。
ログ・レコード、調整メッセージ、および受信メッセージに付加される署名によって、外部タンパリングが防止される。
【0050】
同様の考察が、各対称鍵が顧客コンピュータ上の別の場所に記憶される場合、同一の対称鍵がすべての調整メッセージに使用される場合、調整メッセージおよび受信メッセーだけが署名される(すべてのログ・レコードが署名されない)場合、調整メッセージが、ライセンス交付管理モジュールによって署名されるだけである(顧客インターフェースによって署名されない)場合にあてはまる。代替案では、調整メッセージが、調整モジュールの公開鍵を用いて暗号化される(顧客コンピュータ上で記録されない)か、調整メッセージが、暗号化されないか、ディジタル署名が使用されない。
【0051】
他のアプリケーションが排除されない場合であっても、提案された方法が、製品の供給業者による、顧客のコンピュータ上の製品の使用の制御に使用されることが好ましい。たとえば、本発明の異なる実施形態では、調整情報が、コンピュータのユーザと同一の会社の汎用コントローラに供給される。
【0052】
有利なことに、本発明による解決策は、CD−ROMで供給されるコンピュータ・プログラム(ソフトウェア)アプリケーションを用いて実施される。このアプリケーションは、発行者コンピュータにインストールされるプログラムと、顧客コンピュータにインストールされるプログラムからなり、これらのプログラムは、別々に配布するのに適する。
【0053】
代替案では、プログラムが、フロッピ(R)・ディスク上で供給されるか、ハード・ディスクに事前にロードされるか、他のコンピュータ可読媒体に記憶されるか、ネットワークを介してコンピュータに送信されるか、ブロードキャストされるか、より一般的に、コンピュータの作業メモリに直接にロード可能な他の形態で提供される。しかし、本発明による方法は、たとえば半導体材料のチップ内に集積された、顧客コンピュータにインストールされるハードウェア構造を用いる実行にもつながる。
【0054】
当然、ローカル要件および特定の要件を満足するために、当業者は、上で説明した解決策に多数の修正および変更を適用することができるが、これらは、請求項によって定義される本発明の保護の範囲に含まれる。
【0055】
まとめとして、本発明の構成に関して以下の事項を開示する。
【0056】
(1)データ処理システム上でディジタル・エンコードされた製品の使用を制御する方法(400)であって、前記製品の使用の条件を検出するために顧客システムの動作を監視するステップ(433ないし447)を含み、対応する期間にわたる前記検出された使用条件を示す調整情報をコントローラ・データ処理システムに供給するステップ(450ないし462)と、調整情報に従って、前記コントローラ・データ処理システムに記憶された、前記製品のライセンス交付条件を示すライセンス交付情報を更新するステップ(471ないし480)とを含むことを特徴とする方法(400)。
(2)前記使用の条件について制限なしで前記製品を使用することを認めた許可を示す製品ライセンス証明書を供給するステップ(412)と、前記データ処理システム上で前記製品ライセンス証明書を記憶するステップ(415)と、前記製品の実行を要求するステップ(418)と、前記製品ライセンス証明書を検証するステップ(424)と、前記製品ライセンス証明書の前記検証の肯定的結果に応答して前記製品の前記実行を可能にするステップ(427)とをさらに含む、上記(1)に記載の方法(400)。
(3)前記製品ライセンス証明書が、さらに、検出すべき前記使用の条件の定義および前記コントローラ・データ処理システムに供給すべき前記調整情報の定義を含む、上記(2)に記載の方法(400)。
(4)前記コントローラ・データ処理システムに前記調整情報を供給する方式を定義するグローバル・ライセンス証明書を供給するステップ(409)と、前記グローバル・ライセンス証明書を前記データ処理システム上で記憶するステップ(415)とをさらに含む、上記(1)ないし(3)のいずれかに記載の方法(400)。
(5)前記調整情報が、前記製品の前記使用の条件の変化のそれぞれについて前記データ処理システムに記憶されるログ・レコード(255)を含み、前記調整情報が、周期的に前記コントローラ・データ処理システムに送信(421)される、上記(1)ないし(4)のいずれかに記載の方法(400)。
(6)前記調整情報に応答して、前記コントローラ・データ処理システムから前記データ処理システムに受信メッセージを送信するステップ(483ないし486)と、前記受信メッセージに応答して、前記コントローラ・データ処理システムに送信された前記ログ・レコードを消去するステップ(492)とをさらに含む、上記(5)に記載の方法(400)。
(7)前記調整情報が、各ログ・レコードに関連する順次識別子と、前記製品の現在のライセンス交付条件を示す、前記データ処理システムに記憶された状況情報(250)とをさらに含み、前記ライセンス交付情報が、前記コントローラ・データ処理システムに送信された前記ログ・レコード内の欠けている順次識別子に応答して(474)前記状況情報に従って更新される(480)、上記(5)または(6)に記載の方法(400)。
(8)前記コントローラ・データ処理システムへの前記調整情報の送信ごとに対称鍵を生成するステップ(450)と、前記対称鍵を用いて前記調整情報を暗号化するステップ(453)と、前記製品の前記使用のコントローラの公開鍵を用いて前記対称鍵を暗号化するステップ(456)と、前記暗号化された対称鍵を前記コントローラ・データ処理システムに供給するステップ(462)と、前記コントローラの秘密鍵を使用して前記対称鍵を復号するステップ(471)と、前記対称鍵を使用して前記調整情報を復号するステップとをさらに含む、上記(1)ないし(7)のいずれかに記載の方法(400)。
(9)前記データ処理システムにインストールされたライセンス交付管理モジュールの秘密鍵を用いて各ログ・レコードに署名するステップ(439)と、前記ライセンス交付管理モジュールの前記秘密鍵を用いて前記調整情報に署名するステップ(459)と、前記ライセンス交付管理モジュールの公開鍵を用いて前記調整情報および各ログ・レコードを検証するステップ(465)と、前記コントローラの前記秘密鍵を用いて前記受信メッセージに署名するステップ(483)と、前記コントローラの前記公開鍵を用いて前記受信メッセージを検証するステップ(489)とをさらに含む、上記(8)に記載の方法。
(10)もう1つのシステムが前記製品の供給業者に関連する、上記(1)ないし(9)のいずれかに記載の方法。
(11)プログラムがデータ処理構造(100)上で実行される時に、上記(1)ないし(10)のいずれかの方法(400)を実行するために、前記データ処理構造(100)の作業メモリに直接にロード可能なコンピュータ・プログラム・アプリケーション(235、245)。
(12)上記(11)の前記プログラム・アプリケーション(235、245)が記憶されたコンピュータ可読記録媒体(140p、140c)。
(13)データ処理システム上でディジタル・エンコードされた製品の使用を制御する方法(400)を実行するために、前記データ処理システム(105c)の作業メモリに直接にロード可能なコンピュータ・プログラム(245)であって、前記製品の使用の条件を検出するために前記データ処理システムの動作を監視するステップ(433ないし447)と、対応する期間にわたる前記検出された使用条件を表す調整情報をコントローラ・データ処理システムに供給するステップ(450ないし462)とを含み、前記コントローラ・データ処理システムに記憶される、前記製品のライセンス交付条件を示すライセンス交付情報が、前記調整情報に従って更新される(471ないし480)コンピュータ・プログラム。
(14)上記(13)の前記コンピュータ・プログラム(245)が記憶されるコンピュータ可読媒体(140c)。
(15)データ処理システム(105c)上でディジタル・エンコードされた製品(225)の使用を制御するシステム(100)であって、前記製品の使用の条件を検出するために前記データ処理システムの動作を監視する手段(245、250、255)を含み、前記システム(100)が、さらに、対応する期間にわたる前記検出された使用条件を表す調整情報(270)をコントローラ・データ処理システム(105p)に供給する手段(245、260)と、前記コントローラ・データ処理システムに記憶される、前記製品のライセンス交付条件を示すライセンス交付情報(230)を、前記調整情報に従って更新する手段(235)とを含むことを特徴とするシステム。
(16)データ処理システム上でディジタル・エンコードされた製品(225)の使用を制御するシステム(100)内で使用されるデータ処理システム(105c)であって、前記製品の使用の条件を検出するために前記データ処理システムの動作を監視する手段(245、250、255)を含み、前記データ処理システムが、対応する期間にわたる前記検出された使用条件を示す調整情報(270)をコントローラ・データ処理システム(105p)に供給する手段(245、260)をさらに含み、前記コントローラ・データ処理システムに記憶され、前記製品のライセンス交付条件を示すライセンス交付情報(230)が、上記調整情報に従って更新されることを特徴とする、データ処理システム(105c)。
【図面の簡単な説明】
【図1】本発明の方法を使用することができる構造の基本ブロック図である。
【図2】その構造に含まれる顧客コンピュータおよび発行者コンピュータの作業メモリの部分的内容を示す図である。
【図3】本発明の方法で使用することができるデータ構造を示す図である。
【図4】本発明の方法で使用することができるデータ構造を示す図である。
【図5】本発明の方法で使用することができるデータ構造を示す図である。
【図6】本発明の方法で使用することができるデータ構造を示す図である。
【図7】顧客コンピュータ上のソフトウェア製品の使用を制御する方法の流れ図である。
【図8】顧客コンピュータ上のソフトウェア製品の使用を制御する方法の流れ図である。
【図9】顧客コンピュータ上のソフトウェア製品の使用を制御する方法の流れ図である。
【符号の説明】
205c ドライバ・モジュール
205p ドライバ・モジュール
210 デリバリ・モジュール(DELIV)
215 グローバル・ライセンス証明書(GC)
220 製品ライセンス証明書(PC)
225 ソフトウェア製品(APPL)
230 顧客データベース(INV)
235 調整モジュール(RECON)
245 ライセンス交付管理モジュール
250 ライセンス状況ファイル(STS)
255 ログ・レコード(LOG)
260 スケジューラ(SCHED)
265 ランダマイザ(RDM)
270 調整メッセージ(RECON)
275 顧客インターフェース(CUST_ITF)
280 受信メッセージ(ACK)

Claims (14)

  1. ネットワークを介して発行者コンピュータに接続可能な顧客コンピュータ上でディジタル・エンコードされた製品の使用を制御する方法であって、
    前記顧客コンピュータが、前記製品の使用条件を検出するために該顧客コンピュータ自身の動作を監視するステップと、
    前記顧客コンピュータが、対応する期間にわたる前記検出された使用条件を示す調整情報を、前記発行者コンピュータへの前記調整情報の送信について計画された時間に、前記発行者コンピュータに供給するステップと、
    前記発行者コンピュータが、前記調整情報に従って、前記発行者コンピュータ上に記憶され且つ前記製品のライセンス交付条件を示すライセンス交付情報を更新するステップと
    を含む方法。
  2. 前記発行者コンピュータが、前記製品の使用条件について制限なし前記製品を使用することを認められた許可を示す製品ライセンス証明書を前記顧客コンピュータに供給するステップと、
    前記顧客コンピュータが、前記製品ライセンス証明書を記憶するステップと、
    前記顧客コンピュータが、ユーザによって前記製品の実行が要求されたかどうかを検査するステップと、
    前記顧客コンピュータが、前記製品ライセンス証明書を検証するステップと、
    前記顧客コンピュータが、前記製品ライセンス証明書の前記検証の肯定的結果に応答して前記製品の前記実行を可能にするステップと
    をさらに含む、請求項1に記載の方法。
  3. 前記製品ライセンス証明書が、検出すべき前記使用条件の定義および前記発行者コンピュータに供給すべき前記調整情報の定義をさらに含む、請求項2に記載の方法。
  4. 前記発行者コンピュータが、前記調整情報を供給する方式を定義するグローバル・ライセンス証明書を作成するステップと、
    前記顧客コンピュータが、前記発行者コンピュータからのグローバル・ライセンス証明書を記憶するステップと
    をさらに含む、請求項1ないし3のいずれかに記載の方法。
  5. 前記調整情報が、前記製品の前記使用条件の変化のそれぞれについて前記顧客コンピュータに記憶されるログ・レコードを含み、前記顧客コンピュータが、前記調整情報を、周期的に前記発行者コンピュータに送信するステップをさらに含む、請求項1ないし4のいずれかに記載の方法。
  6. 前記発行者コンピュータが、前記調整情報の受信に応答して、前記コンピュータに受信メッセージを送信するステップと、
    前記顧客コンピュータが、前記受信メッセージの受信に応答して、前記発行者コンピュータに送信された前記ログ・レコードを消去するステップと
    をさらに含む、請求項5に記載の方法。
  7. 前記調整情報が、各ログ・レコードに関連付けられた順次識別子と、前記顧客コンピュータに記憶され且つ前記製品の現在のライセンス交付条件を示状況情報とをさらに含み、前記ライセンス交付情報が、前記発行者コンピュータに送信された前記ログ・レコード内の欠けている順次識別子に応答して前記状況情報に従って更新される請求項5または6に記載の方法。
  8. 前記顧客コンピュータが、前記発行者コンピュータへの前記調整情報の送信ごとに対称鍵を生成するステップと、
    前記顧客コンピュータが、前記対称鍵を用いて前記調整情報を暗号化するステップと、
    前記顧客コンピュータが、前記製品の前記使用のコントローラの公開鍵を用いて前記対称鍵を暗号化するステップと、
    前記顧客コンピュータが、前記暗号化された対称鍵を前記発行者コンピュータに供給するステップと、
    前記発行者コンピュータが、前記コントローラの秘密鍵を使用して前記暗号化された対称鍵を復号するステップと、
    前記発行者コンピュータが、前記対称鍵を使用して前記暗号化された調整情報を復号するステップと
    をさらに含む、請求項1ないし7のいずれかに記載の方法。
  9. 前記顧客コンピュータが、前記顧客コンピュータにインストールされたライセンス交付管理モジュールの秘密鍵を用いて各ログ・レコードに署名するステップと、
    前記顧客コンピュータが、前記ライセンス交付管理モジュールの前記秘密鍵を用いて前記調整情報に署名するステップと、
    前記顧客コンピュータが、前記ライセンス交付管理モジュールの公開鍵を用いて前記調整情報および各ログ・レコードを検証するステップと、
    前記顧客コンピュータが、前記コントローラの前記秘密鍵を用いて前記受信メッセージに署名するステップと、
    前記顧客コンピュータが、前記コントローラの前記公開鍵を用いて前記受信メッセージを検証するステップと
    をさらに含む、請求項8に記載の方法。
  10. 前記発行者コンピュータが、前記製品の供給業者に関連付けられている、請求項1ないし9のいずれかに記載の方法。
  11. ネットワークを介して発行者コンピュータに接続可能な顧客コンピュータ上でディジタル・エンコードされた製品の使用を制御するライセンス交付システムであって、
    前記顧客コンピュータが、
    前記製品の使用条件を検出するために該顧客コンピュータ自身の動作を監視する手段と、
    対応する期間にわたる前記検出された使用条件を示す調整情報を、前記発行者コンピュータへの前記調整情報の送信について計画された時間に、前記発行者コンピュータに供給する手段と
    を含み、
    前記発行者コンピュータが、
    前記調整情報に従って、前記発行者コンピュータ上に記憶され且つ前記製品のライセンス交付条件を示すライセンス交付情報を更新する手段と
    を含むライセンス交付システム。
  12. ネットワークを介して発行者コンピュータに接続可能な顧客コンピュータ上でディジタル・エンコードされた製品の使用を制御するライセンス交付システム内で使用される該顧客コンピュータであって、
    前記製品の使用条件を検出するために該顧客コンピュータ自身の動作を監視する手段
    対応する期間にわたる前記検出された使用条件を示す調整情報を、前記発行者コンピュータへの前記調整情報の送信について計画された時間に、前記発行者コンピュータに供給する手段であって、それによって前記発行者コンピュータ上に記憶され且つ前記製品のライセンス交付条件を示すライセンス交付情報が、上記調整情報に従って更新される、前記供給する手段と
    を含む顧客コンピュータ。
  13. ネットワークを介して発行者コンピュータに接続可能な顧客コンピュータ上でディジタル・エンコードされた製品の使用を制御するためのコンピュータ・プログラムであって、
    ライセンス交付システム内で使用される該顧客コンピュータに、
    前記製品の使用条件を検出するために該顧客コンピュータ自身の動作を監視するステップと、
    対応する期間にわたる前記検出された使用条件を示す調整情報を前記発行者コンピュータへの前記調整情報の送信について計画された時間に、前記発行者コンピュータに供給するステップであって、それによって前記発行者コンピュータ上に記憶され且つ前記製品のライセンス交付条件を示すライセンス交付情報が、上記調整情報に従って更新される、前記供給するステップと
    を実行させるコンピュータ・プログラム。
  14. ネットワークを介して発行者コンピュータに接続可能な顧客コンピュータ上でディジタル・エンコードされた製品の使用を制御するためのコンピュータ・プログラムを記録したコンピュータ読み取り可能な記録媒体であって、
    ライセンス交付システム内で使用される該顧客コンピュータに、
    前記製品の使用条件を検出するために該顧客コンピュータ自身の動作を監視するステップと、
    対応する期間にわたる前記検出された使用条件を示す調整情報を前記発行者コンピュータへの前記調整情報の送信について計画された時間に、前記発行者コンピュータに供給するステップであって、それによって前記発行者コンピュータ上に記憶され且つ前記製品のライセンス交付条件を示すライセンス交付情報が、上記調整情報に従って更新される、前記供給するステップと
    を実行させるコンピュータ・プログラムを記録したコンピュータ読み取り可能な記録媒体。
JP2002080368A 2001-03-23 2002-03-22 ディジタル・エンコードされた製品の使用を制御する方法 Expired - Fee Related JP3703095B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
GB0107323.8 2001-03-23
GB0107323A GB2373605B (en) 2001-03-23 2001-03-23 A method of metering use of digitally encoded products

Publications (2)

Publication Number Publication Date
JP2003015760A JP2003015760A (ja) 2003-01-17
JP3703095B2 true JP3703095B2 (ja) 2005-10-05

Family

ID=9911420

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2002080368A Expired - Fee Related JP3703095B2 (ja) 2001-03-23 2002-03-22 ディジタル・エンコードされた製品の使用を制御する方法

Country Status (3)

Country Link
US (1) US7069595B2 (ja)
JP (1) JP3703095B2 (ja)
GB (1) GB2373605B (ja)

Families Citing this family (95)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040107368A1 (en) * 1998-06-04 2004-06-03 Z4 Technologies, Inc. Method for digital rights management including self activating/self authentication software
US20040117631A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Method for digital rights management including user/publisher connectivity interface
US20040117664A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Apparatus for establishing a connectivity platform for digital rights management
US20040117628A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Computer readable storage medium for enhancing license compliance of software/digital content including self-activating/self-authenticating software/digital content
US20040117644A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Method for reducing unauthorized use of software/digital content including self-activating/self-authenticating software/digital content
US20040117663A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Method for authentication of digital content used or accessed with secondary devices to reduce unauthorized use or distribution
US20040225894A1 (en) * 1998-06-04 2004-11-11 Z4 Technologies, Inc. Hardware based method for digital rights management including self activating/self authentication software
GB0229894D0 (en) * 2002-12-21 2003-01-29 Ibm Methods, apparatus and computer programs for generating and/or using conditional electronic signatures and/or for reporting status changes
US7627902B1 (en) 2003-02-20 2009-12-01 Dell Marketing Usa, L.P. Method of managing a software item on a managed computer system
US7370212B2 (en) 2003-02-25 2008-05-06 Microsoft Corporation Issuing a publisher use license off-line in a digital rights management (DRM) system
US7392420B2 (en) * 2003-09-29 2008-06-24 International Business Machines Corporation Automated error recovery of a licensed internal code update on a storage controller
US7266815B2 (en) * 2003-09-29 2007-09-04 International Business Machines Corporation Automated control of a licensed internal code update on a storage controller
US7788496B2 (en) * 2003-10-08 2010-08-31 Microsoft Corporation First computer process and second computer process proxy-executing code on behalf thereof
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
JP5008822B2 (ja) 2003-10-27 2012-08-22 パナソニック株式会社 コンテンツ再生制御方法およびコンテンツ再生制御端末
US7853790B2 (en) 2004-03-19 2010-12-14 Microsoft Corporation Enhancement to volume license keys
US20060242406A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Protected computing environment
JP2008511672A (ja) * 2004-08-30 2008-04-17 セレゲン,インコーポレーテッド 培養三次元組織およびその使用
US8347078B2 (en) 2004-10-18 2013-01-01 Microsoft Corporation Device certificate individualization
US7694153B2 (en) * 2004-11-15 2010-04-06 Microsoft Corporation Changing product behavior in accordance with license
US8176564B2 (en) 2004-11-15 2012-05-08 Microsoft Corporation Special PC mode entered upon detection of undesired state
US8336085B2 (en) 2004-11-15 2012-12-18 Microsoft Corporation Tuning product policy using observed evidence of customer behavior
US8438645B2 (en) 2005-04-27 2013-05-07 Microsoft Corporation Secure clock with grace periods
US8725646B2 (en) 2005-04-15 2014-05-13 Microsoft Corporation Output protection levels
US9363481B2 (en) 2005-04-22 2016-06-07 Microsoft Technology Licensing, Llc Protected media pipeline
US9436804B2 (en) 2005-04-22 2016-09-06 Microsoft Technology Licensing, Llc Establishing a unique session key using a hardware functionality scan
US8091142B2 (en) * 2005-04-26 2012-01-03 Microsoft Corporation Supplementary trust model for software licensing/commercial digital distribution policy
US20060265758A1 (en) 2005-05-20 2006-11-23 Microsoft Corporation Extensible media rights
US8353046B2 (en) 2005-06-08 2013-01-08 Microsoft Corporation System and method for delivery of a modular operating system
US8087092B2 (en) * 2005-09-02 2011-12-27 Uniloc Usa, Inc. Method and apparatus for detection of tampering attacks
US8284929B2 (en) 2006-09-14 2012-10-09 Uniloc Luxembourg S.A. System of dependant keys across multiple pieces of related scrambled information
US20080148253A1 (en) * 2006-12-15 2008-06-19 Microsoft Corporation Automatic software license reconciliation
US7908662B2 (en) * 2007-06-21 2011-03-15 Uniloc U.S.A., Inc. System and method for auditing software usage
EP2203815B1 (en) * 2007-09-20 2015-08-12 Uniloc Luxembourg S.A. Installing protected software product using unprotected installation image
WO2009065135A1 (en) 2007-11-17 2009-05-22 Uniloc Corporation System and method for adjustable licensing of digital products
EP2232764A1 (en) * 2007-12-05 2010-09-29 Uniloc Usa, Inc. System and method for device bound public key infrastructure
US8752166B2 (en) * 2007-12-21 2014-06-10 The Invention Science Fund I, Llc Security-activated operational components
US9128476B2 (en) * 2007-12-21 2015-09-08 The Invention Science Fund I, Llc Secure robotic operational system
US20090164379A1 (en) * 2007-12-21 2009-06-25 Searete Llc, A Limited Liability Corporation Of The State Of Delaware Conditional authorization for security-activated device
US9626487B2 (en) * 2007-12-21 2017-04-18 Invention Science Fund I, Llc Security-activated production device
US9818071B2 (en) 2007-12-21 2017-11-14 Invention Science Fund I, Llc Authorization rights for operational components
US9071436B2 (en) * 2007-12-21 2015-06-30 The Invention Science Fund I, Llc Security-activated robotic system
US8341751B2 (en) 2007-12-26 2012-12-25 Wilson Kelce S Software license management
US8374968B2 (en) * 2008-02-22 2013-02-12 Uniloc Luxembourg S.A. License auditing for distributed applications
WO2009143115A1 (en) 2008-05-21 2009-11-26 Uniloc Usa, Inc. Device and method for secured communication
EP2313858A4 (en) * 2008-06-25 2012-01-18 Uniloc Usa Inc SYSTEM AND METHOD FOR MONITORING THE EFFECTIVENESS OF ONLINE ADVERTISING
US8146158B2 (en) * 2008-12-30 2012-03-27 Microsoft Corporation Extensible activation exploit scanner
EP2396742A2 (en) 2009-02-10 2011-12-21 Uniloc Usa, Inc. Web content access using a client device identifier
US20100257214A1 (en) * 2009-03-18 2010-10-07 Luc Bessette Medical records system with dynamic avatar generator and avatar viewer
US20100312702A1 (en) * 2009-06-06 2010-12-09 Bullock Roddy M System and method for making money by facilitating easy online payment
US8103553B2 (en) * 2009-06-06 2012-01-24 Bullock Roddy Mckee Method for making money on internet news sites and blogs
US20100332337A1 (en) * 2009-06-25 2010-12-30 Bullock Roddy Mckee Universal one-click online payment method and system
US20100325446A1 (en) * 2009-06-19 2010-12-23 Joseph Martin Mordetsky Securing Executable Code Integrity Using Auto-Derivative Key
US9047450B2 (en) 2009-06-19 2015-06-02 Deviceauthority, Inc. Identification of embedded system devices
US9633183B2 (en) 2009-06-19 2017-04-25 Uniloc Luxembourg S.A. Modular software protection
US20100325431A1 (en) * 2009-06-19 2010-12-23 Joseph Martin Mordetsky Feature-Specific Keys for Executable Code
US8423473B2 (en) * 2009-06-19 2013-04-16 Uniloc Luxembourg S. A. Systems and methods for game activation
US9047458B2 (en) * 2009-06-19 2015-06-02 Deviceauthority, Inc. Network access protection
US20100323790A1 (en) * 2009-06-19 2010-12-23 Etchegoyen Craig S Devices and Methods for Auditing and Enforcing Computer Game Licenses
US20100325424A1 (en) * 2009-06-19 2010-12-23 Etchegoyen Craig S System and Method for Secured Communications
US20100325025A1 (en) * 2009-06-22 2010-12-23 Etchegoyen Craig S System and Method for Sharing Media
US20100324981A1 (en) * 2009-06-22 2010-12-23 Etchegoyen Craig S System and Method for Media Distribution on Social Networks
US20100325735A1 (en) * 2009-06-22 2010-12-23 Etchegoyen Craig S System and Method for Software Activation
US20100325149A1 (en) * 2009-06-22 2010-12-23 Craig Stephen Etchegoyen System and Method for Auditing Software Usage
US8495359B2 (en) * 2009-06-22 2013-07-23 NetAuthority System and method for securing an electronic communication
US20100325051A1 (en) * 2009-06-22 2010-12-23 Craig Stephen Etchegoyen System and Method for Piracy Reduction in Software Activation
US20100325200A1 (en) * 2009-06-22 2010-12-23 Craig Stephen Etchegoyen System and Method for Software Activation Through Digital Media Fingerprinting
US20100321208A1 (en) * 2009-06-23 2010-12-23 Craig Stephen Etchegoyen System and Method for Emergency Communications
US8452960B2 (en) * 2009-06-23 2013-05-28 Netauthority, Inc. System and method for content delivery
US8903653B2 (en) 2009-06-23 2014-12-02 Uniloc Luxembourg S.A. System and method for locating network nodes
US8736462B2 (en) 2009-06-23 2014-05-27 Uniloc Luxembourg, S.A. System and method for traffic information delivery
US20100325040A1 (en) * 2009-06-23 2010-12-23 Craig Stephen Etchegoyen Device Authority for Authenticating a User of an Online Service
US20100324989A1 (en) * 2009-06-23 2010-12-23 Craig Stephen Etchegoyen System and Method for Monitoring Efficacy of Online Advertising
US20100332319A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Methods and Systems for Dynamic Serving of Advertisements in a Game or Virtual Reality Environment
US9129097B2 (en) * 2009-06-24 2015-09-08 Uniloc Luxembourg S.A. Systems and methods for auditing software usage using a covert key
US9075958B2 (en) * 2009-06-24 2015-07-07 Uniloc Luxembourg S.A. Use of fingerprint with an on-line or networked auction
US10068282B2 (en) 2009-06-24 2018-09-04 Uniloc 2017 Llc System and method for preventing multiple online purchases
US8239852B2 (en) * 2009-06-24 2012-08-07 Uniloc Luxembourg S.A. Remote update of computers based on physical device recognition
US20100332331A1 (en) * 2009-06-24 2010-12-30 Craig Stephen Etchegoyen Systems and Methods for Providing an Interface for Purchasing Ad Slots in an Executable Program
US8213907B2 (en) * 2009-07-08 2012-07-03 Uniloc Luxembourg S. A. System and method for secured mobile communication
US9141489B2 (en) * 2009-07-09 2015-09-22 Uniloc Luxembourg S.A. Failover procedure for server system
US20110047540A1 (en) * 2009-08-24 2011-02-24 Embarcadero Technologies Inc. System and Methodology for Automating Delivery, Licensing, and Availability of Software Products
US8726407B2 (en) 2009-10-16 2014-05-13 Deviceauthority, Inc. Authentication of computing and communications hardware
US9082128B2 (en) * 2009-10-19 2015-07-14 Uniloc Luxembourg S.A. System and method for tracking and scoring user activities
US8769296B2 (en) * 2009-10-19 2014-07-01 Uniloc Luxembourg, S.A. Software signature tracking
US8316421B2 (en) * 2009-10-19 2012-11-20 Uniloc Luxembourg S.A. System and method for device authentication with built-in tolerance
US20110093503A1 (en) * 2009-10-19 2011-04-21 Etchegoyen Craig S Computer Hardware Identity Tracking Using Characteristic Parameter-Derived Data
US9230273B2 (en) 2010-07-28 2016-01-05 International Business Machines Corporation Creation and use of constraint templates
US9122998B2 (en) 2010-07-28 2015-09-01 International Business Machines Corporation Catalog-based software license reconciliation
EP2472422A1 (en) * 2010-12-27 2012-07-04 Siemens Aktiengesellschaft Improved management of software licenses in a computer network
AU2011100168B4 (en) 2011-02-09 2011-06-30 Device Authority Ltd Device-bound certificate authentication
US8769260B1 (en) * 2012-04-10 2014-07-01 Trend Micro Incorporated Messaging system with user-friendly encryption and decryption
US20150378804A1 (en) * 2014-05-20 2015-12-31 Thomson Licensing Digital cinema package test
US11561532B2 (en) * 2020-06-19 2023-01-24 Rockwell Automation Technologies, Inc. Systems and methods for metered automation controller functionality

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4791565A (en) * 1984-06-20 1988-12-13 Effective Security Systems, Inc. Apparatus for controlling the use of computer software
US5023907A (en) * 1988-09-30 1991-06-11 Apollo Computer, Inc. Network license server
JPH07219763A (ja) * 1994-02-03 1995-08-18 Canon Inc ソフトウェアの登録/起動方法及びその装置
US6658568B1 (en) * 1995-02-13 2003-12-02 Intertrust Technologies Corporation Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management
JPH08286984A (ja) * 1995-04-19 1996-11-01 Fuji Xerox Co Ltd 障害情報通知システム
US6029145A (en) * 1997-01-06 2000-02-22 Isogon Corporation Software license verification process and apparatus
JP3924342B2 (ja) * 1997-02-14 2007-06-06 富士通株式会社 ソフトウェアライセンス管理システムおよびソフトウェアライセンス管理装置
JP2001517822A (ja) * 1997-09-19 2001-10-09 パク,ヒョ,ジョーン 独立的ソフトウェア登録サーバを利用したソフトウェア使用権管理システム
US6055636A (en) * 1998-01-27 2000-04-25 Entrust Technologies, Limited Method and apparatus for centralizing processing of key and certificate life cycle management
US6049789A (en) * 1998-06-24 2000-04-11 Mentor Graphics Corporation Software pay per use licensing system
JP2000305775A (ja) * 1999-04-16 2000-11-02 Nec Eng Ltd ライセンス管理システム、ライセンス管理実行モジュール及び記録媒体
JP2001222424A (ja) * 2000-02-08 2001-08-17 Fujitsu Ltd ソフトウェアライセンス管理装置,ソフトウェアライセンス管理方法およびソフトウェアライセンス管理用プログラム記録媒体
JP4040234B2 (ja) * 2000-03-27 2008-01-30 ローム株式会社 ネットワークシステム
AU2001271291A1 (en) * 2000-06-07 2001-12-17 Quark Media House Sarl System for software license control and method therefore
WO2002061538A2 (en) * 2001-02-01 2002-08-08 Abn Amro Services Company, Inc. A system and method for an automatic license facility
JP3506176B2 (ja) * 2001-03-01 2004-03-15 ダイキン工業株式会社 情報処理装置および情報処理方法、ライセンス管理システム、並びにプログラム

Also Published As

Publication number Publication date
GB2373605B (en) 2005-04-27
GB2373605A (en) 2002-09-25
US7069595B2 (en) 2006-06-27
US20020138745A1 (en) 2002-09-26
JP2003015760A (ja) 2003-01-17
GB0107323D0 (en) 2001-05-16

Similar Documents

Publication Publication Date Title
JP3703095B2 (ja) ディジタル・エンコードされた製品の使用を制御する方法
US7051211B1 (en) Secure software distribution and installation
US9569627B2 (en) Systems and methods for governing content rendering, protection, and management applications
US7543140B2 (en) Revocation of a certificate and exclusion of other principals in a digital rights management (DRM) system based on a revocation list from a delegated revocation authority
EP1253742B1 (en) Method and system for generation and management of secret key of public key cryptosystem
CN100517297C (zh) 使用证书撤销列表进行数字权限管理的方法和设备
EP1477879B1 (en) Tying a digital license to a user and tying the user to multiple computing devices in a digital rights management (DRM) system
US7516491B1 (en) License tracking system
CN1723650B (zh) 权限管理保护内容的预许可
US7152245B2 (en) Installation of black box for trusted component for digital rights management (DRM) on computing device
US20050137889A1 (en) Remotely binding data to a user device
JP2003085321A (ja) コンテンツ利用権限管理システム、コンテンツ利用権限管理方法、および情報処理装置、並びにコンピュータ・プログラム
KR100656402B1 (ko) 디지털 콘텐츠를 안전하게 배포하는 방법 및 그 장치
JP2004530222A (ja) ディジタルライツ・マネジメント・システムで多数の信頼ゾーンをサポートする方法および装置
JP2005537559A (ja) トランザクションの安全な記録
WO2012064378A1 (en) Managing data
WO2010139258A1 (zh) 一种软件版权保护方法、设备和系统
KR20080065661A (ko) 파일 시스템으로의 접근을 제어하기 위한 방법, 파일시스템에 사용하기 위한 관련 시스템, sim 카드 및컴퓨터 프로그램 제품
JP2001175468A (ja) ソフトウエア使用制御方法とその装置
CN113169866A (zh) 使用同时密钥发布来防止共谋的技术
US7770001B2 (en) Process and method to distribute software product keys electronically to manufacturing entities
CN112364305A (zh) 基于区块链平台的数字内容版权保护方法和装置
JP2004110197A (ja) センタ・システムにおける情報処理方法及びアクセス権限管理方法
EP1790116B1 (en) Method and system for managing authentication and payment for use of broadcast material
JPH1124916A (ja) ソフトウェアライセンス管理装置および方法

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20050201

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050412

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20050412

RD12 Notification of acceptance of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7432

Effective date: 20050412

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050412

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

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20050624

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A821

Effective date: 20050624

RD14 Notification of resignation of power of sub attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7434

Effective date: 20050624

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20050714

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees