JPH07295798A - ソフトウェア・オブジェクトの配布を可能にするための方法および装置 - Google Patents
ソフトウェア・オブジェクトの配布を可能にするための方法および装置Info
- Publication number
- JPH07295798A JPH07295798A JP7090571A JP9057195A JPH07295798A JP H07295798 A JPH07295798 A JP H07295798A JP 7090571 A JP7090571 A JP 7090571A JP 9057195 A JP9057195 A JP 9057195A JP H07295798 A JPH07295798 A JP H07295798A
- Authority
- JP
- Japan
- Prior art keywords
- file
- key
- computer
- encrypted
- transfer
- 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
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/101—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/10—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
- G06F21/101—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities
- G06F21/1011—Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM] by binding digital rights to specific entities to devices
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2107—File encryption
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing 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/2137—Time limited access, e.g. to a computer or data
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Technology Law (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Storage Device Security (AREA)
Abstract
(57)【要約】
【目的】 ソース・コンピュータから1つまたは複数の
ターゲット・コンピュータに暗号化ファイルを転送する
ための方法および装置を提供する。 【構成】 エクスポート・プログラムがソース・コンピ
ュータ内に設けられ、インポート・プログラムがターゲ
ット・コンピュータ内に設けられる。エクスポート・プ
ログラムは、暗号化ファイルを暗号解読し、エクスポー
ト・カウンタ値でエクスポート操作にタグを付ける。次
に、ディスケットの製造番号などの転送メモリ媒体に固
有のキーを使用して、クリア・テキスト・ファイルが暗
号化操作によって暗号化される。メモリ媒体は、インポ
ート・ファイルを使用して暗号化ファイルを暗号解読す
るターゲット・コンピュータに移される。
ターゲット・コンピュータに暗号化ファイルを転送する
ための方法および装置を提供する。 【構成】 エクスポート・プログラムがソース・コンピ
ュータ内に設けられ、インポート・プログラムがターゲ
ット・コンピュータ内に設けられる。エクスポート・プ
ログラムは、暗号化ファイルを暗号解読し、エクスポー
ト・カウンタ値でエクスポート操作にタグを付ける。次
に、ディスケットの製造番号などの転送メモリ媒体に固
有のキーを使用して、クリア・テキスト・ファイルが暗
号化操作によって暗号化される。メモリ媒体は、インポ
ート・ファイルを使用して暗号化ファイルを暗号解読す
るターゲット・コンピュータに移される。
Description
【0001】
【産業上の利用分野】本発明は、一般的にはソフトウェ
ア・オブジェクトへのアクセスを保護するための技法に
関し、より具体的にはソフトウェア・オブジェクトへの
アクセスを一時的に暗号化し制限するための技法に関す
る。
ア・オブジェクトへのアクセスを保護するための技法に
関し、より具体的にはソフトウェア・オブジェクトへの
アクセスを一時的に暗号化し制限するための技法に関す
る。
【0002】
【従来の技術】ソフトウェア製品の作成と販売により、
革新的な製品を有する企業に対して莫大な富が生み出さ
れてきたが、時間が経つにつれて消費者がコンピュータ
に詳しくなるので、この傾向は今後も継続するものと考
えられる。潜在的ユーザには市販されている様々な製品
を知る機会がほとんど与えられないため、コンピュータ
・ソフトウェアは販売しにくいものである。通常、ソフ
トウェア製品はプラスチック・フィルムで収縮包装され
た箱に収められており、潜在的顧客には、購入前に実際
にそのソフトウェアを操作または体験する機会がほとん
どまたはまったく与えられない。このため、消費者は、
満足できるソフトウェア製品が見つかるまで複数の製品
を次々に購入せざるを得ない場合が多く、製品に対する
不満が募ってくる。これは、この世界で大量の海賊版ソ
フトウェアが発生している重大な原因の1つたりうる。
潜在的ソフトウェア購入者は、ソフトウェアの一時使用
という明白な意図を持って、友人や同僚から1組のディ
スケットを「借りる」ことが多い。しかし、このような
一時使用が長期間にわたり、潜在的顧客が実際にはソフ
トウェア製品を購入せず、借りたコピーに頼る可能性も
多いだろう。
革新的な製品を有する企業に対して莫大な富が生み出さ
れてきたが、時間が経つにつれて消費者がコンピュータ
に詳しくなるので、この傾向は今後も継続するものと考
えられる。潜在的ユーザには市販されている様々な製品
を知る機会がほとんど与えられないため、コンピュータ
・ソフトウェアは販売しにくいものである。通常、ソフ
トウェア製品はプラスチック・フィルムで収縮包装され
た箱に収められており、潜在的顧客には、購入前に実際
にそのソフトウェアを操作または体験する機会がほとん
どまたはまったく与えられない。このため、消費者は、
満足できるソフトウェア製品が見つかるまで複数の製品
を次々に購入せざるを得ない場合が多く、製品に対する
不満が募ってくる。これは、この世界で大量の海賊版ソ
フトウェアが発生している重大な原因の1つたりうる。
潜在的ソフトウェア購入者は、ソフトウェアの一時使用
という明白な意図を持って、友人や同僚から1組のディ
スケットを「借りる」ことが多い。しかし、このような
一時使用が長期間にわたり、潜在的顧客が実際にはソフ
トウェア製品を購入せず、借りたコピーに頼る可能性も
多いだろう。
【0003】映画館には映画の予告編があり、テレビに
はコマーシャルがあるが、ソフトウェア製品のサンプル
にはこのような共通の伝達経路が存在しないため、ソフ
トウェア・メーカは、新製品を宣伝し、新たな顧客を勧
誘するために、印刷物やダイレクトメールによる宣伝に
頼らざるを得ない。しかし、残念ながら、静的な印刷形
式ではユーザと製品との対話をシミュレートすることが
できないため、印刷物は正確に製品を説明できない場合
が多い。コンピュータ・ソフトウェア製品を購入するか
どうか決心する前に顧客がその製品にアクセスでき、製
品を違法使用する危険性を伴わずにこれを実現できるの
であれば、ソフトウェア製品のメーカも顧客もどちらも
十分要求が満たされるはずである。
はコマーシャルがあるが、ソフトウェア製品のサンプル
にはこのような共通の伝達経路が存在しないため、ソフ
トウェア・メーカは、新製品を宣伝し、新たな顧客を勧
誘するために、印刷物やダイレクトメールによる宣伝に
頼らざるを得ない。しかし、残念ながら、静的な印刷形
式ではユーザと製品との対話をシミュレートすることが
できないため、印刷物は正確に製品を説明できない場合
が多い。コンピュータ・ソフトウェア製品を購入するか
どうか決心する前に顧客がその製品にアクセスでき、製
品を違法使用する危険性を伴わずにこれを実現できるの
であれば、ソフトウェア製品のメーカも顧客もどちらも
十分要求が満たされるはずである。
【0004】暗号化したソフトウェア製品の配布は、購
入前に潜在的ユーザに製品を配布するためにソフトウェ
ア・ベンダが利用できる機構の1つであるが、製品への
ユーザ・アクセスを可能にするキーを配布しなければな
らない。この場合、ベンダは、潜在的顧客の正直さと誠
実さに完全に頼らざるを得ない。つまり、無節操な人や
誠意のない人であれば、その友人や同僚にキーを渡し、
無許可アクセスを可能にする恐れがある。さらに、無節
操な人は、多数の人が無許可ユーザになれるように、一
般の人がアクセス可能な掲示板にキーを掲載してしまう
可能性もある。通常、このような安全保護違反は容易に
防止することができないため、ベンダは潜在的顧客によ
る試用のためにソフトウェアを配布することを躊躇して
きた。
入前に潜在的ユーザに製品を配布するためにソフトウェ
ア・ベンダが利用できる機構の1つであるが、製品への
ユーザ・アクセスを可能にするキーを配布しなければな
らない。この場合、ベンダは、潜在的顧客の正直さと誠
実さに完全に頼らざるを得ない。つまり、無節操な人や
誠意のない人であれば、その友人や同僚にキーを渡し、
無許可アクセスを可能にする恐れがある。さらに、無節
操な人は、多数の人が無許可ユーザになれるように、一
般の人がアクセス可能な掲示板にキーを掲載してしまう
可能性もある。通常、このような安全保護違反は容易に
防止することができないため、ベンダは潜在的顧客によ
る試用のためにソフトウェアを配布することを躊躇して
きた。
【0005】
【発明が解決しようとする課題】本発明の一目的は、一
時的な試用期間を超えて海賊行為や無許可利用が行われ
るという不必要な危険性にソフトウェア製品を曝さずに
ユーザに一時的な試用期間を許可することを特徴とす
る、作成者から潜在的ユーザにソフトウェア・オブジェ
クトを配布するための方法および装置を提供することに
ある。
時的な試用期間を超えて海賊行為や無許可利用が行われ
るという不必要な危険性にソフトウェア製品を曝さずに
ユーザに一時的な試用期間を許可することを特徴とす
る、作成者から潜在的ユーザにソフトウェア・オブジェ
クトを配布するための方法および装置を提供することに
ある。
【0006】本発明の他の目的は、永続暗号化キー(lo
ng-lived encryption key)を使用してソフトウェア・
オブジェクトが暗号化され、ソースからユーザに送られ
ることを特徴とする、ソースからユーザにソフトウェア
・オブジェクトを配布するための方法および装置を提供
することにある。
ng-lived encryption key)を使用してソフトウェア・
オブジェクトが暗号化され、ソースからユーザに送られ
ることを特徴とする、ソースからユーザにソフトウェア
・オブジェクトを配布するための方法および装置を提供
することにある。
【0007】本発明の他の目的は、コンピュータがアク
セス可能なメモリ媒体に格納された特定のファイルへの
アクセスを保護するための、データ処理システム内の方
法および装置を提供することにある。
セス可能なメモリ媒体に格納された特定のファイルへの
アクセスを保護するための、データ処理システム内の方
法および装置を提供することにある。
【0008】本発明の他の目的は、コンピュータがアク
セス可能なメモリ媒体に格納された特定のファイルへの
アクセスを保護するための、データ処理システム内の方
法および装置を提供することにある。
セス可能なメモリ媒体に格納された特定のファイルへの
アクセスを保護するための、データ処理システム内の方
法および装置を提供することにある。
【0009】本発明の他の目的は、ソースからユーザに
ソフトウェア・オブジェクトを配布するための方法およ
び装置を提供することにある。この場合、コンピュータ
がアクセス可能なメモリ媒体がソースから潜在的ユーザ
に配布される。
ソフトウェア・オブジェクトを配布するための方法およ
び装置を提供することにある。この場合、コンピュータ
がアクセス可能なメモリ媒体がソースから潜在的ユーザ
に配布される。
【0010】本発明の第一の目的は、好ましくは、ソフ
トウェア・オブジェクトをファイル管理プログラムとと
もにコンピュータがアクセス可能なメモリ媒体で提供す
ることで達成される。このソフトウェア・オブジェクト
は、1つまたは複数の特定の暗号化操作により取消し可
能な機能制限が施されていることが好ましい。コンピュ
ータがアクセス可能なメモリ媒体は、従来の郵便および
配送サービスを使用して作成者から潜在的ユーザに発送
される。潜在的ユーザは、これを受け取ると、ユーザ制
御のデータ処理システムにファイル管理プログラムをロ
ードし、そのデータ処理システム用のオペレーティング
・システムにそれを関連付ける。次に、ユーザ制御のデ
ータ処理システムを使用してコンピュータがアクセス可
能なメモリ媒体が読み取られる。ファイル管理プログラ
ムは、ユーザ制御のデータ処理システムによって実行さ
れ、定義済みの一時試用期間の間、ソフトウェア・オブ
ジェクトへのアクセスを制限するよう機能する。一時試
用動作モードの間、ソフトウェア・オブジェクトの取消
し可能機能制限を取り消すことで、ソフトウェア・オブ
ジェクトが一時的に使用可能になる。これは、ユーザ制
御のデータ処理システムのオペレーティング・システム
がソフトウェア・オブジェクトを呼び出したときの暗号
化ソフトウェア・オブジェクトの暗号解読によって達成
されることが好ましい。ファイル管理プログラムは、オ
ペレーティング・システムによって呼び出されたときに
暗号化ソフトウェア・オブジェクトを一時的に解読する
ように、コピー操作を防止することが好ましい。潜在的
ユーザがソフトウェア・オブジェクトの購入を選択した
場合は、永続使用動作モードに入り、そこでソフトウェ
ア・オブジェクトの機能制限が永続的に取り消され、潜
在的ユーザがソフトウェア・オブジェクトを無制限に使
用できるようになる。これにより、潜在的ユーザがソフ
トウェアを検討して、そのソフトウェアが自分のニーズ
に合っているかどうかを判定できるようにするためのブ
ラウズ操作が容易になる。
トウェア・オブジェクトをファイル管理プログラムとと
もにコンピュータがアクセス可能なメモリ媒体で提供す
ることで達成される。このソフトウェア・オブジェクト
は、1つまたは複数の特定の暗号化操作により取消し可
能な機能制限が施されていることが好ましい。コンピュ
ータがアクセス可能なメモリ媒体は、従来の郵便および
配送サービスを使用して作成者から潜在的ユーザに発送
される。潜在的ユーザは、これを受け取ると、ユーザ制
御のデータ処理システムにファイル管理プログラムをロ
ードし、そのデータ処理システム用のオペレーティング
・システムにそれを関連付ける。次に、ユーザ制御のデ
ータ処理システムを使用してコンピュータがアクセス可
能なメモリ媒体が読み取られる。ファイル管理プログラ
ムは、ユーザ制御のデータ処理システムによって実行さ
れ、定義済みの一時試用期間の間、ソフトウェア・オブ
ジェクトへのアクセスを制限するよう機能する。一時試
用動作モードの間、ソフトウェア・オブジェクトの取消
し可能機能制限を取り消すことで、ソフトウェア・オブ
ジェクトが一時的に使用可能になる。これは、ユーザ制
御のデータ処理システムのオペレーティング・システム
がソフトウェア・オブジェクトを呼び出したときの暗号
化ソフトウェア・オブジェクトの暗号解読によって達成
されることが好ましい。ファイル管理プログラムは、オ
ペレーティング・システムによって呼び出されたときに
暗号化ソフトウェア・オブジェクトを一時的に解読する
ように、コピー操作を防止することが好ましい。潜在的
ユーザがソフトウェア・オブジェクトの購入を選択した
場合は、永続使用動作モードに入り、そこでソフトウェ
ア・オブジェクトの機能制限が永続的に取り消され、潜
在的ユーザがソフトウェア・オブジェクトを無制限に使
用できるようになる。これにより、潜在的ユーザがソフ
トウェアを検討して、そのソフトウェアが自分のニーズ
に合っているかどうかを判定できるようにするためのブ
ラウズ操作が容易になる。
【0011】
【課題を解決するための手段】ファイル管理プログラム
は、ユーザ制御のデータ処理システムのオペレーティン
グ・システムを連続監視し、システムの入力呼出しと出
力呼出しを操作する。また、ファイル管理プログラム
は、ユーザ制御のデータ処理システムのオペレーティン
グ・システムが試用期間中にブラウズの対象となるソフ
トウェア・オブジェクトを要求した時点を識別する。そ
の後、ファイル管理システムは、そのソフトウェア・オ
ブジェクトに関連する一時アクセス・キーを取り出し、
その一時アクセス・キーを検査して有効かどうかを判定
する。次に、ファイル管理プログラムは、ソフトウェア
・オブジェクトの機能制限を取り消し、処理のためにそ
れをデータ処理システムに渡す。
は、ユーザ制御のデータ処理システムのオペレーティン
グ・システムを連続監視し、システムの入力呼出しと出
力呼出しを操作する。また、ファイル管理プログラム
は、ユーザ制御のデータ処理システムのオペレーティン
グ・システムが試用期間中にブラウズの対象となるソフ
トウェア・オブジェクトを要求した時点を識別する。そ
の後、ファイル管理システムは、そのソフトウェア・オ
ブジェクトに関連する一時アクセス・キーを取り出し、
その一時アクセス・キーを検査して有効かどうかを判定
する。次に、ファイル管理プログラムは、ソフトウェア
・オブジェクトの機能制限を取り消し、処理のためにそ
れをデータ処理システムに渡す。
【0012】暗号化したソフトウェア・オブジェクト
は、特定のシステム構成を有するユーザ制御のデータ処
理システムにロードされる。その後、少なくとも一部が
ユーザ制御のデータ処理システムの特定の構成に基づく
数値計算機ID(numerical machine identification)
が導出される。次に、少なくとも一部がこの数値計算機
IDと永続暗号化キーに基づく一時キーが導出される。
この一時キーを受け取って永続暗号化キーを生成するた
めの永続キー生成プログラムが提供されている。この一
時キーを使用すると、ユーザはソフトウェア・オブジェ
クトにアクセスするための永続暗号化キーを所定の期
間、生成することができる。これらの操作は、複数のモ
ードで動作可能なファイル管理プログラムによって主に
実行される。このようなモードとしては、セットアップ
動作モード、計算機ID動作モード、一時キー導出動作
モードがある。セットアップ動作モード時には、ファイ
ル管理プログラムがユーザ制御のデータ処理システムに
ロードされ、ユーザ制御のデータ処理システム用のオペ
レーティング・システムに関連付けられる。計算機ID
動作モード時には、少なくともユーザ制御のデータ処理
システムの属性に基づく数値計算機IDを導出するため
にファイル管理プログラムが使用される。一時キー導出
動作モード時には、少なくとも一部が数値計算機IDに
基づく一時キーが導出される。また、ファイル管理プロ
グラムにより試用動作モードも可能になり、そのモード
では、一時キーによって定義された期間の間、ソフトウ
ェア・オブジェクトへのアクセスを制限するためにユー
ザ制御のデータ処理システムでファイル管理プログラム
を実行することでそのファイル管理プログラムが使用さ
れ、その定義済み期間中は、一時キーを含む少なくとも
1つの入力の受取りに対する応答として永続キーを提供
するために、ユーザ制御のデータ処理システムで永続キ
ー生成プログラムが使用される。
は、特定のシステム構成を有するユーザ制御のデータ処
理システムにロードされる。その後、少なくとも一部が
ユーザ制御のデータ処理システムの特定の構成に基づく
数値計算機ID(numerical machine identification)
が導出される。次に、少なくとも一部がこの数値計算機
IDと永続暗号化キーに基づく一時キーが導出される。
この一時キーを受け取って永続暗号化キーを生成するた
めの永続キー生成プログラムが提供されている。この一
時キーを使用すると、ユーザはソフトウェア・オブジェ
クトにアクセスするための永続暗号化キーを所定の期
間、生成することができる。これらの操作は、複数のモ
ードで動作可能なファイル管理プログラムによって主に
実行される。このようなモードとしては、セットアップ
動作モード、計算機ID動作モード、一時キー導出動作
モードがある。セットアップ動作モード時には、ファイ
ル管理プログラムがユーザ制御のデータ処理システムに
ロードされ、ユーザ制御のデータ処理システム用のオペ
レーティング・システムに関連付けられる。計算機ID
動作モード時には、少なくともユーザ制御のデータ処理
システムの属性に基づく数値計算機IDを導出するため
にファイル管理プログラムが使用される。一時キー導出
動作モード時には、少なくとも一部が数値計算機IDに
基づく一時キーが導出される。また、ファイル管理プロ
グラムにより試用動作モードも可能になり、そのモード
では、一時キーによって定義された期間の間、ソフトウ
ェア・オブジェクトへのアクセスを制限するためにユー
ザ制御のデータ処理システムでファイル管理プログラム
を実行することでそのファイル管理プログラムが使用さ
れ、その定義済み期間中は、一時キーを含む少なくとも
1つの入力の受取りに対する応答として永続キーを提供
するために、ユーザ制御のデータ処理システムで永続キ
ー生成プログラムが使用される。
【0013】ファイル管理プログラムは、データ処理シ
ステムのオペレーティング・システム構成要素として提
供される。コンピュータがアクセス可能なメモリ媒体に
は、少なくとも1つの暗号化ファイルと少なくとも1つ
の非暗号化ファイルとを含む複数のファイルが格納され
ている。それぞれの暗号化ファイルごとに、事前選択部
分がコンピュータ・メモリに記録され、ファイルの暗号
解読に使用できる情報を含む暗号解読ブロックが生成さ
れ、コンピュータ・メモリの他の場所にすでに記録され
ていた事前選択部分の代わりにその暗号解読ブロックが
ファイルに組み込まれる。ここでファイル管理プログラ
ムを使用して、アクセス可能なメモリ媒体に格納されて
いる被呼ファイルに関するコンピュータのデータ処理操
作呼出しを監視する。ファイル管理プログラムは、その
被呼ファイルが関連の暗号解読ブロックを備えているか
どうかを判定する。被呼ファイルが関連の暗号解読ブロ
ックを備えているかどうかに応じて、ファイル管理プロ
グラムはその被呼ファイルを特定の方法で処理する。暗
号解読ブロックを組み込んでも暗号化ファイルのサイズ
は変わらないため、所与のタイプの処理エラーが防止さ
れる。試用期間中、暗号化ファイルは暗号化状態に維持
されるため、コピーすることができない。潜在的ユーザ
がソフトウェア製品の購入を決定した場合、暗号解読ブ
ロックの代わりに事前選択部分をファイルに戻すための
永続キーが提供される。暗号解読ブロックが除去される
と、暗号化ファイルを暗号解読して、購入者による無制
限使用を可能にすることができる。オペレーティング・
システムによって呼び出されたときにファイルを代行受
信するために、ならびに、暗号解読ブロックを使用して
キー・ファイル用の名前を導出し被呼ファイルを読み取
るために、ファイル管理プログラムを使用することが好
ましい。それぞれの暗号化ファイルの暗号解読ブロック
は、ファイル管理プログラムによって暗号解読され、被
呼ファイル用の選択済みセグメントと比較されて、その
キーが特定のファイルを暗号解読できるかどうかを判定
するための妥当性検査セグメントを含んでいる。暗号解
読された妥当性検査セグメントが既知のクリア・テキス
ト妥当性検査セグメントと一致すると、ファイルは、今
後の処理のためにオペレーティング・システムに渡され
るときに動的に暗号解読される。
ステムのオペレーティング・システム構成要素として提
供される。コンピュータがアクセス可能なメモリ媒体に
は、少なくとも1つの暗号化ファイルと少なくとも1つ
の非暗号化ファイルとを含む複数のファイルが格納され
ている。それぞれの暗号化ファイルごとに、事前選択部
分がコンピュータ・メモリに記録され、ファイルの暗号
解読に使用できる情報を含む暗号解読ブロックが生成さ
れ、コンピュータ・メモリの他の場所にすでに記録され
ていた事前選択部分の代わりにその暗号解読ブロックが
ファイルに組み込まれる。ここでファイル管理プログラ
ムを使用して、アクセス可能なメモリ媒体に格納されて
いる被呼ファイルに関するコンピュータのデータ処理操
作呼出しを監視する。ファイル管理プログラムは、その
被呼ファイルが関連の暗号解読ブロックを備えているか
どうかを判定する。被呼ファイルが関連の暗号解読ブロ
ックを備えているかどうかに応じて、ファイル管理プロ
グラムはその被呼ファイルを特定の方法で処理する。暗
号解読ブロックを組み込んでも暗号化ファイルのサイズ
は変わらないため、所与のタイプの処理エラーが防止さ
れる。試用期間中、暗号化ファイルは暗号化状態に維持
されるため、コピーすることができない。潜在的ユーザ
がソフトウェア製品の購入を決定した場合、暗号解読ブ
ロックの代わりに事前選択部分をファイルに戻すための
永続キーが提供される。暗号解読ブロックが除去される
と、暗号化ファイルを暗号解読して、購入者による無制
限使用を可能にすることができる。オペレーティング・
システムによって呼び出されたときにファイルを代行受
信するために、ならびに、暗号解読ブロックを使用して
キー・ファイル用の名前を導出し被呼ファイルを読み取
るために、ファイル管理プログラムを使用することが好
ましい。それぞれの暗号化ファイルの暗号解読ブロック
は、ファイル管理プログラムによって暗号解読され、被
呼ファイル用の選択済みセグメントと比較されて、その
キーが特定のファイルを暗号解読できるかどうかを判定
するための妥当性検査セグメントを含んでいる。暗号解
読された妥当性検査セグメントが既知のクリア・テキス
ト妥当性検査セグメントと一致すると、ファイルは、今
後の処理のためにオペレーティング・システムに渡され
るときに動的に暗号解読される。
【0014】ファイル管理プログラムは、データ処理シ
ステムのオペレーティング・システム構成要素として提
供される。データ処理システムにとって使用可能でコン
ピュータがアクセス可能なメモリ媒体には、少なくとも
1つの暗号化ファイルと1つの非暗号化ファイルが格納
されている。この暗号化ファイルには、少なくとも一部
が実行可能コードで構成されている非暗号化安全保護ス
タブが関連付けられている。ここでファイル管理プログ
ラムを使用して、コンピュータがアクセス可能なメモリ
媒体に格納されている被呼ファイルに関するデータ処理
システム呼出しを監視し、その被呼ファイルが関連の非
暗号化安全保護スタブを備えているかどうかを判定し、
被呼ファイルが関連の非暗号化安全保護スタブを備えて
いるかどうかに応じて、その被呼ファイルを特定の方法
で処理する。より具体的には、被呼ファイルが関連の非
暗号化安全保護スタブを備えてないと判定された場合、
その被呼ファイルの処理が可能になる。しかし、被呼フ
ァイルが関連の非暗号化安全保護スタブを備えていると
判定された場合には、被呼ファイルの処理が可能かどう
かの判定を行う前にそのファイルを検査しなければなら
ない。まず、暗号解読操作を実行可能にする情報を得る
ために、非暗号化安全保護スタブが検査される。次に、
暗号解読操作が実行される。最後に、今後の処理のため
に被呼ファイルの転送が可能になる。被呼ファイルは、
処理のためにオペレーティング・システムに渡されると
きに動的に暗号解読されることが好ましい。また、被呼
ファイルの実行前に非暗号化安全保護スタブが被呼ファ
イルから分離される。ただし、非暗号化安全保護スタブ
がたまたま被呼ファイルに接続されたままになってしま
った場合には、処理操作を停止しなければならず、プロ
セッサがロック状態になるのを防止するため、メッセー
ジを通知しなければならない。
ステムのオペレーティング・システム構成要素として提
供される。データ処理システムにとって使用可能でコン
ピュータがアクセス可能なメモリ媒体には、少なくとも
1つの暗号化ファイルと1つの非暗号化ファイルが格納
されている。この暗号化ファイルには、少なくとも一部
が実行可能コードで構成されている非暗号化安全保護ス
タブが関連付けられている。ここでファイル管理プログ
ラムを使用して、コンピュータがアクセス可能なメモリ
媒体に格納されている被呼ファイルに関するデータ処理
システム呼出しを監視し、その被呼ファイルが関連の非
暗号化安全保護スタブを備えているかどうかを判定し、
被呼ファイルが関連の非暗号化安全保護スタブを備えて
いるかどうかに応じて、その被呼ファイルを特定の方法
で処理する。より具体的には、被呼ファイルが関連の非
暗号化安全保護スタブを備えてないと判定された場合、
その被呼ファイルの処理が可能になる。しかし、被呼フ
ァイルが関連の非暗号化安全保護スタブを備えていると
判定された場合には、被呼ファイルの処理が可能かどう
かの判定を行う前にそのファイルを検査しなければなら
ない。まず、暗号解読操作を実行可能にする情報を得る
ために、非暗号化安全保護スタブが検査される。次に、
暗号解読操作が実行される。最後に、今後の処理のため
に被呼ファイルの転送が可能になる。被呼ファイルは、
処理のためにオペレーティング・システムに渡されると
きに動的に暗号解読されることが好ましい。また、被呼
ファイルの実行前に非暗号化安全保護スタブが被呼ファ
イルから分離される。ただし、非暗号化安全保護スタブ
がたまたま被呼ファイルに接続されたままになってしま
った場合には、処理操作を停止しなければならず、プロ
セッサがロック状態になるのを防止するため、メッセー
ジを通知しなければならない。
【0015】コンピュータがアクセス可能なメモリ媒体
は、所定の暗号化エンジンと永続秘密キーとを使用して
暗号化されるソフトウェア・オブジェクトを含んでい
る。ソースとユーザとの対話を容易にするためのインタ
フェース・プログラムが提供される。このインタフェー
ス・プログラムは、少なくともユーザ制御のデータ処理
システムの所定の属性を使用して計算機IDを生成する
計算機IDモジュールを含んでいる。また、このインタ
フェース・プログラムは、少なくとも一時キーを入力と
して受け取り、永続秘密キーを出力として生成する永続
秘密キー生成プログラムをさらに含んでいる。一時キー
をテストしてその妥当性を判定するための妥当性検査モ
ジュールが提供される。ソフトウェア・オブジェクトの
ソース側は、少なくとも計算機IDを入力として受け取
り、一時キーを出力として生成する一時キー生成プログ
ラムを保管している。インタフェース・プログラムはユ
ーザ制御のデータ処理システムにロードされる。ユーザ
制御のデータ処理システムの少なくとも1つの所定の属
性を検査し、計算機IDを生成するために、計算機ID
モジュールが使用される。この計算機IDは、ソースと
ユーザとの対話時にセキュリティ対策のない通信チャネ
ルを介してやりとりされる。ソフトウェア・オブジェク
トのソース側では、一時キー生成プログラムへの入力と
して計算機ID(およびその他の情報)を使用して一時
キーが生成される。この一時キーは、ソースとユーザと
の対話時に、通常、セキュリティ対策のない通信チャネ
ルを介してやりとりされる。次に、妥当性検査モジュー
ルを使用して、一時キーの妥当性を判定する。その後、
永続秘密キー生成プログラムを使用して、一時キーを受
け取り、ソフトウェア・オブジェクトを暗号解読して一
時的にそのオブジェクトへのアクセスを獲得するための
永続秘密キーを生成する。一時キーによってソフトウェ
ア・オブジェクトへの一時試用アクセスを可能にする一
方で、分散データ処理システム内のある計算機から分散
データ処理システム内の別の計算機へ暗号化ソフトウェ
ア・オブジェクト、キー・ファイル、および計算機ID
ファイルを転送するために携帯用メモリ媒体の使用を可
能にするインポート・モジュールとエクスポート・モジ
ュールもユーザに提供される。
は、所定の暗号化エンジンと永続秘密キーとを使用して
暗号化されるソフトウェア・オブジェクトを含んでい
る。ソースとユーザとの対話を容易にするためのインタ
フェース・プログラムが提供される。このインタフェー
ス・プログラムは、少なくともユーザ制御のデータ処理
システムの所定の属性を使用して計算機IDを生成する
計算機IDモジュールを含んでいる。また、このインタ
フェース・プログラムは、少なくとも一時キーを入力と
して受け取り、永続秘密キーを出力として生成する永続
秘密キー生成プログラムをさらに含んでいる。一時キー
をテストしてその妥当性を判定するための妥当性検査モ
ジュールが提供される。ソフトウェア・オブジェクトの
ソース側は、少なくとも計算機IDを入力として受け取
り、一時キーを出力として生成する一時キー生成プログ
ラムを保管している。インタフェース・プログラムはユ
ーザ制御のデータ処理システムにロードされる。ユーザ
制御のデータ処理システムの少なくとも1つの所定の属
性を検査し、計算機IDを生成するために、計算機ID
モジュールが使用される。この計算機IDは、ソースと
ユーザとの対話時にセキュリティ対策のない通信チャネ
ルを介してやりとりされる。ソフトウェア・オブジェク
トのソース側では、一時キー生成プログラムへの入力と
して計算機ID(およびその他の情報)を使用して一時
キーが生成される。この一時キーは、ソースとユーザと
の対話時に、通常、セキュリティ対策のない通信チャネ
ルを介してやりとりされる。次に、妥当性検査モジュー
ルを使用して、一時キーの妥当性を判定する。その後、
永続秘密キー生成プログラムを使用して、一時キーを受
け取り、ソフトウェア・オブジェクトを暗号解読して一
時的にそのオブジェクトへのアクセスを獲得するための
永続秘密キーを生成する。一時キーによってソフトウェ
ア・オブジェクトへの一時試用アクセスを可能にする一
方で、分散データ処理システム内のある計算機から分散
データ処理システム内の別の計算機へ暗号化ソフトウェ
ア・オブジェクト、キー・ファイル、および計算機ID
ファイルを転送するために携帯用メモリ媒体の使用を可
能にするインポート・モジュールとエクスポート・モジ
ュールもユーザに提供される。
【0016】
【実施例】ソフトウェア製品の試用期間での使用を可能
にするための本発明の方法および装置は、図1に示すよ
うなスタンドアロン型PCまたは図2に示すような分散
データ処理システムで使用できる。いずれの場合にも、
1つまたは複数のソフトウェア製品に対する一時試用期
間アクセスは、特定のデータ処理システム属性を備えた
特定のデータ処理システムにおける試用製品の使い方に
よって決まる。これは、1つまたは複数のデータ処理シ
ステム属性に基づく一時アクセス・キーを使用して試用
ソフトウェア製品を暗号化することによって達成され
る。図3は、以下に詳述する一時アクセス・キーを作成
する際に使用可能な複数のシステム構成属性を示したも
のである。まず、図1のスタンドアロン型データ処理シ
ステムの環境と、図2の分散データ処理システムについ
て詳しく説明し、次に、図3に示す特定のシステム構成
属性について説明する。
にするための本発明の方法および装置は、図1に示すよ
うなスタンドアロン型PCまたは図2に示すような分散
データ処理システムで使用できる。いずれの場合にも、
1つまたは複数のソフトウェア製品に対する一時試用期
間アクセスは、特定のデータ処理システム属性を備えた
特定のデータ処理システムにおける試用製品の使い方に
よって決まる。これは、1つまたは複数のデータ処理シ
ステム属性に基づく一時アクセス・キーを使用して試用
ソフトウェア製品を暗号化することによって達成され
る。図3は、以下に詳述する一時アクセス・キーを作成
する際に使用可能な複数のシステム構成属性を示したも
のである。まず、図1のスタンドアロン型データ処理シ
ステムの環境と、図2の分散データ処理システムについ
て詳しく説明し、次に、図3に示す特定のシステム構成
属性について説明する。
【0017】ここで添付図面、特に図1に関して説明す
ると、同図には、本発明によりプログラミング可能なデ
ータ処理システム10の絵画表現が示されている。図示
の通り、データ処理システム10は、好ましくはグラフ
ィック・プロセッサと、メモリ装置と、中央処理装置
(図示せず)とを含む、プロセッサ12を含んでいる。
このプロセッサ12には、カラー・モニタまたはモノク
ロ・モニタのいずれかを使用して実現可能な表示装置1
6が当技術分野で周知の方法で結合されている。また、
プロセッサ12にはキーボード14も結合されている。
キーボード14は、ケーブルによってプロセッサに結合
される標準のコンピュータ・キーボードで構成されるこ
とが好ましい。
ると、同図には、本発明によりプログラミング可能なデ
ータ処理システム10の絵画表現が示されている。図示
の通り、データ処理システム10は、好ましくはグラフ
ィック・プロセッサと、メモリ装置と、中央処理装置
(図示せず)とを含む、プロセッサ12を含んでいる。
このプロセッサ12には、カラー・モニタまたはモノク
ロ・モニタのいずれかを使用して実現可能な表示装置1
6が当技術分野で周知の方法で結合されている。また、
プロセッサ12にはキーボード14も結合されている。
キーボード14は、ケーブルによってプロセッサに結合
される標準のコンピュータ・キーボードで構成されるこ
とが好ましい。
【0018】プロセッサ12には、マウス20などの図
形ポインティング・デバイスも結合されている。このマ
ウス20は、ケーブルによって当技術分野で周知の方法
でプロセッサ12に結合されている。図示の通り、マウ
ス20は、左ボタン24と右ボタン26を含むことがで
き、そのそれぞれを押す、すなわち「クリック」する
と、データ処理システム10にコマンドおよび制御信号
を出力することができる。開示されている本発明の実施
例ではマウスを使用しているが、当業者は、本発明の方
法を実施するためにライト・ペンまたはタッチ画面など
の図形ポインティング・デバイスも使用できることに留
意されたい。上記の説明を参照する際に、当業者は、I
BM製のモデル80PS/2コンピュータなどのいわゆ
るパーソナル・コンピュータを使用してデータ処理シス
テム10を実現できることに留意されたい。
形ポインティング・デバイスも結合されている。このマ
ウス20は、ケーブルによって当技術分野で周知の方法
でプロセッサ12に結合されている。図示の通り、マウ
ス20は、左ボタン24と右ボタン26を含むことがで
き、そのそれぞれを押す、すなわち「クリック」する
と、データ処理システム10にコマンドおよび制御信号
を出力することができる。開示されている本発明の実施
例ではマウスを使用しているが、当業者は、本発明の方
法を実施するためにライト・ペンまたはタッチ画面など
の図形ポインティング・デバイスも使用できることに留
意されたい。上記の説明を参照する際に、当業者は、I
BM製のモデル80PS/2コンピュータなどのいわゆ
るパーソナル・コンピュータを使用してデータ処理シス
テム10を実現できることに留意されたい。
【0019】本発明はスタンドアロン型データ処理シス
テムで実施可能であるが、分散データ処理システムでも
実施することができる。ただし、その場合は、分散デー
タ処理システム内の特定のデータ処理装置間で携帯用メ
モリ媒体(ディスケットまたはテープなど)を介して1
つまたは複数の暗号化ファイル、その暗号化キー・ファ
イル、および関連のファイル管理プログラムを転送する
ために、本発明のインポート・ルーチンとエクスポート
・ルーチンが使用される。本発明のインポート・ルーチ
ンおよびエクスポート・ルーチンについては後で詳述す
るが、基本的な分散データ処理システムについて説明
し、これを理解しておくことが重要である。
テムで実施可能であるが、分散データ処理システムでも
実施することができる。ただし、その場合は、分散デー
タ処理システム内の特定のデータ処理装置間で携帯用メ
モリ媒体(ディスケットまたはテープなど)を介して1
つまたは複数の暗号化ファイル、その暗号化キー・ファ
イル、および関連のファイル管理プログラムを転送する
ために、本発明のインポート・ルーチンとエクスポート
・ルーチンが使用される。本発明のインポート・ルーチ
ンおよびエクスポート・ルーチンについては後で詳述す
るが、基本的な分散データ処理システムについて説明
し、これを理解しておくことが重要である。
【0020】図3は、特定のデータ処理システム(スタ
ンドアロン型か、分散データ処理システム内のノード
か)を明確に識別するのに使用でき、さらに特定の定義
済み試用期間の間、暗号化製品へのアクセスを獲得する
のに使用できる一時アクセス製品キーを導出または生成
する場合に使用する計算機ID値を生成するのに使用で
きる、複数のデータ処理システム属性を示すブロック図
である。データ処理システムは、特定のシステム・バス
60アーキテクチャと、特定のメモリ制御装置74と、
バス制御装置76と、割込み制御装置78と、キーボー
ド・マウス制御装置80と、DMA制御装置66と、V
GAビデオ制御装置82と、並列制御装置84と、直列
制御装置86と、ディスケット制御装置88と、ディス
ク制御装置102とを含むことができる。さらに、特定
のデータ処理システムを識別するために、複数の空また
は占有済みスロット106を使用することもできる。そ
れぞれの特定のデータ処理システムは、RAM70、R
OM68、またはCMOSRAM72から導出可能な複
数の属性を有することができる。計算機ID値を導出す
るために所定の方法で処理可能な、データ処理システム
の1つまたは複数の属性を導出するために、プリンタ9
6、モニタ94、マウス92、キーボード90、ディス
ケット100、またはディスク・ドライブ104などの
端末装置を使用することもできる。この計算機ID値の
導出については、後で詳述する。本発明は、ソフトウェ
ア・プログラムのライセンスを(購入することによっ
て)取得する前にそのプログラムを試すための手段をユ
ーザに提供するために、ユーザにソフトウェア・プログ
ラムを配布する効率の良い方法に関するものである。こ
の概念により、ディスケットまたはCD−ROMなどの
コンピュータがアクセス可能なメモリ媒体に収めた完全
なプログラムが潜在的ユーザに配布される。この概念
は、ユーザが配布された媒体からプログラムにアクセス
できるようにするためのキーを生成することにある。こ
のような環境では、ユーザが各種ソフトウェア製品をブ
ラウズできるようにする複数のインタフェースがファイ
ル管理プログラムによって提供される。このインタフェ
ースにより、配布された媒体に収容されたソフトウェア
製品の注文とロック解除が可能になる。ソフトウェア製
品のロック解除は、一時アクセス(暗号解読)キーの受
取り、妥当性検査、および記録によって達成される。
ンドアロン型か、分散データ処理システム内のノード
か)を明確に識別するのに使用でき、さらに特定の定義
済み試用期間の間、暗号化製品へのアクセスを獲得する
のに使用できる一時アクセス製品キーを導出または生成
する場合に使用する計算機ID値を生成するのに使用で
きる、複数のデータ処理システム属性を示すブロック図
である。データ処理システムは、特定のシステム・バス
60アーキテクチャと、特定のメモリ制御装置74と、
バス制御装置76と、割込み制御装置78と、キーボー
ド・マウス制御装置80と、DMA制御装置66と、V
GAビデオ制御装置82と、並列制御装置84と、直列
制御装置86と、ディスケット制御装置88と、ディス
ク制御装置102とを含むことができる。さらに、特定
のデータ処理システムを識別するために、複数の空また
は占有済みスロット106を使用することもできる。そ
れぞれの特定のデータ処理システムは、RAM70、R
OM68、またはCMOSRAM72から導出可能な複
数の属性を有することができる。計算機ID値を導出す
るために所定の方法で処理可能な、データ処理システム
の1つまたは複数の属性を導出するために、プリンタ9
6、モニタ94、マウス92、キーボード90、ディス
ケット100、またはディスク・ドライブ104などの
端末装置を使用することもできる。この計算機ID値の
導出については、後で詳述する。本発明は、ソフトウェ
ア・プログラムのライセンスを(購入することによっ
て)取得する前にそのプログラムを試すための手段をユ
ーザに提供するために、ユーザにソフトウェア・プログ
ラムを配布する効率の良い方法に関するものである。こ
の概念により、ディスケットまたはCD−ROMなどの
コンピュータがアクセス可能なメモリ媒体に収めた完全
なプログラムが潜在的ユーザに配布される。この概念
は、ユーザが配布された媒体からプログラムにアクセス
できるようにするためのキーを生成することにある。こ
のような環境では、ユーザが各種ソフトウェア製品をブ
ラウズできるようにする複数のインタフェースがファイ
ル管理プログラムによって提供される。このインタフェ
ースにより、配布された媒体に収容されたソフトウェア
製品の注文とロック解除が可能になる。ソフトウェア製
品のロック解除は、一時アクセス(暗号解読)キーの受
取り、妥当性検査、および記録によって達成される。
【0021】ファイル管理プログラムは、ユーザ制御の
データ処理システムに常駐し、ユーザのコンピュータ内
でオペレーティング・システムの一部になる。(PC
DOS環境における)このような常駐プログラムの一例
としては、DOSのファイル入出力操作を代行受信して
処理する「終了後常駐」操作のための常駐プログラムT
SRが考えられる。ユーザに一時アクセス・キーが提供
されると、このファイルが以前は試用動作モードで使用
されていたかどうかを確認するため、システム・ファイ
ルが検査される。製品を試用動作モードで使用したこと
がない場合は、一時キーが保管される。試用動作モード
・キーが存在すると、ファイル管理プログラムによって
開始された場合のみ、暗号化アプリケーションを実行す
ることができる。この場合、ファイル管理プログラム
は、アプリケーションが暗号化され、特定の操作用に有
効な試用動作モード・キーが存在することを認識する。
有効な試用動作モード・キーとは、期限が切れていない
キーである。試用動作モードは、タイマまたはカウンタ
で定義することができる。すなわち、タイマを使用して
特定の定義済み期間(たとえば、30日)の秒読みを行
うか、あるいはカウンタを使用して、試用動作モード中
に許可される定義済み回数分の試用「セッション」の
間、減分することができる。キーが有効な場合、ファイ
ル管理プログラムは、TSRと直接やりとりし、特定の
暗号化アプリケーションに関して試用動作モードを可能
にする。その後、ファイル管理プログラムは暗号化アプ
リケーションを開始する。ユーザ制御のデータ処理シス
テムのオペレーティング・システムに常駐するコード
は、そのオペレーティング・システムに対する制御権を
維持する。このコードは、ファイルを暗号解読してメモ
リにロードできるようにするために試用動作モード・キ
ーの使い方を監視するが、暗号化ファイルが暗号解読さ
れて媒体にコピーされるのを防止する。このような操作
は、オペレーティング・システムを使用してどのアプリ
ケーションがデータにアクセスしようとしているかを判
定し、データへのアクセス許可を持っているアプリケー
ションだけ、アクセスできるようにすることで行われ
る。
データ処理システムに常駐し、ユーザのコンピュータ内
でオペレーティング・システムの一部になる。(PC
DOS環境における)このような常駐プログラムの一例
としては、DOSのファイル入出力操作を代行受信して
処理する「終了後常駐」操作のための常駐プログラムT
SRが考えられる。ユーザに一時アクセス・キーが提供
されると、このファイルが以前は試用動作モードで使用
されていたかどうかを確認するため、システム・ファイ
ルが検査される。製品を試用動作モードで使用したこと
がない場合は、一時キーが保管される。試用動作モード
・キーが存在すると、ファイル管理プログラムによって
開始された場合のみ、暗号化アプリケーションを実行す
ることができる。この場合、ファイル管理プログラム
は、アプリケーションが暗号化され、特定の操作用に有
効な試用動作モード・キーが存在することを認識する。
有効な試用動作モード・キーとは、期限が切れていない
キーである。試用動作モードは、タイマまたはカウンタ
で定義することができる。すなわち、タイマを使用して
特定の定義済み期間(たとえば、30日)の秒読みを行
うか、あるいはカウンタを使用して、試用動作モード中
に許可される定義済み回数分の試用「セッション」の
間、減分することができる。キーが有効な場合、ファイ
ル管理プログラムは、TSRと直接やりとりし、特定の
暗号化アプリケーションに関して試用動作モードを可能
にする。その後、ファイル管理プログラムは暗号化アプ
リケーションを開始する。ユーザ制御のデータ処理シス
テムのオペレーティング・システムに常駐するコード
は、そのオペレーティング・システムに対する制御権を
維持する。このコードは、ファイルを暗号解読してメモ
リにロードできるようにするために試用動作モード・キ
ーの使い方を監視するが、暗号化ファイルが暗号解読さ
れて媒体にコピーされるのを防止する。このような操作
は、オペレーティング・システムを使用してどのアプリ
ケーションがデータにアクセスしようとしているかを判
定し、データへのアクセス許可を持っているアプリケー
ションだけ、アクセスできるようにすることで行われ
る。
【0022】図4は、ソフトウェア・オブジェクトを暗
号化するためのルーチンを示すブロック図である。ソフ
トウェア・オブジェクト201を構成する2進キャラク
タは、暗号化エンジン205に入力として供給される。
暗号化エンジン205では、暗号化キーとして実キー2
03が使用される。この暗号化エンジン205の出力は
暗号化ソフトウェア・オブジェクト207になる。暗号
化エンジン205は、公表され周知のDESアルゴリズ
ムなどの従来の暗号化操作である場合もあれば、ソフト
ウェア・オブジェクト201を乱数化する排他的論理和
演算であってもよい。
号化するためのルーチンを示すブロック図である。ソフ
トウェア・オブジェクト201を構成する2進キャラク
タは、暗号化エンジン205に入力として供給される。
暗号化エンジン205では、暗号化キーとして実キー2
03が使用される。この暗号化エンジン205の出力は
暗号化ソフトウェア・オブジェクト207になる。暗号
化エンジン205は、公表され周知のDESアルゴリズ
ムなどの従来の暗号化操作である場合もあれば、ソフト
ウェア・オブジェクト201を乱数化する排他的論理和
演算であってもよい。
【0023】図5は、本発明の教示によりソース209
(ソフトウェア・ベンダ)とユーザ211(潜在的顧
客)との間で行われる情報交換を示す絵画表現である。
ソース209とユーザ211との間の矢印は、ベンダ2
09および211間で行われるオブジェクトまたは情報
の交換を意味する。流れ213の交換では、コンピュー
タがアクセス可能なメモリ媒体がソース209からユー
ザ211に送られる。この転送は、郵便、宅配便、至急
配達によって行われる場合もあれば、書籍や雑誌などの
印刷物を介して引き渡される場合もある。あるいは、電
子メールまたはその他の伝送技術を使用して、ソース2
09からユーザ211に電子文書が転送される場合もあ
る。流れ215では、好ましくはユーザ211のデータ
処理システムを識別する固有の計算機ID番号を含む、
ユーザ固有情報がセキュリティ対策のない通信チャネル
を介してユーザ211からソース209に転送される。
通常、この情報は電話で交換されるが、電子メールまた
はその他の通信技術を使用して渡される場合もある。流
れ217では、ソース209がユーザ211に製品キー
を提供する。この製品キーを使用すると、所定の定義済
み期間の間、メモリ媒体に収容されている製品に一時的
にアクセスできるようになる。この期間は、ユーザ21
1がそのソフトウェアに精通し、ソフトウェア製品を購
入したいかどうかを決定できる「試用」期間と見なされ
る。ソフトウェア製品への永続アクセス権を取得するた
めには、ユーザ211はさらにソース209とやりとり
しなければならない。製品キーによって、ユーザ211
は特定の定義済み期間の間または特定の定義済み「セッ
ション」数の間、そのソフトウェア製品へのアクセス権
を取得することができる。時間の経過とともに、ユーザ
のクロックまたはカウンタの目盛りが減少する。試用期
間が終了すると、それ以上アクセスしようとしても拒否
される。このため、ユーザ211は、ソース209に連
絡するとともに、ユーザ211に送られ、そのソフトウ
ェア製品への無制限アクセスを可能にするために永続的
に製品のロックを解除する永続キーを購入するための肯
定的ステップを実行しなければならない。
(ソフトウェア・ベンダ)とユーザ211(潜在的顧
客)との間で行われる情報交換を示す絵画表現である。
ソース209とユーザ211との間の矢印は、ベンダ2
09および211間で行われるオブジェクトまたは情報
の交換を意味する。流れ213の交換では、コンピュー
タがアクセス可能なメモリ媒体がソース209からユー
ザ211に送られる。この転送は、郵便、宅配便、至急
配達によって行われる場合もあれば、書籍や雑誌などの
印刷物を介して引き渡される場合もある。あるいは、電
子メールまたはその他の伝送技術を使用して、ソース2
09からユーザ211に電子文書が転送される場合もあ
る。流れ215では、好ましくはユーザ211のデータ
処理システムを識別する固有の計算機ID番号を含む、
ユーザ固有情報がセキュリティ対策のない通信チャネル
を介してユーザ211からソース209に転送される。
通常、この情報は電話で交換されるが、電子メールまた
はその他の通信技術を使用して渡される場合もある。流
れ217では、ソース209がユーザ211に製品キー
を提供する。この製品キーを使用すると、所定の定義済
み期間の間、メモリ媒体に収容されている製品に一時的
にアクセスできるようになる。この期間は、ユーザ21
1がそのソフトウェアに精通し、ソフトウェア製品を購
入したいかどうかを決定できる「試用」期間と見なされ
る。ソフトウェア製品への永続アクセス権を取得するた
めには、ユーザ211はさらにソース209とやりとり
しなければならない。製品キーによって、ユーザ211
は特定の定義済み期間の間または特定の定義済み「セッ
ション」数の間、そのソフトウェア製品へのアクセス権
を取得することができる。時間の経過とともに、ユーザ
のクロックまたはカウンタの目盛りが減少する。試用期
間が終了すると、それ以上アクセスしようとしても拒否
される。このため、ユーザ211は、ソース209に連
絡するとともに、ユーザ211に送られ、そのソフトウ
ェア製品への無制限アクセスを可能にするために永続的
に製品のロックを解除する永続キーを購入するための肯
定的ステップを実行しなければならない。
【0024】ソース209とユーザ211との間のやり
とりはユーザ・インタフェースによって容易になる。こ
のインタフェースの構築については図6の流れ図に示
す。この処理は、ソフトウェア・ブロック219から始
まり、ソフトウェア・ブロック221に続く。このブロ
ック221では、ソフトウェア製品の試用期間中の使用
の実現を容易にするインタフェースで使用される言語と
通貨を決定するための言語および場所の選択がソース2
09によって行われる。複数のソフトウェア製品をひと
まとめにし、コンピュータがアクセス可能な単一のメモ
リ媒体でユーザ211に配達する場合もある。このた
め、ソフトウェア・ブロック223により、ソース20
9は、コンピュータがアクセス可能なメモリ媒体上で試
用に供されるプログラムに関する決定を行わなければな
らず、ソフトウェア・ブロック223により、該当する
フィールドが記入される。次に、ソフトウェア・ブロッ
ク225により、プログラムが機能的に制限されるか、
暗号化される。その後、ソフトウェア・ブロック227
により、ディスケットまたはCD−ROMなどのコンピ
ュータがアクセス可能なメモリ媒体にコンピュータ・プ
ログラム製品とともにシェル(ファイル管理プログラム
を含みうる)がロードされる。この処理は、ソフトウェ
ア・ブロック229で終了する。
とりはユーザ・インタフェースによって容易になる。こ
のインタフェースの構築については図6の流れ図に示
す。この処理は、ソフトウェア・ブロック219から始
まり、ソフトウェア・ブロック221に続く。このブロ
ック221では、ソフトウェア製品の試用期間中の使用
の実現を容易にするインタフェースで使用される言語と
通貨を決定するための言語および場所の選択がソース2
09によって行われる。複数のソフトウェア製品をひと
まとめにし、コンピュータがアクセス可能な単一のメモ
リ媒体でユーザ211に配達する場合もある。このた
め、ソフトウェア・ブロック223により、ソース20
9は、コンピュータがアクセス可能なメモリ媒体上で試
用に供されるプログラムに関する決定を行わなければな
らず、ソフトウェア・ブロック223により、該当する
フィールドが記入される。次に、ソフトウェア・ブロッ
ク225により、プログラムが機能的に制限されるか、
暗号化される。その後、ソフトウェア・ブロック227
により、ディスケットまたはCD−ROMなどのコンピ
ュータがアクセス可能なメモリ媒体にコンピュータ・プ
ログラム製品とともにシェル(ファイル管理プログラム
を含みうる)がロードされる。この処理は、ソフトウェ
ア・ブロック229で終了する。
【0025】図7は、本発明によるベンダと顧客との対
話を示す流れ図である。処理の流れは、ソフトウェア・
ブロック231から始まり、ステップ233に続く。こ
のステップ233では、試用/購入のための試用期間の
間、コンピュータによりアクセス可能なメモリ媒体がユ
ーザに配布される。その後、ステップ235により、コ
ンピュータがアクセス可能なメモリ媒体からユーザ制御
のデータ処理システムにファイル管理プログラムがロー
ドされて実行される。このファイル管理プログラムは、
ベンダと顧客との間の対話を容易にし、顧客が使用可能
なオプションを示す、複数のインタフェース画面を含ん
でいる。このため、ステップ237により、ファイル管
理プログラムが走査検索を可能にし、適切なユーザ・イ
ンタフェースを表示する。次に、ステップ239によ
り、通常、電話または電子メールを介して顧客とベンダ
が対話し、ベンダが顧客に関する情報を収集して、定義
済み試用期間の間、コンピュータがアクセス可能なメモ
リ媒体に収容されている1つまたは複数のソフトウェア
製品へのアクセスを可能にする一時キーを配布できるよ
うにする。一般に、この期間は、内部クロックか、また
は潜在的購入者が1つまたは複数の特定のソフトウェア
製品に対して行うセッションの回数を追跡するカウンタ
によって定義される。ステップ241は、試用期間使用
の許可を表している。その後、ソフトウェア・ブロック
243により、ファイル管理プログラムは、データ処理
システム内のすべての入出力呼出しを監視、監督し、コ
ンピュータがアクセス可能なメモリ媒体に収容されてい
る暗号化ソフトウェア製品の無許可使用を防止する。本
発明の好ましい実施例のファイル管理プログラムは、暗
号化ファイルへの呼出しを監視し、今後の処理のために
そのファイルが渡される前にアクセスを許可するか、拒
否するかを決定する。このため、顧客は、ソフトウェア
製品にアクセスして、それを購入するかどうかを決定す
ることができる。その製品の購入を決定した場合は、ス
テップ245に示すように、顧客はもう一度ベンダと対
話しなければならず、ベンダはその顧客に永続キーを引
き渡さなければならない。顧客が永続キーを受け取り、
購入した1つまたは複数のソフトウェア製品を暗号解読
し、そのソフトウェア製品への通常の無制限アクセスが
許可されると、処理が終了する。
話を示す流れ図である。処理の流れは、ソフトウェア・
ブロック231から始まり、ステップ233に続く。こ
のステップ233では、試用/購入のための試用期間の
間、コンピュータによりアクセス可能なメモリ媒体がユ
ーザに配布される。その後、ステップ235により、コ
ンピュータがアクセス可能なメモリ媒体からユーザ制御
のデータ処理システムにファイル管理プログラムがロー
ドされて実行される。このファイル管理プログラムは、
ベンダと顧客との間の対話を容易にし、顧客が使用可能
なオプションを示す、複数のインタフェース画面を含ん
でいる。このため、ステップ237により、ファイル管
理プログラムが走査検索を可能にし、適切なユーザ・イ
ンタフェースを表示する。次に、ステップ239によ
り、通常、電話または電子メールを介して顧客とベンダ
が対話し、ベンダが顧客に関する情報を収集して、定義
済み試用期間の間、コンピュータがアクセス可能なメモ
リ媒体に収容されている1つまたは複数のソフトウェア
製品へのアクセスを可能にする一時キーを配布できるよ
うにする。一般に、この期間は、内部クロックか、また
は潜在的購入者が1つまたは複数の特定のソフトウェア
製品に対して行うセッションの回数を追跡するカウンタ
によって定義される。ステップ241は、試用期間使用
の許可を表している。その後、ソフトウェア・ブロック
243により、ファイル管理プログラムは、データ処理
システム内のすべての入出力呼出しを監視、監督し、コ
ンピュータがアクセス可能なメモリ媒体に収容されてい
る暗号化ソフトウェア製品の無許可使用を防止する。本
発明の好ましい実施例のファイル管理プログラムは、暗
号化ファイルへの呼出しを監視し、今後の処理のために
そのファイルが渡される前にアクセスを許可するか、拒
否するかを決定する。このため、顧客は、ソフトウェア
製品にアクセスして、それを購入するかどうかを決定す
ることができる。その製品の購入を決定した場合は、ス
テップ245に示すように、顧客はもう一度ベンダと対
話しなければならず、ベンダはその顧客に永続キーを引
き渡さなければならない。顧客が永続キーを受け取り、
購入した1つまたは複数のソフトウェア製品を暗号解読
し、そのソフトウェア製品への通常の無制限アクセスが
許可されると、処理が終了する。
【0026】図8、図9、図10、および図11は、本
発明による試用期間操作を容易にするユーザ・インタフ
ェース画面を示している。図8は、顧客が別のウィンド
ウから「注文書表示」オプションを選択したときに表示
される、注文書ユーザ・インタフェース249を示して
いる。この注文書ユーザ・インタフェース249は、潜
在的顧客とベンダとの対話を容易にするためにソフトウ
ェア・ベンダを識別し、電話番号を提供する、タイトル
・バー251を含んでいる。試用期間操作中に試すこと
ができる1つまたは複数のソフトウェア製品を識別する
注文書フィールド255が設けられている。また、数量
サブフィールド259、品目サブフィールド257、説
明サブフィールド260、および価格サブフィールド2
53を含む、複数のサブフィールドも設けられている。
削除ボタン261を使用すると、潜在的顧客は注文書フ
ィールドから品目を削除することができる。小計フィー
ルド263は、注文したソフトウェアの価格の小計を示
すものである。支払方法アイコン265は、可能な支払
形式を識別する。当然のことながら、潜在的ユーザは、
電話番号を使ってベンダに直接連絡して、1つまたは複
数のソフトウェア製品を購入することができ、あるい
は、妥当かどうか判断するためにソフトウェア製品を試
す試用期間動作モード用として1つまたは複数のソフト
ウェア製品を選択することができる。注文書インタフェ
ース249の最下部には、複数の機能アイコン267が
設けられている。このようなアイコンとしては、クロー
ズ・アイコン、ファックス・アイコン、メール・アイコ
ン、印刷アイコン、ロック解除アイコン、ヘルプ・アイ
コンなどがある。ユーザは、従来のポイント・クリック
操作で図形ポインティング・デバイスを使用し、これら
の操作から1つまたは複数を選択することができる。フ
ァックス・アイコンは、ファックス装置またはファック
ス・ボードを使用してベンダとの対話を容易にするもの
である。印刷アイコンは、ユーザがソフトウェア・ベン
ダとの対話を紙に印刷し、保存用コピーを作成できるよ
うにするものである。
発明による試用期間操作を容易にするユーザ・インタフ
ェース画面を示している。図8は、顧客が別のウィンド
ウから「注文書表示」オプションを選択したときに表示
される、注文書ユーザ・インタフェース249を示して
いる。この注文書ユーザ・インタフェース249は、潜
在的顧客とベンダとの対話を容易にするためにソフトウ
ェア・ベンダを識別し、電話番号を提供する、タイトル
・バー251を含んでいる。試用期間操作中に試すこと
ができる1つまたは複数のソフトウェア製品を識別する
注文書フィールド255が設けられている。また、数量
サブフィールド259、品目サブフィールド257、説
明サブフィールド260、および価格サブフィールド2
53を含む、複数のサブフィールドも設けられている。
削除ボタン261を使用すると、潜在的顧客は注文書フ
ィールドから品目を削除することができる。小計フィー
ルド263は、注文したソフトウェアの価格の小計を示
すものである。支払方法アイコン265は、可能な支払
形式を識別する。当然のことながら、潜在的ユーザは、
電話番号を使ってベンダに直接連絡して、1つまたは複
数のソフトウェア製品を購入することができ、あるい
は、妥当かどうか判断するためにソフトウェア製品を試
す試用期間動作モード用として1つまたは複数のソフト
ウェア製品を選択することができる。注文書インタフェ
ース249の最下部には、複数の機能アイコン267が
設けられている。このようなアイコンとしては、クロー
ズ・アイコン、ファックス・アイコン、メール・アイコ
ン、印刷アイコン、ロック解除アイコン、ヘルプ・アイ
コンなどがある。ユーザは、従来のポイント・クリック
操作で図形ポインティング・デバイスを使用し、これら
の操作から1つまたは複数を選択することができる。フ
ァックス・アイコンは、ファックス装置またはファック
ス・ボードを使用してベンダとの対話を容易にするもの
である。印刷アイコンは、ユーザがソフトウェア・ベン
ダとの対話を紙に印刷し、保存用コピーを作成できるよ
うにするものである。
【0027】顧客、コンピュータがアクセス可能なメモ
リ媒体、および顧客が使用するコンピュータ・システム
は、媒体ID269、顧客ID273、および計算機I
D271によって識別される。媒体IDは、潜在的顧客
に発送される前にコンピュータがアクセス可能なメモリ
媒体に割り当てられている。このIDは固定されたもの
なので、変更できない。顧客ID273は、潜在的顧客
とベンダとの対話から導出される。電話での対話中に選
択した質問に顧客が回答し、特定の顧客に固有の顧客I
D273をベンダが与える方法が好ましい。計算機ID
271は、コンピュータがアクセス可能なメモリ媒体に
常駐し、潜在的顧客が使用する特定のデータ処理システ
ムに固有のファイル管理プログラムを使用して自動的に
導出される。顧客は、通常、電話での対話によりベンダ
に計算機IDを通知することになるが、ファックスでの
対話や郵便での対話も可能である。
リ媒体、および顧客が使用するコンピュータ・システム
は、媒体ID269、顧客ID273、および計算機I
D271によって識別される。媒体IDは、潜在的顧客
に発送される前にコンピュータがアクセス可能なメモリ
媒体に割り当てられている。このIDは固定されたもの
なので、変更できない。顧客ID273は、潜在的顧客
とベンダとの対話から導出される。電話での対話中に選
択した質問に顧客が回答し、特定の顧客に固有の顧客I
D273をベンダが与える方法が好ましい。計算機ID
271は、コンピュータがアクセス可能なメモリ媒体に
常駐し、潜在的顧客が使用する特定のデータ処理システ
ムに固有のファイル管理プログラムを使用して自動的に
導出される。顧客は、通常、電話での対話によりベンダ
に計算機IDを通知することになるが、ファックスでの
対話や郵便での対話も可能である。
【0028】図9は、注文情報ダイアログ・インタフェ
ース275を示す図である。このインタフェースは、潜
在的顧客を明確に識別する情報の獲得を容易にするもの
で、名前フィールド277、住所フィールド279、電
話番号フィールド281、ファックス番号フィールド2
83、支払方法フィールド285、発送方法フィールド
287、会員番号フィールド289、有効期限フィール
ド291、付加価値税IDフィールド293を含んでい
る。さらに注文情報ダイアログ・インタフェース275
は、潜在的ユーザが上記の各種フィールドから情報を削
除したり、インタフェース画面を紙面に印刷できるよう
にするための印刷ボタン295と取消しボタン297を
含んでいる。
ース275を示す図である。このインタフェースは、潜
在的顧客を明確に識別する情報の獲得を容易にするもの
で、名前フィールド277、住所フィールド279、電
話番号フィールド281、ファックス番号フィールド2
83、支払方法フィールド285、発送方法フィールド
287、会員番号フィールド289、有効期限フィール
ド291、付加価値税IDフィールド293を含んでい
る。さらに注文情報ダイアログ・インタフェース275
は、潜在的ユーザが上記の各種フィールドから情報を削
除したり、インタフェース画面を紙面に印刷できるよう
にするための印刷ボタン295と取消しボタン297を
含んでいる。
【0029】図10および図11は、ロック解除ダイア
ログ・インタフェース画面301および303を示す図
である。ユーザは、図形ポインティング・デバイスを使
用して、ロック解除リスト305の構成要素である品目
番号フィールド307および説明フィールド309によ
って識別される1つまたは複数の項目を選択する。この
インタフェースはさらに、顧客IDフィールド313と
計算機IDフィールド315を含んでいる。電話、ファ
ックス、電子メールまたは郵便による対話でベンダが顧
客に顧客IDを与える方法が好ましい。また、ユーザは
電話、ファックス、電子メールまたは郵便による対話中
に計算機IDフィールド315に計算機IDを入力し、
それをベンダに提供することが好ましい。試用期間操作
中に要求される製品のIDとともにこの情報が交換され
ると、キー・フィールド311内に位置する一時アクセ
ス・キーが提供される。このキーは、顧客が識別し選択
した製品を一時的にロック解除するためのものである。
ユーザの対話を容易にするため、このインタフェース画
面にはクローズ・ボタン319、保管ボタン317、お
よびヘルプ・ボタン321も設けられている。
ログ・インタフェース画面301および303を示す図
である。ユーザは、図形ポインティング・デバイスを使
用して、ロック解除リスト305の構成要素である品目
番号フィールド307および説明フィールド309によ
って識別される1つまたは複数の項目を選択する。この
インタフェースはさらに、顧客IDフィールド313と
計算機IDフィールド315を含んでいる。電話、ファ
ックス、電子メールまたは郵便による対話でベンダが顧
客に顧客IDを与える方法が好ましい。また、ユーザは
電話、ファックス、電子メールまたは郵便による対話中
に計算機IDフィールド315に計算機IDを入力し、
それをベンダに提供することが好ましい。試用期間操作
中に要求される製品のIDとともにこの情報が交換され
ると、キー・フィールド311内に位置する一時アクセ
ス・キーが提供される。このキーは、顧客が識別し選択
した製品を一時的にロック解除するためのものである。
ユーザの対話を容易にするため、このインタフェース画
面にはクローズ・ボタン319、保管ボタン317、お
よびヘルプ・ボタン321も設けられている。
【0030】図11は、単一製品ロック解除インタフェ
ース画面303を示す図である。このインタフェース画
面は、計算機IDフィールド315、顧客IDフィール
ド315、およびキー・フィールド311のみを含んで
いる。このダイアログは単一製品のみに関するもので、
しかも、一時試用期間操作が要求されている製品をユー
ザが知っているものと想定しているため、ロック解除す
る製品をこのインタフェースで識別するは必要ない。オ
ペレータの対話を容易にするため、このインタフェース
には保管ボタン317、取消しボタン319、およびヘ
ルプ・ボタン321も設けられている。
ース画面303を示す図である。このインタフェース画
面は、計算機IDフィールド315、顧客IDフィール
ド315、およびキー・フィールド311のみを含んで
いる。このダイアログは単一製品のみに関するもので、
しかも、一時試用期間操作が要求されている製品をユー
ザが知っているものと想定しているため、ロック解除す
る製品をこのインタフェースで識別するは必要ない。オ
ペレータの対話を容易にするため、このインタフェース
には保管ボタン317、取消しボタン319、およびヘ
ルプ・ボタン321も設けられている。
【0031】図12は、試用期間動作モードを開始する
ために1つまたは複数の暗号化製品をロック解除する際
に使用するユーザ・インタフェース画面を示している。
図10または図11のいずれかのロック解除ダイアログ
で「保管」押しボタンを選択すると、図12の開始日ダ
イアログが表示される。ここでユーザは、日付フィール
ド310に示されている正しい開始日を確認するよう要
求される。ユーザは、「続行」ボタン312、「取消
し」ボタン314、または「ヘルプ」ボタン316のい
ずれかをポイント・クリックすることで、この問合せに
応答する。フィールド310に表示される日付は、ユー
ザ制御のデータ処理システムのシステム・クロックから
導出される。この日付を試用期間操作の公式または指定
開始日と対応させるために、ユーザがシステム・クロッ
クを変更しなければならない場合もある。
ために1つまたは複数の暗号化製品をロック解除する際
に使用するユーザ・インタフェース画面を示している。
図10または図11のいずれかのロック解除ダイアログ
で「保管」押しボタンを選択すると、図12の開始日ダ
イアログが表示される。ここでユーザは、日付フィール
ド310に示されている正しい開始日を確認するよう要
求される。ユーザは、「続行」ボタン312、「取消
し」ボタン314、または「ヘルプ」ボタン316のい
ずれかをポイント・クリックすることで、この問合せに
応答する。フィールド310に表示される日付は、ユー
ザ制御のデータ処理システムのシステム・クロックから
導出される。この日付を試用期間操作の公式または指定
開始日と対応させるために、ユーザがシステム・クロッ
クを変更しなければならない場合もある。
【0032】試用期間操作は2通りの形態が可能であ
る。1つは、ユーザがすべての機能を試せるようにする
が、データ・ファイルの印刷や保管などの重要機能は使
用不可にするような、機能的に使用不可とする措置が施
された製品である。もう1つの試用期間操作は、時間制
限を設けて使用可能にした完全機能製品である。この場
合はアクセス保護が必要であり、顧客は無料またはわず
かな料金で製品のすべての機能を試すことができる。本
発明によれば、通常、製品へのアクセスは「期限付き」
キーによって制御される。製品を使用するための試用期
間は、ベンダが決定した一定期間である。この試用期間
はキーが発行されたときから始まる。本発明によれば、
試用期間操作中に試用する製品は、顧客シェル内からし
か実行できない。暗号解読ドライバは、暗号化製品の明
文でのコピーを許可せず、顧客のシェルの外部での実行
も許可しない。代替実施例では、顧客がその製品に対し
て実行する「セッション」ごとに増分または減分される
カウンタによって試用期間が定義される。この場合は、
一時キーによる暗号解読が許可されなくなるまでに顧客
は定義済み回数だけ製品を使用することができる。
る。1つは、ユーザがすべての機能を試せるようにする
が、データ・ファイルの印刷や保管などの重要機能は使
用不可にするような、機能的に使用不可とする措置が施
された製品である。もう1つの試用期間操作は、時間制
限を設けて使用可能にした完全機能製品である。この場
合はアクセス保護が必要であり、顧客は無料またはわず
かな料金で製品のすべての機能を試すことができる。本
発明によれば、通常、製品へのアクセスは「期限付き」
キーによって制御される。製品を使用するための試用期
間は、ベンダが決定した一定期間である。この試用期間
はキーが発行されたときから始まる。本発明によれば、
試用期間操作中に試用する製品は、顧客シェル内からし
か実行できない。暗号解読ドライバは、暗号化製品の明
文でのコピーを許可せず、顧客のシェルの外部での実行
も許可しない。代替実施例では、顧客がその製品に対し
て実行する「セッション」ごとに増分または減分される
カウンタによって試用期間が定義される。この場合は、
一時キーによる暗号解読が許可されなくなるまでに顧客
は定義済み回数だけ製品を使用することができる。
【0033】一時アクセス・キーの制限は、そのキーの
「制御ベクトル」に組み込まれている。通常、制御ベク
トルは、そのキーの簡単な説明、計算機ID番号、およ
び試用期間データ(クロック値またはカウンタ値など)
を含む定様式テキスト・ストリングを含む。キーを壊さ
ずに制御ベクトルを変更することはできない。保護ソフ
トウェア製品を実行する場合は、操作試用期間の制限を
実施するため、使用データを更新しなければならない。
クロックまたはカウンタが不正操作されないように保護
するため、その値は、通常は暗号化ファイル内の複数の
場所に記録される。本発明の好ましい実施例では、試用
期間情報(クロック値またはカウンタ値あるいはその両
方)が「キー・ファイル」(後で詳述する)と、計算機
IDファイル(これについても後述する)と、システム
・ファイルにコピーされる。暗号化プログラムへのアク
セスが要求されると、上記の場所がすべて検査され、ク
ロックまたはカウンタあるいはその両方の値が同じであ
るかどうか判定される。平均的なユーザが3つのファイ
ルをすべて完璧に不正操作できるだけの高度の知識を持
っている可能性は低い。好ましい実施例では、クロック
とカウンタの組合せを使用して、バックアップの拡大使
用と、システム・クロックをリセットするための回復操
作を防止している。試用が要求されるたびにPCのクロ
ックをリセットすることは可能であるが、これは、シス
テム上の所与のファイルの日付/時間スタンプを追跡
し、ファイルの日付/時間スタンプの中の最新の日付と
システム・クロックとを使用することで検出できる。前
述の通り、タイマまたはカウンタあるいはその両方の情
報が格納されている3つの場所の1つはシステム・ファ
イルである。オペレーティング・システムとしてOS/
2を使用して操作している場合、時間および使用データ
は、OS/2内のOS2.INIなどのシステム・デー
タ・ファイルに格納することができる。試用および使用
データをリセットするには、ユーザはこれらのファイル
を連続バックアップし、回復しなければならなくなる。
これらのファイルには、ユーザ・システムの動作にとっ
て重要なその他のデータが収容されている。不用意なユ
ーザがこれらのファイルを旧バージョンに回復しようと
すると、他のアプリケーションにとって重要なデータを
誤って紛失してしまう場合もある。本発明では、上記の
保護技法により、不誠実なユーザが許可期間以上に試用
期間使用を延長しようとする試みを確実に防止できる。
「制御ベクトル」に組み込まれている。通常、制御ベク
トルは、そのキーの簡単な説明、計算機ID番号、およ
び試用期間データ(クロック値またはカウンタ値など)
を含む定様式テキスト・ストリングを含む。キーを壊さ
ずに制御ベクトルを変更することはできない。保護ソフ
トウェア製品を実行する場合は、操作試用期間の制限を
実施するため、使用データを更新しなければならない。
クロックまたはカウンタが不正操作されないように保護
するため、その値は、通常は暗号化ファイル内の複数の
場所に記録される。本発明の好ましい実施例では、試用
期間情報(クロック値またはカウンタ値あるいはその両
方)が「キー・ファイル」(後で詳述する)と、計算機
IDファイル(これについても後述する)と、システム
・ファイルにコピーされる。暗号化プログラムへのアク
セスが要求されると、上記の場所がすべて検査され、ク
ロックまたはカウンタあるいはその両方の値が同じであ
るかどうか判定される。平均的なユーザが3つのファイ
ルをすべて完璧に不正操作できるだけの高度の知識を持
っている可能性は低い。好ましい実施例では、クロック
とカウンタの組合せを使用して、バックアップの拡大使
用と、システム・クロックをリセットするための回復操
作を防止している。試用が要求されるたびにPCのクロ
ックをリセットすることは可能であるが、これは、シス
テム上の所与のファイルの日付/時間スタンプを追跡
し、ファイルの日付/時間スタンプの中の最新の日付と
システム・クロックとを使用することで検出できる。前
述の通り、タイマまたはカウンタあるいはその両方の情
報が格納されている3つの場所の1つはシステム・ファ
イルである。オペレーティング・システムとしてOS/
2を使用して操作している場合、時間および使用データ
は、OS/2内のOS2.INIなどのシステム・デー
タ・ファイルに格納することができる。試用および使用
データをリセットするには、ユーザはこれらのファイル
を連続バックアップし、回復しなければならなくなる。
これらのファイルには、ユーザ・システムの動作にとっ
て重要なその他のデータが収容されている。不用意なユ
ーザがこれらのファイルを旧バージョンに回復しようと
すると、他のアプリケーションにとって重要なデータを
誤って紛失してしまう場合もある。本発明では、上記の
保護技法により、不誠実なユーザが許可期間以上に試用
期間使用を延長しようとする試みを確実に防止できる。
【0034】大まかに概説すると、本発明では、ベンダ
がCD−ROMまたは磁気媒体ディスケットなどのコン
ピュータがアクセス可能なメモリ媒体に複数の暗号化ソ
フトウェア製品をロードする。コンピュータがアクセス
可能なメモリ媒体には、ソフトウェア・ベンダとソフト
ウェアの顧客との対話を容易にする複数のユーザ・イン
タフェース画面を提供する機能など、複数の機能を実行
するファイル管理プログラムもロードされる。このコン
ピュータがアクセス可能なメモリ媒体はユーザ制御のデ
ータ処理システムに装填され、ファイル管理プログラム
がロードされて実行される。ファイル管理プログラム
は、顧客に関する情報(名前、住所、電話番号、および
課金情報)を収集し、試用期間が要求されたソフトウェ
ア製品に関する顧客の選択を受け取るための複数のユー
ザインタフェース画面を顧客に提供する。ソフトウェア
・ベンダと顧客との間では、顧客ID番号、製品ID番
号、媒体ID番号、および計算機ID番号などの情報が
交換される。ベンダは、独自の内部記録に応じて顧客I
D番号を生成する。ソフトウェアの潜在的顧客を識別す
るために、ソフトウェア・ベンダの担当者は顧客から情
報を収集し、その情報を所定の用紙に記入しておくこと
が好ましい。あるいは、ソフトウェア・ベンダは、記入
済みの注文情報ダイアログ・インタフェース画面275
(図9)をファックス、電子メールまたは郵便で受け取
ることもできる。配布されたメモリ媒体(CDおよびデ
ィスケットなど)は、少なくとも一部がユーザ制御のデ
ータ処理システムの1つの属性に基づく固有の計算機I
Dを生成するためのファイル管理プログラムも含んでい
る。この計算機IDは、一度限りのセットアップ・プロ
セス中に作成される8ビットの乱数であることが好まし
い。8つのランダム・ビットは、ルーチンの「種」とし
てシステム時間を使用する基本乱数発生ルーチンから生
成されることが好ましい。また、最終結果には検査ビッ
トが付加されていることが好ましい。注文を受け付ける
人は電話を介して顧客が読み上げる計算機IDをキー入
力しなければならないので、この検査ビットは注文シス
テムにとって重要である。この検査ビットを使用する
と、顧客が番号を反復しなくても、計算機IDを即時確
認できる。ユーザ制御のデータ処理システムには、計算
機IDのクリア・テキスト(平文テキスト)と計算機I
Dの暗号化バージョンを収容したマスタ・ファイルが保
管されていることが好ましい。
がCD−ROMまたは磁気媒体ディスケットなどのコン
ピュータがアクセス可能なメモリ媒体に複数の暗号化ソ
フトウェア製品をロードする。コンピュータがアクセス
可能なメモリ媒体には、ソフトウェア・ベンダとソフト
ウェアの顧客との対話を容易にする複数のユーザ・イン
タフェース画面を提供する機能など、複数の機能を実行
するファイル管理プログラムもロードされる。このコン
ピュータがアクセス可能なメモリ媒体はユーザ制御のデ
ータ処理システムに装填され、ファイル管理プログラム
がロードされて実行される。ファイル管理プログラム
は、顧客に関する情報(名前、住所、電話番号、および
課金情報)を収集し、試用期間が要求されたソフトウェ
ア製品に関する顧客の選択を受け取るための複数のユー
ザインタフェース画面を顧客に提供する。ソフトウェア
・ベンダと顧客との間では、顧客ID番号、製品ID番
号、媒体ID番号、および計算機ID番号などの情報が
交換される。ベンダは、独自の内部記録に応じて顧客I
D番号を生成する。ソフトウェアの潜在的顧客を識別す
るために、ソフトウェア・ベンダの担当者は顧客から情
報を収集し、その情報を所定の用紙に記入しておくこと
が好ましい。あるいは、ソフトウェア・ベンダは、記入
済みの注文情報ダイアログ・インタフェース画面275
(図9)をファックス、電子メールまたは郵便で受け取
ることもできる。配布されたメモリ媒体(CDおよびデ
ィスケットなど)は、少なくとも一部がユーザ制御のデ
ータ処理システムの1つの属性に基づく固有の計算機I
Dを生成するためのファイル管理プログラムも含んでい
る。この計算機IDは、一度限りのセットアップ・プロ
セス中に作成される8ビットの乱数であることが好まし
い。8つのランダム・ビットは、ルーチンの「種」とし
てシステム時間を使用する基本乱数発生ルーチンから生
成されることが好ましい。また、最終結果には検査ビッ
トが付加されていることが好ましい。注文を受け付ける
人は電話を介して顧客が読み上げる計算機IDをキー入
力しなければならないので、この検査ビットは注文シス
テムにとって重要である。この検査ビットを使用する
と、顧客が番号を反復しなくても、計算機IDを即時確
認できる。ユーザ制御のデータ処理システムには、計算
機IDのクリア・テキスト(平文テキスト)と計算機I
Dの暗号化バージョンを収容したマスタ・ファイルが保
管されていることが好ましい。
【0035】ソフトウェアの顧客は、ソフトウェア製品
の一時試用に関する注文を行う場合、ソフトウェア・ベ
ンダの電話受付に計算機IDを口頭で伝える。それに対
して、電話受付は、コンピュータがアクセス可能なメモ
リ媒体上の暗号化ソフトウェア製品に対する一時アクセ
ス・キーとして機能する製品キーと、顧客ID番号とを
顧客に伝える。この製品キーは、計算機IDと、顧客番
号と、注文されたプログラム用の実暗号化キーと、制御
データ・ブロックとの関数であることが好ましい。ソフ
トウェアの顧客は、製品キーと顧客番号ならびに実暗号
化キーを作成するための同一制御データ・ブロックを組
み合わせることで製品キーを検査することができる。そ
の後、このキーは、比較操作を可能にするために暗号化
妥当性検査セグメントの暗号解読に使用される。暗号化
妥当性検査セグメントが妥当性検査セグメント用の既知
のクリア・テキストと同じであれば、ユーザのファイル
管理プログラムは、その製品キーが正しい製品キーであ
り、ソフトウェア製品への一時アクセスに使用できると
判断したことになる。このため、比較が一致すれば、そ
のキーはユーザ制御のデータ処理システムのキー・ファ
イルに格納される。このキー・ファイルには、製品キー
と、顧客キー(顧客番号と内部キー生成キーに基づいて
生成される)と、計算機IDを含むクリアASCIIス
トリングとが収容されていることが好ましい。暗号解読
ツールが実暗号化キーを導出できるようにするには、こ
の3つの項目がすべてそのまま維持されている必要があ
る。さらにキー・ファイルをこの特定のユーザ制御のデ
ータ処理システムに結びつけるため、システム・パラメ
ータから導出されたキーを使って同じキー・ファイルが
暗号化される。このようなシステム・パラメータは、デ
ータ処理システムの構成から導出することができる。
の一時試用に関する注文を行う場合、ソフトウェア・ベ
ンダの電話受付に計算機IDを口頭で伝える。それに対
して、電話受付は、コンピュータがアクセス可能なメモ
リ媒体上の暗号化ソフトウェア製品に対する一時アクセ
ス・キーとして機能する製品キーと、顧客ID番号とを
顧客に伝える。この製品キーは、計算機IDと、顧客番
号と、注文されたプログラム用の実暗号化キーと、制御
データ・ブロックとの関数であることが好ましい。ソフ
トウェアの顧客は、製品キーと顧客番号ならびに実暗号
化キーを作成するための同一制御データ・ブロックを組
み合わせることで製品キーを検査することができる。そ
の後、このキーは、比較操作を可能にするために暗号化
妥当性検査セグメントの暗号解読に使用される。暗号化
妥当性検査セグメントが妥当性検査セグメント用の既知
のクリア・テキストと同じであれば、ユーザのファイル
管理プログラムは、その製品キーが正しい製品キーであ
り、ソフトウェア製品への一時アクセスに使用できると
判断したことになる。このため、比較が一致すれば、そ
のキーはユーザ制御のデータ処理システムのキー・ファ
イルに格納される。このキー・ファイルには、製品キー
と、顧客キー(顧客番号と内部キー生成キーに基づいて
生成される)と、計算機IDを含むクリアASCIIス
トリングとが収容されていることが好ましい。暗号解読
ツールが実暗号化キーを導出できるようにするには、こ
の3つの項目がすべてそのまま維持されている必要があ
る。さらにキー・ファイルをこの特定のユーザ制御のデ
ータ処理システムに結びつけるため、システム・パラメ
ータから導出されたキーを使って同じキー・ファイルが
暗号化される。このようなシステム・パラメータは、デ
ータ処理システムの構成から導出することができる。
【0036】大まかに説明すると、本発明の一時キー
(通常は電話により口頭で伝えられる)は、暗号化を使
用して実キーと、顧客番号、計算機ID番号、その他の
定義済みクリア・テキストとを組み合わせるアルゴリズ
ムによって作成される。したがって、このキーは1台の
計算機だけに有効である。つまり、別の人にそのキーを
伝えても、その人の計算機上のプログラムはロック解除
されないはずである。このため、ソフトウェア・ベンダ
は、ライセンスによる収入を失うという重大な危険を冒
さずに、ディスケットまたはCD−ROMなどのコンピ
ュータがアクセス可能なメモリ媒体で完全なプログラム
を配布して、ソフトウェア・プログラムを販売すること
ができる。
(通常は電話により口頭で伝えられる)は、暗号化を使
用して実キーと、顧客番号、計算機ID番号、その他の
定義済みクリア・テキストとを組み合わせるアルゴリズ
ムによって作成される。したがって、このキーは1台の
計算機だけに有効である。つまり、別の人にそのキーを
伝えても、その人の計算機上のプログラムはロック解除
されないはずである。このため、ソフトウェア・ベンダ
は、ライセンスによる収入を失うという重大な危険を冒
さずに、ディスケットまたはCD−ROMなどのコンピ
ュータがアクセス可能なメモリ媒体で完全なプログラム
を配布して、ソフトウェア・プログラムを販売すること
ができる。
【0037】暗号化操作に使用可能なシステムの好まし
い固有属性としては、ハード・ディスクの製造番号、ハ
ード・ディスクのサイズとフォーマット、システムの型
式番号、ハードウェア・インタフェース・カード、ハー
ドウェアの製造番号、その他の構成パラメータなどがあ
る。この技法の結果、計算機IDファイルは、ユーザ制
御のデータ処理システムの同一クローンであるシステム
上でしか暗号解読できなくなる。多くのデータ処理シス
テムはそれぞれ構成が異なり、構成を一致させるにはか
なり手間がかかるため、同一クローンを入手するのは非
常に難しい。この点については、後で詳述する。
い固有属性としては、ハード・ディスクの製造番号、ハ
ード・ディスクのサイズとフォーマット、システムの型
式番号、ハードウェア・インタフェース・カード、ハー
ドウェアの製造番号、その他の構成パラメータなどがあ
る。この技法の結果、計算機IDファイルは、ユーザ制
御のデータ処理システムの同一クローンであるシステム
上でしか暗号解読できなくなる。多くのデータ処理シス
テムはそれぞれ構成が異なり、構成を一致させるにはか
なり手間がかかるため、同一クローンを入手するのは非
常に難しい。この点については、後で詳述する。
【0038】次に図13について説明すると、ファイル
管理プログラムは、暗号化ソフトウェア製品とファイル
管理プログラムがそこに収容された状態で配布された、
コンピュータがアクセス可能なメモリ媒体を受け取る。
ファイル管理プログラムは、図13のステップ351に
示すように、ユーザ制御のデータ処理システムの構成に
アクセスする。ステップ353でデータ処理システムの
ユーザ固有属性が導出され、計算機ID生成プログラム
355への入力として出力される。この計算機ID生成
プログラムは、複数の2進文字を入力として受け取っ
て、計算機ID357を表す擬似乱数出力を発生する、
乱数発生ルーチン(乱数ジェネレータ)であることが好
ましい。計算機ID生成プログラム355が使用する処
理は、複数の2進キャラクタを入力として受け取って、
定義済みアルゴリズムにより複数の擬似乱数2進キャラ
クタを出力として発生する従来の擬似乱数発生ルーチン
であればいずれでもよい。
管理プログラムは、暗号化ソフトウェア製品とファイル
管理プログラムがそこに収容された状態で配布された、
コンピュータがアクセス可能なメモリ媒体を受け取る。
ファイル管理プログラムは、図13のステップ351に
示すように、ユーザ制御のデータ処理システムの構成に
アクセスする。ステップ353でデータ処理システムの
ユーザ固有属性が導出され、計算機ID生成プログラム
355への入力として出力される。この計算機ID生成
プログラムは、複数の2進文字を入力として受け取っ
て、計算機ID357を表す擬似乱数出力を発生する、
乱数発生ルーチン(乱数ジェネレータ)であることが好
ましい。計算機ID生成プログラム355が使用する処
理は、複数の2進キャラクタを入力として受け取って、
定義済みアルゴリズムにより複数の擬似乱数2進キャラ
クタを出力として発生する従来の擬似乱数発生ルーチン
であればいずれでもよい。
【0039】次に図14に関して説明すると、計算機I
D357は、暗号化形式でファイル管理プログラム内に
も保管される。計算機ID357は、出力として暗号化
計算機ID361を生成するために暗号化エンジン35
9に入力として供給される。暗号化エンジン359は、
DESアルゴリズムなどの規則暗号化ルーチンで構成す
ることができる。暗号化エンジン359には入力として
キー363も供給され、このキー363が従来通り暗号
化操作に作用する。キー363はシステム属性セレクタ
365から導出される。選択候補となるタイプのシステ
ム属性は、ハード・ディスクの製造番号、ハード・ディ
スクのサイズ、ハード・ディスクのフォーマット、シス
テムの型式番号、ハードウェア・インタフェース・カー
ド、ハードウェアの製造番号、その他の構成パラメータ
などを含む、システム属性リスト367を含んでいる。
D357は、暗号化形式でファイル管理プログラム内に
も保管される。計算機ID357は、出力として暗号化
計算機ID361を生成するために暗号化エンジン35
9に入力として供給される。暗号化エンジン359は、
DESアルゴリズムなどの規則暗号化ルーチンで構成す
ることができる。暗号化エンジン359には入力として
キー363も供給され、このキー363が従来通り暗号
化操作に作用する。キー363はシステム属性セレクタ
365から導出される。選択候補となるタイプのシステ
ム属性は、ハード・ディスクの製造番号、ハード・ディ
スクのサイズ、ハード・ディスクのフォーマット、シス
テムの型式番号、ハードウェア・インタフェース・カー
ド、ハードウェアの製造番号、その他の構成パラメータ
などを含む、システム属性リスト367を含んでいる。
【0040】本発明では、クリア・テキストの計算機I
D357と暗号化計算機ID361がメモリに保管され
ている。また、本発明では、ファイル管理プログラムが
適切なユーザ・インタフェース画面にクリア・テキスト
の計算機ID357を通知する。その後、ユーザは、図
15のブロック図によりその計算機IDが使用されるソ
フトウェア・ベンダに計算機IDを連絡する。図示の通
り、製品キー暗号化エンジン375はソフトウェア・ベ
ンダの制御下に維持される。この製品キー暗号化エンジ
ン375は、計算機ID357と、顧客番号369(こ
のソフトウェア・ベンダの内部記録機能により顧客に割
り当てられているもの)と、実暗号化キー371(顧客
の管理下にあるコンピュータがアクセス可能なメモリ媒
体上に保管されたソフトウェア製品を暗号解読する場合
に使用されるもの)と、制御ブロック・テキスト373
(定義済みのテキスト部分とすることができる)と、試
用期間データ374(試用期間を定義するクロック値ま
たはカウンタ値など)とを入力として受け取る。製品キ
ー暗号化エンジンは、製品キー377を出力として生成
する。この製品キー377は、実キー371を暴露する
という危険を冒さずにセキュリティ対策のない通信チャ
ネルを介して顧客に伝えることができる。実キー371
は暗号化操作によりマスキングされるが、製品キー37
7を使用できるのは計算機ID357が導出された構成
と同一の構成を有するデータ処理システム上に限られる
ので、暗号化ソフトウェア製品へのアクセスは安全な状
態で維持される。
D357と暗号化計算機ID361がメモリに保管され
ている。また、本発明では、ファイル管理プログラムが
適切なユーザ・インタフェース画面にクリア・テキスト
の計算機ID357を通知する。その後、ユーザは、図
15のブロック図によりその計算機IDが使用されるソ
フトウェア・ベンダに計算機IDを連絡する。図示の通
り、製品キー暗号化エンジン375はソフトウェア・ベ
ンダの制御下に維持される。この製品キー暗号化エンジ
ン375は、計算機ID357と、顧客番号369(こ
のソフトウェア・ベンダの内部記録機能により顧客に割
り当てられているもの)と、実暗号化キー371(顧客
の管理下にあるコンピュータがアクセス可能なメモリ媒
体上に保管されたソフトウェア製品を暗号解読する場合
に使用されるもの)と、制御ブロック・テキスト373
(定義済みのテキスト部分とすることができる)と、試
用期間データ374(試用期間を定義するクロック値ま
たはカウンタ値など)とを入力として受け取る。製品キ
ー暗号化エンジンは、製品キー377を出力として生成
する。この製品キー377は、実キー371を暴露する
という危険を冒さずにセキュリティ対策のない通信チャ
ネルを介して顧客に伝えることができる。実キー371
は暗号化操作によりマスキングされるが、製品キー37
7を使用できるのは計算機ID357が導出された構成
と同一の構成を有するデータ処理システム上に限られる
ので、暗号化ソフトウェア製品へのアクセスは安全な状
態で維持される。
【0041】製品キー377が引き渡されると、ユーザ
制御のデータ処理システムに常駐するファイル管理プロ
グラムは、実キー生成プログラム379を使用して、製
品キー377、顧客番号369、制御ブロック・テキス
ト373、計算機ID357、および試用期間データ3
74などの複数の入力を受け取る。実キー生成プログラ
ム379は、導出された実キー381を出力として生成
する。
制御のデータ処理システムに常駐するファイル管理プロ
グラムは、実キー生成プログラム379を使用して、製
品キー377、顧客番号369、制御ブロック・テキス
ト373、計算機ID357、および試用期間データ3
74などの複数の入力を受け取る。実キー生成プログラ
ム379は、導出された実キー381を出力として生成
する。
【0042】製品キー暗号化エンジン375(図15)
と実キー生成構成379(図16)の動作を実行するの
に使用する暗号化および暗号解読アルゴリズムについて
は、1992年10月21日に出願され、"Method and
System for Multimedia Access Control Enablement"と
いう名称の関連の米国特許出願第07/964324号
に記載されている。
と実キー生成構成379(図16)の動作を実行するの
に使用する暗号化および暗号解読アルゴリズムについて
は、1992年10月21日に出願され、"Method and
System for Multimedia Access Control Enablement"と
いう名称の関連の米国特許出願第07/964324号
に記載されている。
【0043】次に、図17および図18に示すように、
ソフトウェア・ベンダによって提供された製品キー37
7の妥当性および信憑性を判定するため、導出された実
キー381がテストされる。図示の通り、導出された実
キー381は暗号化エンジン385に一方の入力として
供給される。この暗号化エンジン385へのもう一方の
入力として、所定の暗号化妥当性検査データ・セグメン
ト383が供給される。暗号化エンジンは、導出された
クリア妥当性検査テキスト387を出力として供給す
る。その後、図18により、導出されたクリア妥当性検
査テキスト387が比較器389で既知のクリア妥当性
検査テキスト391と比較される。この比較器389
は、導出されたクリア妥当性検査テキスト387と既知
のクリア妥当性検査テキスト391との比較をビットご
とに行うだけである。導出されたクリア妥当性検査テキ
スト387が既知のクリア妥当性検査テキスト391と
一致すると、ステップ393によりキー・ファイルが作
成されるが、導出されたクリア妥当性検査テキスト38
7が既知のクリア妥当性検査テキスト391と一致しな
い場合は、ステップ395によりユーザ制御のデータ処
理システムに警告が通知される。
ソフトウェア・ベンダによって提供された製品キー37
7の妥当性および信憑性を判定するため、導出された実
キー381がテストされる。図示の通り、導出された実
キー381は暗号化エンジン385に一方の入力として
供給される。この暗号化エンジン385へのもう一方の
入力として、所定の暗号化妥当性検査データ・セグメン
ト383が供給される。暗号化エンジンは、導出された
クリア妥当性検査テキスト387を出力として供給す
る。その後、図18により、導出されたクリア妥当性検
査テキスト387が比較器389で既知のクリア妥当性
検査テキスト391と比較される。この比較器389
は、導出されたクリア妥当性検査テキスト387と既知
のクリア妥当性検査テキスト391との比較をビットご
とに行うだけである。導出されたクリア妥当性検査テキ
スト387が既知のクリア妥当性検査テキスト391と
一致すると、ステップ393によりキー・ファイルが作
成されるが、導出されたクリア妥当性検査テキスト38
7が既知のクリア妥当性検査テキスト391と一致しな
い場合は、ステップ395によりユーザ制御のデータ処
理システムに警告が通知される。
【0044】次に図19に移って説明すると、キー・フ
ァイル397は、一時製品キー、顧客キー(顧客番号の
暗号化バージョン)、クリア・テキストでの計算機ID
番号、および試用期間データ(クロック値またはカウン
タ値など)を含むものとして示されている。このキー・
ファイルは、暗号化エンジン399に入力として供給さ
れる。暗号化エンジン399には、キー401も入力と
して供給される。キー401は、計算機ID番号を導出
する際に使用するシステム属性のような固有のシステム
属性403から導出される。暗号化エンジン399は、
暗号化キー・ファイル405を出力として提供する。
ァイル397は、一時製品キー、顧客キー(顧客番号の
暗号化バージョン)、クリア・テキストでの計算機ID
番号、および試用期間データ(クロック値またはカウン
タ値など)を含むものとして示されている。このキー・
ファイルは、暗号化エンジン399に入力として供給さ
れる。暗号化エンジン399には、キー401も入力と
して供給される。キー401は、計算機ID番号を導出
する際に使用するシステム属性のような固有のシステム
属性403から導出される。暗号化エンジン399は、
暗号化キー・ファイル405を出力として提供する。
【0045】図20、図21、図22、図23、および
図24は、一時アクセスキーが受け取られ、妥当性が検
査され、キー・ファイル397(図19)に記録された
後で行われるファイル管理プログラムの操作を示してい
る。
図24は、一時アクセスキーが受け取られ、妥当性が検
査され、キー・ファイル397(図19)に記録された
後で行われるファイル管理プログラムの操作を示してい
る。
【0046】図20は、暗号化ソフトウェア製品が処理
のためにユーザ制御のデータ処理システムによって呼び
出されたときに実行される各種ステップを示すブロック
図である。まず、暗号化ファイル405が取り出され、
「ヘッダ」部407がユーザ制御のデータ処理システム
によって読み取られる。このヘッダは、キー・ファイル
の位置を含む複数の構成要素を有する。キー・ファイル
の位置は、ステップ409によりキー・ファイルを取り
出すために使用される。さらにヘッダは、暗号化妥当性
検査テキスト411も含んでいる。この暗号化妥当性検
査テキスト411もユーザ制御のデータ処理システムに
よって読み取られる。前述の通り(および図19に示す
通り)、キー・ファイルは製品キー419、顧客キー4
17、および計算機ID415を含んでいる。図21に
示すように、これらは暗号解読エンジン413に入力と
して与えられる。暗号解読エンジン413は、出力とし
て実キー421を提供する。実キー421を使用して配
布されたメモリ媒体上の暗号化ソフトウェア製品を暗号
解読する前に、妥当性を判定するためにこの実キーがテ
ストされる。図22は、妥当性検査テストのブロック図
である。「ヘッダ」に収容されている暗号化妥当性検査
テキスト423は、入力として暗号解読エンジン425
に供給される。この暗号解読エンジン425には、実キ
ー421(図21の操作で導出されたもの)も入力とし
て供給される。暗号解読エンジン425は出力としてク
リア妥当性検査テキスト427を提供する。図23のブ
ロック図に示すように、クリア妥当性検査テキスト42
7が入力として比較器429に供給される。この比較器
429には、既知のクリア妥当性検査テキスト431も
入力として供給される。比較器429は、導出されたク
リア妥当性検査テキスト427が既知のクリア妥当性検
査テキスト431と一致するかどうかを判定する。テキ
スト同士が一致すると、ステップ433によりソフトウ
ェア・オブジェクトが暗号解読されるが、妥当性検査テ
キスト部同士が一致しない場合は、ステップ435によ
り警告が通知される。図24は、図23のステップ43
3の暗号解読操作を示すブロック図である。まず、暗号
化ソフトウェア・オブジェクト437が入力として暗号
解読エンジン439に与えられる。この暗号解読エンジ
ン439には、妥当性検査された実キー441も入力と
して供給される。暗号解読エンジン439は、出力とし
て暗号解読したソフトウェア・オブジェクト443を供
給する。
のためにユーザ制御のデータ処理システムによって呼び
出されたときに実行される各種ステップを示すブロック
図である。まず、暗号化ファイル405が取り出され、
「ヘッダ」部407がユーザ制御のデータ処理システム
によって読み取られる。このヘッダは、キー・ファイル
の位置を含む複数の構成要素を有する。キー・ファイル
の位置は、ステップ409によりキー・ファイルを取り
出すために使用される。さらにヘッダは、暗号化妥当性
検査テキスト411も含んでいる。この暗号化妥当性検
査テキスト411もユーザ制御のデータ処理システムに
よって読み取られる。前述の通り(および図19に示す
通り)、キー・ファイルは製品キー419、顧客キー4
17、および計算機ID415を含んでいる。図21に
示すように、これらは暗号解読エンジン413に入力と
して与えられる。暗号解読エンジン413は、出力とし
て実キー421を提供する。実キー421を使用して配
布されたメモリ媒体上の暗号化ソフトウェア製品を暗号
解読する前に、妥当性を判定するためにこの実キーがテ
ストされる。図22は、妥当性検査テストのブロック図
である。「ヘッダ」に収容されている暗号化妥当性検査
テキスト423は、入力として暗号解読エンジン425
に供給される。この暗号解読エンジン425には、実キ
ー421(図21の操作で導出されたもの)も入力とし
て供給される。暗号解読エンジン425は出力としてク
リア妥当性検査テキスト427を提供する。図23のブ
ロック図に示すように、クリア妥当性検査テキスト42
7が入力として比較器429に供給される。この比較器
429には、既知のクリア妥当性検査テキスト431も
入力として供給される。比較器429は、導出されたク
リア妥当性検査テキスト427が既知のクリア妥当性検
査テキスト431と一致するかどうかを判定する。テキ
スト同士が一致すると、ステップ433によりソフトウ
ェア・オブジェクトが暗号解読されるが、妥当性検査テ
キスト部同士が一致しない場合は、ステップ435によ
り警告が通知される。図24は、図23のステップ43
3の暗号解読操作を示すブロック図である。まず、暗号
化ソフトウェア・オブジェクト437が入力として暗号
解読エンジン439に与えられる。この暗号解読エンジ
ン439には、妥当性検査された実キー441も入力と
して供給される。暗号解読エンジン439は、出力とし
て暗号解読したソフトウェア・オブジェクト443を供
給する。
【0047】暗号化ヘッダは、あるファイルがクリアテ
キスト・ファイルとともに格納されたときにそのファイ
ルが暗号化されているかどうかの判定に対応するために
設けられている。導入時の妥当性検査ステップ(本発明
の概念とは一切無関係である)の一部としてファイル・
サイズを検査する場合があるので、暗号化ファイルに暗
号化ヘッダを設ける際に、ファイル・サイズを変更しな
いことが重要である。このため、そのファイルのサイズ
を想定以上にすると、ソフトウェアの導入時に操作上の
困難が発生する場合がある。暗号化製品にアクセスする
可能性のある他のソフトウェア・アプリケーションは元
のファイル名を使用してそのファイルにアクセスするの
で、ファイルが暗号化されているという事実を反映する
ために暗号化ソフトウェア製品に関連するファイル名を
変更することができず、そのため、暗号化ヘッダの必要
性がさらに増すことになる。したがって、ファイルが暗
号化されていることを示すためにファイル名を変更する
と、暗号化ソフトウェア製品と他のおそらく関連あるソ
フトウェア製品との有益かつ望ましいやりとりが阻害さ
れる恐れがある。たとえば、表計算アプリケーションで
は、通常、印刷文書に財務情報を統合できるようにする
ために関連のワード・プロセッサ・プログラムに表計算
の各部を移植することができる。ワード・プロセッサ・
プログラム用のハードコード化された元のファイル名を
変更すると、これらのソフトウェア製品間の有益なやり
とりが阻害される恐れがある。本発明の暗号化ヘッダ
は、暗号化ファイルをその名前ファイル長で保管し、ソ
フトウェア製品用のファイル名を未変更の形式で保管す
ることで、上記の問題を解決するものである。
キスト・ファイルとともに格納されたときにそのファイ
ルが暗号化されているかどうかの判定に対応するために
設けられている。導入時の妥当性検査ステップ(本発明
の概念とは一切無関係である)の一部としてファイル・
サイズを検査する場合があるので、暗号化ファイルに暗
号化ヘッダを設ける際に、ファイル・サイズを変更しな
いことが重要である。このため、そのファイルのサイズ
を想定以上にすると、ソフトウェアの導入時に操作上の
困難が発生する場合がある。暗号化製品にアクセスする
可能性のある他のソフトウェア・アプリケーションは元
のファイル名を使用してそのファイルにアクセスするの
で、ファイルが暗号化されているという事実を反映する
ために暗号化ソフトウェア製品に関連するファイル名を
変更することができず、そのため、暗号化ヘッダの必要
性がさらに増すことになる。したがって、ファイルが暗
号化されていることを示すためにファイル名を変更する
と、暗号化ソフトウェア製品と他のおそらく関連あるソ
フトウェア製品との有益かつ望ましいやりとりが阻害さ
れる恐れがある。たとえば、表計算アプリケーションで
は、通常、印刷文書に財務情報を統合できるようにする
ために関連のワード・プロセッサ・プログラムに表計算
の各部を移植することができる。ワード・プロセッサ・
プログラム用のハードコード化された元のファイル名を
変更すると、これらのソフトウェア製品間の有益なやり
とりが阻害される恐れがある。本発明の暗号化ヘッダ
は、暗号化ファイルをその名前ファイル長で保管し、ソ
フトウェア製品用のファイル名を未変更の形式で保管す
ることで、上記の問題を解決するものである。
【0048】図25は、暗号化ヘッダ451を備えた暗
号化ファイルを示す図である。暗号化ヘッダ451は、
固有のID部453、キー・ファイル部の名前455、
暗号化妥当性検査セグメント457、暗号化タイプ45
9、サイド・ファイルへのオフセット461、暗号化フ
ァイル・データ463などを含む複数のコード・セグメ
ントを含んでいる。当然のことながら、この図の暗号化
ファイル・データ463は、ワード・プロセッサ・プロ
グラムまたは表計算などの暗号化ソフトウェア製品を表
している。暗号化ヘッダ451は、通常は暗号化ソフト
ウェア製品の一部を構成するはずの暗号化データの代わ
りに提供される。また、暗号化ヘッダは、暗号化ソフト
ウェア製品の最初の部分の位置に代入される。暗号化フ
ァイル・データ463からなる暗号化ソフトウェア製品
の前面に暗号化ヘッダ451を配置するためには、暗号
化ファイル・データの一部を別の場所にコピーしなけれ
ばならない。サイド・ファイルへのオフセット461
は、移動されたファイル・データが収容されているサイ
ド・ファイル位置を識別するものである。
号化ファイルを示す図である。暗号化ヘッダ451は、
固有のID部453、キー・ファイル部の名前455、
暗号化妥当性検査セグメント457、暗号化タイプ45
9、サイド・ファイルへのオフセット461、暗号化フ
ァイル・データ463などを含む複数のコード・セグメ
ントを含んでいる。当然のことながら、この図の暗号化
ファイル・データ463は、ワード・プロセッサ・プロ
グラムまたは表計算などの暗号化ソフトウェア製品を表
している。暗号化ヘッダ451は、通常は暗号化ソフト
ウェア製品の一部を構成するはずの暗号化データの代わ
りに提供される。また、暗号化ヘッダは、暗号化ソフト
ウェア製品の最初の部分の位置に代入される。暗号化フ
ァイル・データ463からなる暗号化ソフトウェア製品
の前面に暗号化ヘッダ451を配置するためには、暗号
化ファイル・データの一部を別の場所にコピーしなけれ
ばならない。サイド・ファイルへのオフセット461
は、移動されたファイル・データが収容されているサイ
ド・ファイル位置を識別するものである。
【0049】図26は、暗号化ファイルのディレクトリ
とサイド・ファイルとの関係を示す図である。図示の通
り、暗号化ファイルのディレクトリ465は、ファイル
aaa、ファイルbbb、ファイルccc、ファイルd
ddからファイルnnnまでを含んでいる。これらのフ
ァイルのそれぞれは、特定の暗号化ソフトウェア製品の
ディレクトリ名を表している。各暗号化ソフトウェア製
品には、ファイルのサイズとファイル名を変更せずに暗
号化ヘッダ451を収容するために移動されたファイル
の前面部分が入っているサイド・ファイルが関連付けら
れている。ファイルaaaにはサイド・ファイルAAA
が関連付けられている。ソフトウェア製品ファイルbb
bにはサイド・ファイルBBBが関連付けられている。
暗号化ソフトウェア製品cccにはサイド・ファイルC
CCが関連付けられている。暗号化ソフトウェア製品d
ddにはサイド・ファイルDDDが関連付けられてい
る。暗号化ソフトウェア製品nnnにはサイド・ファイ
ルNNNが関連付けられている。図26のディレクトリ
名467、469、471、473、475は、サイド
・ファイル477、479、481、483、485に
関連するものとして示されている。このサイド・ファイ
ルの目的は、ファイル・サイズを変更せずに暗号化ソフ
トウェア製品のそれぞれに暗号化ヘッダでタグを付けら
れるようにすることにある。
とサイド・ファイルとの関係を示す図である。図示の通
り、暗号化ファイルのディレクトリ465は、ファイル
aaa、ファイルbbb、ファイルccc、ファイルd
ddからファイルnnnまでを含んでいる。これらのフ
ァイルのそれぞれは、特定の暗号化ソフトウェア製品の
ディレクトリ名を表している。各暗号化ソフトウェア製
品には、ファイルのサイズとファイル名を変更せずに暗
号化ヘッダ451を収容するために移動されたファイル
の前面部分が入っているサイド・ファイルが関連付けら
れている。ファイルaaaにはサイド・ファイルAAA
が関連付けられている。ソフトウェア製品ファイルbb
bにはサイド・ファイルBBBが関連付けられている。
暗号化ソフトウェア製品cccにはサイド・ファイルC
CCが関連付けられている。暗号化ソフトウェア製品d
ddにはサイド・ファイルDDDが関連付けられてい
る。暗号化ソフトウェア製品nnnにはサイド・ファイ
ルNNNが関連付けられている。図26のディレクトリ
名467、469、471、473、475は、サイド
・ファイル477、479、481、483、485に
関連するものとして示されている。このサイド・ファイ
ルの目的は、ファイル・サイズを変更せずに暗号化ソフ
トウェア製品のそれぞれに暗号化ヘッダでタグを付けら
れるようにすることにある。
【0050】暗号化ヘッダ451の暗号化タイプ・セグ
メント459は、暗号化ソフトウェア製品の暗号化に使
用される暗号化のタイプを識別するものである。製品の
暗号化にはいくつかある従来の暗号化技法のいずれも使
用可能であり、同一メモリ媒体上に収容されている複数
の異なるソフトウェア製品を暗号化する場合は異なる暗
号化タイプを使用することができる。このため、暗号化
タイプ・セグメント459により、暗号化ソフトウェア
製品を暗号解読するために適切な暗号化/暗号解読ルー
チンが確実に呼び出される。ただし、この場合、一時ア
クセス・キーが有効で期限切れになっていないことが条
件となる。暗号化ヘッダ451のキー・ファイル・セグ
メントの名前455は、キー・ファイルのアドレス(通
常、ディスク・ドライブ位置)を提供する。(図19に
関連して)前述の通り、キー・ファイルは、製品キー、
顧客キー、およびクリア計算機IDを含んでいる。(図
21により)実キーを生成するには、これらの3つの情
報がすべて必要になる。暗号化妥当性検査セグメント4
57は、図23のルーチンを使用して既知のクリア妥当
性検査テキストとの比較が可能な導出済みクリア妥当性
検査テキストを生成するための図22に示すルーチンで
使用される暗号化妥当性検査テキストを含んでいる。導
出されたクリア妥当性検査テキストが既知のクリア妥当
性検査テキストと完全に一致する場合のみ、導出され妥
当性検査された実キーを使用して図24により暗号化ソ
フトウェア製品を暗号解読することにより、処理を続行
することができる。しかし、図24の暗号解読操作を実
行する前に、暗号化ヘッダ451の代わりに対応するサ
イド・ファイルの内容を暗号化ソフトウェア製品に戻し
ておかなければならない。これにより、暗号解読操作の
前に暗号化ソフトウェア製品が完全なものになる。
メント459は、暗号化ソフトウェア製品の暗号化に使
用される暗号化のタイプを識別するものである。製品の
暗号化にはいくつかある従来の暗号化技法のいずれも使
用可能であり、同一メモリ媒体上に収容されている複数
の異なるソフトウェア製品を暗号化する場合は異なる暗
号化タイプを使用することができる。このため、暗号化
タイプ・セグメント459により、暗号化ソフトウェア
製品を暗号解読するために適切な暗号化/暗号解読ルー
チンが確実に呼び出される。ただし、この場合、一時ア
クセス・キーが有効で期限切れになっていないことが条
件となる。暗号化ヘッダ451のキー・ファイル・セグ
メントの名前455は、キー・ファイルのアドレス(通
常、ディスク・ドライブ位置)を提供する。(図19に
関連して)前述の通り、キー・ファイルは、製品キー、
顧客キー、およびクリア計算機IDを含んでいる。(図
21により)実キーを生成するには、これらの3つの情
報がすべて必要になる。暗号化妥当性検査セグメント4
57は、図23のルーチンを使用して既知のクリア妥当
性検査テキストとの比較が可能な導出済みクリア妥当性
検査テキストを生成するための図22に示すルーチンで
使用される暗号化妥当性検査テキストを含んでいる。導
出されたクリア妥当性検査テキストが既知のクリア妥当
性検査テキストと完全に一致する場合のみ、導出され妥
当性検査された実キーを使用して図24により暗号化ソ
フトウェア製品を暗号解読することにより、処理を続行
することができる。しかし、図24の暗号解読操作を実
行する前に、暗号化ヘッダ451の代わりに対応するサ
イド・ファイルの内容を暗号化ソフトウェア製品に戻し
ておかなければならない。これにより、暗号解読操作の
前に暗号化ソフトウェア製品が完全なものになる。
【0051】ユーザ制御のデータ処理システムのオペレ
ーティング・システムによる処理のためにファイルが呼
び出されるたびに、そのオペレーティング・システムに
常駐するファイル管理プログラムが入出力要求を代行受
信(intercept)し、ファイルの前面部分を検査して、
固有のID453のような暗号解読ブロックIDが特定
の既知の場所に存在するかどうかを判定する。パフォー
マンスを最善にするため、図25に示すように、通常、
この場所はファイルの先頭になる。ファイルが暗号解読
ブロックを備えているとファイル管理プログラムが判定
すると、TSR(終了後常駐もしくは常駐終了型プログ
ラム)がそのブロックをメモリに読み込む。その後、キ
ー・ファイルが入っているドライブおよびディレクトリ
を指定する環境変数をコピーし、暗号化ブロックからの
キー・ファイル名を連結することで完全修飾キー・ファ
イル名を作成するために、その暗号解読ブロックが解析
される。次に、TSRはキー・ファイルのオープンを試
みる。キー・ファイルが存在しない場合は、TSRは、
暗号化ファイルのオープンを試みているアプリケーショ
ンに「アクセス拒否」応答を返す。キー・ファイルが存
在すると判定された場合は、TSRはキー・ファイルを
オープンし、各種のキー(製品キー、顧客キー、および
計算機ID)を読み込んで、実キーを生成する。この実
キーは、暗号解読ブロック妥当性検査データを暗号解読
するために使用されている。前述の通り、比較操作によ
って、この暗号解読操作が正常に行われたかどうかが判
定される。比較が失敗に終わった場合、キー・ファイル
は「無効」であると判定され、暗号化ソフトウェア製品
のオープンを試みているアプリケーションに対してTS
Rが「アクセス拒否メッセージ」を返す。しかし、比較
が正常に行われた場合は、ファイル管理プログラムは、
暗号化ヘッダで検出された暗号化タイプに応じてファイ
ルの暗号解読の準備を行う。その後、ファイルがオープ
ンされたことを示すために、TSRは有効なファイル・
ハンドルを呼出し側アプリケーションに返す。アプリケ
ーションが暗号化ファイルからデータを読み取る場合、
TSRは、アプリケーションに戻す前にこのデータを読
み取って暗号解読する。要求されたデータがサイド・フ
ァイル内に格納されている移動済みデータの一部である
場合は、データが別のファイルからのものであることを
呼出し側アプリケーションに知らせずに、TSRがサイ
ド・ファイルを読み取って、適切な暗号解読済みブロッ
クを呼出し側アプリケーションに返す。
ーティング・システムによる処理のためにファイルが呼
び出されるたびに、そのオペレーティング・システムに
常駐するファイル管理プログラムが入出力要求を代行受
信(intercept)し、ファイルの前面部分を検査して、
固有のID453のような暗号解読ブロックIDが特定
の既知の場所に存在するかどうかを判定する。パフォー
マンスを最善にするため、図25に示すように、通常、
この場所はファイルの先頭になる。ファイルが暗号解読
ブロックを備えているとファイル管理プログラムが判定
すると、TSR(終了後常駐もしくは常駐終了型プログ
ラム)がそのブロックをメモリに読み込む。その後、キ
ー・ファイルが入っているドライブおよびディレクトリ
を指定する環境変数をコピーし、暗号化ブロックからの
キー・ファイル名を連結することで完全修飾キー・ファ
イル名を作成するために、その暗号解読ブロックが解析
される。次に、TSRはキー・ファイルのオープンを試
みる。キー・ファイルが存在しない場合は、TSRは、
暗号化ファイルのオープンを試みているアプリケーショ
ンに「アクセス拒否」応答を返す。キー・ファイルが存
在すると判定された場合は、TSRはキー・ファイルを
オープンし、各種のキー(製品キー、顧客キー、および
計算機ID)を読み込んで、実キーを生成する。この実
キーは、暗号解読ブロック妥当性検査データを暗号解読
するために使用されている。前述の通り、比較操作によ
って、この暗号解読操作が正常に行われたかどうかが判
定される。比較が失敗に終わった場合、キー・ファイル
は「無効」であると判定され、暗号化ソフトウェア製品
のオープンを試みているアプリケーションに対してTS
Rが「アクセス拒否メッセージ」を返す。しかし、比較
が正常に行われた場合は、ファイル管理プログラムは、
暗号化ヘッダで検出された暗号化タイプに応じてファイ
ルの暗号解読の準備を行う。その後、ファイルがオープ
ンされたことを示すために、TSRは有効なファイル・
ハンドルを呼出し側アプリケーションに返す。アプリケ
ーションが暗号化ファイルからデータを読み取る場合、
TSRは、アプリケーションに戻す前にこのデータを読
み取って暗号解読する。要求されたデータがサイド・フ
ァイル内に格納されている移動済みデータの一部である
場合は、データが別のファイルからのものであることを
呼出し側アプリケーションに知らせずに、TSRがサイ
ド・ファイルを読み取って、適切な暗号解読済みブロッ
クを呼出し側アプリケーションに返す。
【0052】図25および図26では暗号化ヘッダの大
まかな概念を示したが、図27、図28、および図29
では暗号化ファイルの作成に関するより詳細な態様を示
す。図28および図29は、2種類のデータ・ファイル
を示している。図28は非実行データ・ファイルを示し
ているのに対し、図29は実行データ・ファイルを示し
ている。また、図27は、シグナチャ・セグメント50
1、ヘッダLEN503、サイド・ファイル・インデッ
クス505、サイド・ファイルLEN507、暗号解読
タイプID509、検証データ511、およびキー・フ
ィル名518を含むヘッダ499を示している。図28
に示すように、ソフトウェア製品はクリア・ファイル5
21として始まり、特定の暗号化ルーチンにより暗号化
ファイル523に暗号化される。クリア・ファイル52
1を暗号化ファイル523に変更する場合に使用される
暗号化のタイプは、ヘッダ499の暗号化タイプ・セグ
メント509によって識別される。次に、暗号化ファイ
ル523の前面部分が、ヘッダ499のサイド・ファイ
ル・インデックス505とサイド・ファイルLEN50
7によって識別されるサイド・ファイル527にコピー
される。さらに、サイド・ファイル527には、検証デ
ータのクリア・テキストのコピーも含まれる。その後、
修正済み暗号化ファイル525を形成するためにヘッダ
499が暗号化ファイル523の前面部分にコピーされ
る。図29に示すように、実行ファイルについても同様
の処理が行われる。暗号化ファイル533を形成するた
めに、ソフトウェア製品のクリア・テキスト・コピー
(クリア・ファイル531として表されているもの)が
従来のルーチンにより暗号化される。暗号化ファイル5
33のデータの重なり(オーバレイ)が防止されるよう
に、暗号化ファイル533の前面部分がサイド・ファイ
ル539にコピーされる。しかも、サイド・ファイル5
39は、検証データのクリア・テキストのコピーを含
む。その後、暗号化ファイル553の最初の部分(前面
部分)に実行可能スタブ537とヘッダ599をオーバ
レイすることで、暗号化ファイル533が修正される。
まかな概念を示したが、図27、図28、および図29
では暗号化ファイルの作成に関するより詳細な態様を示
す。図28および図29は、2種類のデータ・ファイル
を示している。図28は非実行データ・ファイルを示し
ているのに対し、図29は実行データ・ファイルを示し
ている。また、図27は、シグナチャ・セグメント50
1、ヘッダLEN503、サイド・ファイル・インデッ
クス505、サイド・ファイルLEN507、暗号解読
タイプID509、検証データ511、およびキー・フ
ィル名518を含むヘッダ499を示している。図28
に示すように、ソフトウェア製品はクリア・ファイル5
21として始まり、特定の暗号化ルーチンにより暗号化
ファイル523に暗号化される。クリア・ファイル52
1を暗号化ファイル523に変更する場合に使用される
暗号化のタイプは、ヘッダ499の暗号化タイプ・セグ
メント509によって識別される。次に、暗号化ファイ
ル523の前面部分が、ヘッダ499のサイド・ファイ
ル・インデックス505とサイド・ファイルLEN50
7によって識別されるサイド・ファイル527にコピー
される。さらに、サイド・ファイル527には、検証デ
ータのクリア・テキストのコピーも含まれる。その後、
修正済み暗号化ファイル525を形成するためにヘッダ
499が暗号化ファイル523の前面部分にコピーされ
る。図29に示すように、実行ファイルについても同様
の処理が行われる。暗号化ファイル533を形成するた
めに、ソフトウェア製品のクリア・テキスト・コピー
(クリア・ファイル531として表されているもの)が
従来のルーチンにより暗号化される。暗号化ファイル5
33のデータの重なり(オーバレイ)が防止されるよう
に、暗号化ファイル533の前面部分がサイド・ファイ
ル539にコピーされる。しかも、サイド・ファイル5
39は、検証データのクリア・テキストのコピーを含
む。その後、暗号化ファイル553の最初の部分(前面
部分)に実行可能スタブ537とヘッダ599をオーバ
レイすることで、暗号化ファイル533が修正される。
【0053】ここで図29の実行可能スタブ537の目
的について説明する。パーソナル・コンピュータ用のD
OSオペレーティング・システムは、暗号化アプリケー
ションの実行を試みる。その結果、システムが「ハン
グ」したり、好ましくないアクションを起こす場合があ
る。図29の実行ファイルの実行可能スタブ537は、
暗号化されたアプリケーションの実行をユーザが試みな
いようにするために使用される。つまり、ユーザが暗号
化ファイルを実行しようとすると、システムをハングさ
せたり、ドライブをフォーマットしたりする危険性がか
なり大きいと思われる。導入済みTSRを使用せずにア
プリケーションを実行したり、TSRが「監視」してい
ないドライブからアプリケーションを実行した場合に必
ず実行可能スタブが実行されるように、このスタブは暗
号化ソフトウェア製品の前面部分に接続されている。こ
のスタブによって、アプリケーションを実行できない理
由を説明するメッセージがユーザに通知される。この実
行可能スタブを使用すると、メッセージの提供以外に、
次のような高度なアクションを実行することができる。 (1)TSRの機能性を複写し、もう一度アプリケーシ
ョンを開始する前に動的暗号化を導入することができ
る。 (2)一時アクセス・キーをオンにして、もう一度アプ
リケーションを開始することができる。 (3)TSRとやりとりして、アプリケーションの実行
元であるドライブを調べるよう通知することができる。
的について説明する。パーソナル・コンピュータ用のD
OSオペレーティング・システムは、暗号化アプリケー
ションの実行を試みる。その結果、システムが「ハン
グ」したり、好ましくないアクションを起こす場合があ
る。図29の実行ファイルの実行可能スタブ537は、
暗号化されたアプリケーションの実行をユーザが試みな
いようにするために使用される。つまり、ユーザが暗号
化ファイルを実行しようとすると、システムをハングさ
せたり、ドライブをフォーマットしたりする危険性がか
なり大きいと思われる。導入済みTSRを使用せずにア
プリケーションを実行したり、TSRが「監視」してい
ないドライブからアプリケーションを実行した場合に必
ず実行可能スタブが実行されるように、このスタブは暗
号化ソフトウェア製品の前面部分に接続されている。こ
のスタブによって、アプリケーションを実行できない理
由を説明するメッセージがユーザに通知される。この実
行可能スタブを使用すると、メッセージの提供以外に、
次のような高度なアクションを実行することができる。 (1)TSRの機能性を複写し、もう一度アプリケーシ
ョンを開始する前に動的暗号化を導入することができ
る。 (2)一時アクセス・キーをオンにして、もう一度アプ
リケーションを開始することができる。 (3)TSRとやりとりして、アプリケーションの実行
元であるドライブを調べるよう通知することができる。
【0054】実行可能スタブは、暗号化プログラムに次
のように保管またはコピーされる。 (1)アプリケーションを暗号化する。 (2)このプログラム用に暗号解読ブロックを作成す
る。 (3)暗号解読ブロックの前面部分に事前作成実行可能
スタブが接続される。 (4)結合した暗号解読ヘッダと実行可能スタブの長さ
を求める。 (5)実行可能ファイルの前面にあってこの長さに匹敵
するバイト数がメモリ、好ましくは定義済みのサイド・
ファイル位置に読み込まれる。 (6)暗号化ヘッダと実行可能スタブが実行可能コード
の先行バイトの上に上書きされる。
のように保管またはコピーされる。 (1)アプリケーションを暗号化する。 (2)このプログラム用に暗号解読ブロックを作成す
る。 (3)暗号解読ブロックの前面部分に事前作成実行可能
スタブが接続される。 (4)結合した暗号解読ヘッダと実行可能スタブの長さ
を求める。 (5)実行可能ファイルの前面にあってこの長さに匹敵
するバイト数がメモリ、好ましくは定義済みのサイド・
ファイル位置に読み込まれる。 (6)暗号化ヘッダと実行可能スタブが実行可能コード
の先行バイトの上に上書きされる。
【0055】TSRは、実行可能スタブの「既知のサイ
ズ」を超えて暗号解読ブロック部分を探索することで、
実行可能スタブが暗号化されているかどうかを判定でき
る。TSRは、実行可能スタブを暗号解読するときに、
サイド・ファイルにアクセスし、スタブとヘッダ・ブロ
ックによって移動されたバイトを読み込む。
ズ」を超えて暗号解読ブロック部分を探索することで、
実行可能スタブが暗号化されているかどうかを判定でき
る。TSRは、実行可能スタブを暗号解読するときに、
サイド・ファイルにアクセスし、スタブとヘッダ・ブロ
ックによって移動されたバイトを読み込む。
【0056】図30および図31は、試用期間中の操作
を示す流れ図であり、この操作はソフトウェア・ブロッ
ク601から始まる。ソフトウェア・ブロック603に
より、ユーザ制御のデータ処理システムのオペレーティ
ング・システム内に位置するファイル管理プログラムが
メモリ媒体への入出力呼出しを連続監視する。その後、
ソフトウェア・ブロック605により、各入出力呼出し
ごとに被呼ファイルがファイル管理プログラムにより代
行受信され、ソフトウェア・ブロック607により、ア
クセスを許可すべきかどうかをファイル管理プログラム
が判定できるようになるまで、オペレーティング・シス
テムから被呼ファイルへのアクセスが拒否される。被呼
ファイルのうち、暗号解読ブロックが位置するはずの部
分が読み取られる。その後、ソフトウェア・ブロック6
09により、被呼ファイルのこの部分が読み出され、ソ
フトウェア・ブロック611により、キー・ファイル・
アドレスが導出される。導出されたアドレスは、ソフト
ウェア・ブロック613によりキー・ファイルを取り出
す際に使用される。判定ブロック615の結果、キー・
ファイルを突き止められない場合は、ソフトウェア・ブ
ロック617で処理が終了する。しかし、判定ブロック
615により、キー・ファイルを突き止めることができ
ると判定された場合は、ソフトウェア・ブロック619
によりキーが導出される。その後、ソフトウェア・ブロ
ック621により、導出されたキーを使用して、暗号化
ヘッダ内に位置する妥当性検査セグメントが暗号解読さ
れる。判定ブロック623では、暗号解読妥当性検査セ
グメントが暗号解読妥当性検査セグメント用のクリア・
テキストと比較される。暗号解読されたセグメントが既
知のクリア・テキスト・セグメントと一致しない場合
は、処理はソフトウェア・ブロック625に続き、終了
する。しかし、判定ブロック623で、暗号解読された
妥当性検査セグメントが既知のクリア・テキスト妥当性
検査セグメントと一致すると判定されると、処理はソフ
トウェア・ブロック627に続き、そこで被呼ファイル
へのアクセスが許可される。次に、ソフトウェア・ブロ
ック629により、暗号解読ヘッダから暗号解読タイプ
が読み取られ、ソフトウェア・ブロック633によりユ
ーザ制御のデータ処理システムのオペレーティング・シ
ステムによる処理のために渡されたときに、被呼ファイ
ルがソフトウェア・ブロック631により動的に暗号解
読される。処理はソフトウェア・ブロック635で終了
する。
を示す流れ図であり、この操作はソフトウェア・ブロッ
ク601から始まる。ソフトウェア・ブロック603に
より、ユーザ制御のデータ処理システムのオペレーティ
ング・システム内に位置するファイル管理プログラムが
メモリ媒体への入出力呼出しを連続監視する。その後、
ソフトウェア・ブロック605により、各入出力呼出し
ごとに被呼ファイルがファイル管理プログラムにより代
行受信され、ソフトウェア・ブロック607により、ア
クセスを許可すべきかどうかをファイル管理プログラム
が判定できるようになるまで、オペレーティング・シス
テムから被呼ファイルへのアクセスが拒否される。被呼
ファイルのうち、暗号解読ブロックが位置するはずの部
分が読み取られる。その後、ソフトウェア・ブロック6
09により、被呼ファイルのこの部分が読み出され、ソ
フトウェア・ブロック611により、キー・ファイル・
アドレスが導出される。導出されたアドレスは、ソフト
ウェア・ブロック613によりキー・ファイルを取り出
す際に使用される。判定ブロック615の結果、キー・
ファイルを突き止められない場合は、ソフトウェア・ブ
ロック617で処理が終了する。しかし、判定ブロック
615により、キー・ファイルを突き止めることができ
ると判定された場合は、ソフトウェア・ブロック619
によりキーが導出される。その後、ソフトウェア・ブロ
ック621により、導出されたキーを使用して、暗号化
ヘッダ内に位置する妥当性検査セグメントが暗号解読さ
れる。判定ブロック623では、暗号解読妥当性検査セ
グメントが暗号解読妥当性検査セグメント用のクリア・
テキストと比較される。暗号解読されたセグメントが既
知のクリア・テキスト・セグメントと一致しない場合
は、処理はソフトウェア・ブロック625に続き、終了
する。しかし、判定ブロック623で、暗号解読された
妥当性検査セグメントが既知のクリア・テキスト妥当性
検査セグメントと一致すると判定されると、処理はソフ
トウェア・ブロック627に続き、そこで被呼ファイル
へのアクセスが許可される。次に、ソフトウェア・ブロ
ック629により、暗号解読ヘッダから暗号解読タイプ
が読み取られ、ソフトウェア・ブロック633によりユ
ーザ制御のデータ処理システムのオペレーティング・シ
ステムによる処理のために渡されたときに、被呼ファイ
ルがソフトウェア・ブロック631により動的に暗号解
読される。処理はソフトウェア・ブロック635で終了
する。
【0057】暗号化ファイルの無許可実行を試みると、
実行可能スタブは少なくとも一時的にアクセスを拒否
し、システムにメッセージを通知するが、前に列挙した
いくつかの高度な方法で問題を処理することができる。
実行可能スタブは少なくとも一時的にアクセスを拒否
し、システムにメッセージを通知するが、前に列挙した
いくつかの高度な方法で問題を処理することができる。
【0058】本発明の好ましい実施例によれば、見込み
のある購入者は、試用期間中または試用期間終了時に、
コンピュータがアクセス可能なメモリ媒体上の1つまた
は複数のソフトウェア製品のコピーの購入準備のために
ベンダに連絡する可能性がある。潜在的ユーザに製品を
発送するためにCD−ROMまたはフロッピー・ディス
クが使用されていることが好ましい。また、コンピュー
タがアクセス可能なメモリ媒体は、試用期間用に提供さ
れる各製品について暗号化したコピーを2つ含むことが
好ましい。一方の暗号化コピーは、ファイル管理プログ
ラムと、ベンダから購入者に通知される一時キーとを使
用して暗号解読することができる一次的なものである。
もう一方の暗号化コピーは、試用期間動作モードでの使
用を目的として提供されるのではなく、ソフトウェア製
品の購入後に暗号解読と使用が可能になる永続コピーと
して提供されるものである。大まかに概説すると、ユー
ザは、試用期間動作モード用にソフトウェア製品を選択
し、(ファイル管理プログラムにより)定義済み試用期
間中の製品へのユーザ・アクセスを可能にする一時アク
セス・キーをベンダから取得する。試用期間終了前また
は終了後にユーザは、ファックス、電子メール、または
電話によってベンダに連絡することで、ソフトウェア製
品の永続コピーをベンダから購入することができる。支
払を受け取ると、ベンダは、ソフトウェア製品のもう1
つの暗号化コピーを暗号解読するのに使用する永続アク
セス・キーをユーザに通知する。この暗号化製品は、D
ESアルゴリズムなどの従来の暗号化ルーチンを使用し
て暗号化することができる。永続キーにより、ソフトウ
ェア製品を暗号解読して無制限に使用することができ
る。1回のトランザクションで1つの製品の複数のコピ
ーを購入する場合があるため、本発明は、可動アクセス
・キーを提供するための技法を備えている。この可動ア
クセス・キーについては、図32〜図37に関連して後
述する。本発明の好ましい実施例で使用するソフトウェ
ア製品の上述の第2のコピーを暗号化し暗号解読するた
めの暗号化アルゴリズムは、試用期間動作モードで使用
するものと同様である。
のある購入者は、試用期間中または試用期間終了時に、
コンピュータがアクセス可能なメモリ媒体上の1つまた
は複数のソフトウェア製品のコピーの購入準備のために
ベンダに連絡する可能性がある。潜在的ユーザに製品を
発送するためにCD−ROMまたはフロッピー・ディス
クが使用されていることが好ましい。また、コンピュー
タがアクセス可能なメモリ媒体は、試用期間用に提供さ
れる各製品について暗号化したコピーを2つ含むことが
好ましい。一方の暗号化コピーは、ファイル管理プログ
ラムと、ベンダから購入者に通知される一時キーとを使
用して暗号解読することができる一次的なものである。
もう一方の暗号化コピーは、試用期間動作モードでの使
用を目的として提供されるのではなく、ソフトウェア製
品の購入後に暗号解読と使用が可能になる永続コピーと
して提供されるものである。大まかに概説すると、ユー
ザは、試用期間動作モード用にソフトウェア製品を選択
し、(ファイル管理プログラムにより)定義済み試用期
間中の製品へのユーザ・アクセスを可能にする一時アク
セス・キーをベンダから取得する。試用期間終了前また
は終了後にユーザは、ファックス、電子メール、または
電話によってベンダに連絡することで、ソフトウェア製
品の永続コピーをベンダから購入することができる。支
払を受け取ると、ベンダは、ソフトウェア製品のもう1
つの暗号化コピーを暗号解読するのに使用する永続アク
セス・キーをユーザに通知する。この暗号化製品は、D
ESアルゴリズムなどの従来の暗号化ルーチンを使用し
て暗号化することができる。永続キーにより、ソフトウ
ェア製品を暗号解読して無制限に使用することができ
る。1回のトランザクションで1つの製品の複数のコピ
ーを購入する場合があるため、本発明は、可動アクセス
・キーを提供するための技法を備えている。この可動ア
クセス・キーについては、図32〜図37に関連して後
述する。本発明の好ましい実施例で使用するソフトウェ
ア製品の上述の第2のコピーを暗号化し暗号解読するた
めの暗号化アルゴリズムは、試用期間動作モードで使用
するものと同様である。
【0059】本発明は、試用期間終了後に永続アクセス
・キーの配布に対応するためのエクスポート(送信)/
インポート(受信)機能を含んでいる。通常、オフィス
の管理者またはデータ処理システムの管理者は、試用期
間終了後に暗号化製品の指定数の複数の「コピー」を購
入する。その後、組織内の所与の個人に対し、暗号化製
品への無制限かつ永続的なアクセスを可能にする永続キ
ーが発行される。分散データ処理ネットワーク内に計算
装置が接続されていないオフィスや作業環境では、オフ
ィスの管理者またはデータ処理システムの管理者から、
組織内で暗号化ソフトウェア製品のコピーの受取りが予
定されている指定の個人に対し、永続アクセス・キーを
通知しなければならない。永続キーは製品への永続的ア
クセスに対応するものである。特定の暗号化製品のコピ
ーを組織内のすべての従業員に発行できるわけではない
ので、ベンダとしては、売買契約またはライセンス契約
を超えるような配布を最小限に抑えるか防止するような
配布方法を希望するはずである。製品は暗号化されてい
るため、暗号化した形式であれば自由に配布することが
できる。本発明で保護の対象となるのは、製品への無制
限アクセスを可能にする各種キーである。電子メールや
印刷物のやりとりでキーが配布されるのを防止するた
め、本発明は、ソース・コンピュータに常駐するエクス
ポート・プログラムと、ターゲット・コンピュータに常
駐するインポート・プログラムとを含み、これらのプロ
グラムにより、フロッピー・ディスクなどの取外し可能
メモリ媒体を介して行われるアクセス・キーの配布に対
応している。このため、アクセス・キーが不注意や事故
によって配布または開示されることはなくなる。この目
標を達成するための主な実施例は2通りある。
・キーの配布に対応するためのエクスポート(送信)/
インポート(受信)機能を含んでいる。通常、オフィス
の管理者またはデータ処理システムの管理者は、試用期
間終了後に暗号化製品の指定数の複数の「コピー」を購
入する。その後、組織内の所与の個人に対し、暗号化製
品への無制限かつ永続的なアクセスを可能にする永続キ
ーが発行される。分散データ処理ネットワーク内に計算
装置が接続されていないオフィスや作業環境では、オフ
ィスの管理者またはデータ処理システムの管理者から、
組織内で暗号化ソフトウェア製品のコピーの受取りが予
定されている指定の個人に対し、永続アクセス・キーを
通知しなければならない。永続キーは製品への永続的ア
クセスに対応するものである。特定の暗号化製品のコピ
ーを組織内のすべての従業員に発行できるわけではない
ので、ベンダとしては、売買契約またはライセンス契約
を超えるような配布を最小限に抑えるか防止するような
配布方法を希望するはずである。製品は暗号化されてい
るため、暗号化した形式であれば自由に配布することが
できる。本発明で保護の対象となるのは、製品への無制
限アクセスを可能にする各種キーである。電子メールや
印刷物のやりとりでキーが配布されるのを防止するた
め、本発明は、ソース・コンピュータに常駐するエクス
ポート・プログラムと、ターゲット・コンピュータに常
駐するインポート・プログラムとを含み、これらのプロ
グラムにより、フロッピー・ディスクなどの取外し可能
メモリ媒体を介して行われるアクセス・キーの配布に対
応している。このため、アクセス・キーが不注意や事故
によって配布または開示されることはなくなる。この目
標を達成するための主な実施例は2通りある。
【0060】第一の実施例では、ソース・コンピュータ
に保管されている1つまたは複数の暗号化ファイルがま
ず暗号解読され、次に暗号化アルゴリズムと移送可能メ
モリ媒体に固有の暗号化キー(ディスケットの製造番号
など)を使用して、そのファイルが暗号化される。キー
・ファイルはディスケットによってターゲット・コンピ
ュータに物理的に運搬することができ、そのターゲット
・コンピュータでは転送可能メモリ媒体との対話により
ターゲット・コンピュータが導出したキーを使用してキ
ー・ファイルの暗号解読が行われる。その後直ちに、タ
ーゲット・コンピュータの固有のシステム属性から導出
されたキーで鍵がかけられた暗号化操作を使用して、キ
ー・ファイル(複数も可)の暗号化が行われる。
に保管されている1つまたは複数の暗号化ファイルがま
ず暗号解読され、次に暗号化アルゴリズムと移送可能メ
モリ媒体に固有の暗号化キー(ディスケットの製造番号
など)を使用して、そのファイルが暗号化される。キー
・ファイルはディスケットによってターゲット・コンピ
ュータに物理的に運搬することができ、そのターゲット
・コンピュータでは転送可能メモリ媒体との対話により
ターゲット・コンピュータが導出したキーを使用してキ
ー・ファイルの暗号解読が行われる。その後直ちに、タ
ーゲット・コンピュータの固有のシステム属性から導出
されたキーで鍵がかけられた暗号化操作を使用して、キ
ー・ファイル(複数も可)の暗号化が行われる。
【0061】第二の実施例では、ターゲット・コンピュ
ータに明確に関連付けられ、ターゲット・コンピュータ
の1つまたは複数の固有のシステム属性から導出可能な
転送キーをターゲット・コンピュータのインポート・フ
ァイルから獲得するために、転送可能メモリ媒体がター
ゲット・コンピュータに装填される。その後、メモリ媒
体はソース・コンピュータに転送され、そこで1つまた
は複数のキー・ファイルが暗号解読され、さらに転送キ
ーを使用して暗号化される。次に、メモリ媒体はターゲ
ット・コンピュータに運搬され、そこで転送キーが生成
され、1つまたは複数のキー・ファイルを暗号解読する
ための暗号解読操作で転送キーが使用される。ターゲッ
ト・コンピュータに明確に関連付けられ、1つまたは複
数の固有のコンピュータ構成属性から導出可能なキーで
鍵がかけられた暗号化操作を使用して、直ちにキー・フ
ァイルの暗号化が行われることが好ましい。第一の実施
例については、図32、図33、図34、および図35
に関連して説明する。また、第二の実施例については、
図36および図37に関連して説明する。
ータに明確に関連付けられ、ターゲット・コンピュータ
の1つまたは複数の固有のシステム属性から導出可能な
転送キーをターゲット・コンピュータのインポート・フ
ァイルから獲得するために、転送可能メモリ媒体がター
ゲット・コンピュータに装填される。その後、メモリ媒
体はソース・コンピュータに転送され、そこで1つまた
は複数のキー・ファイルが暗号解読され、さらに転送キ
ーを使用して暗号化される。次に、メモリ媒体はターゲ
ット・コンピュータに運搬され、そこで転送キーが生成
され、1つまたは複数のキー・ファイルを暗号解読する
ための暗号解読操作で転送キーが使用される。ターゲッ
ト・コンピュータに明確に関連付けられ、1つまたは複
数の固有のコンピュータ構成属性から導出可能なキーで
鍵がかけられた暗号化操作を使用して、直ちにキー・フ
ァイルの暗号化が行われることが好ましい。第一の実施
例については、図32、図33、図34、および図35
に関連して説明する。また、第二の実施例については、
図36および図37に関連して説明する。
【0062】図32および図33は、別のシステムへの
インポートが可能になっているアクセス・キーの固有の
ディスケット・イメージを生成する「エクスポート」機
構を使用して、許可ユーザが永続キーを別のデータ処理
システムへ移動できるようにするためのエクスポート操
作とインポート操作をブロック図形式で示したものであ
る。本発明によれば、ソフトウェア・ベンダから顧客に
電話で引き渡されるアクセス・キーの長さは40バイト
未満である。生成されたキー・ファイルの長さは200
0バイトを上回る。キー・ファイルと計算機IDファイ
ルをディスケットにコピーするためのエクスポート機構
が設けられている。誰でも使用可能な公共フォーラムに
コピーされるのを禁止するために、両方のファイルは、
修正済みのディスケット製造番号で暗号化される。別の
システムに設けられているインポート機構は、これらの
ファイルを暗号解読し、ディスケットから得た製品キー
と計算機IDをインポート・システム・マスタ・ファイ
ル内のインポート製品キーおよび計算機IDのリストに
追加し、そのキー・ファイルをインポート・システム・
ハード・ディスクにコピーする。前に開示したとおり、
このキー・ファイルがインポート・システム上で暗号化
される。
インポートが可能になっているアクセス・キーの固有の
ディスケット・イメージを生成する「エクスポート」機
構を使用して、許可ユーザが永続キーを別のデータ処理
システムへ移動できるようにするためのエクスポート操
作とインポート操作をブロック図形式で示したものであ
る。本発明によれば、ソフトウェア・ベンダから顧客に
電話で引き渡されるアクセス・キーの長さは40バイト
未満である。生成されたキー・ファイルの長さは200
0バイトを上回る。キー・ファイルと計算機IDファイ
ルをディスケットにコピーするためのエクスポート機構
が設けられている。誰でも使用可能な公共フォーラムに
コピーされるのを禁止するために、両方のファイルは、
修正済みのディスケット製造番号で暗号化される。別の
システムに設けられているインポート機構は、これらの
ファイルを暗号解読し、ディスケットから得た製品キー
と計算機IDをインポート・システム・マスタ・ファイ
ル内のインポート製品キーおよび計算機IDのリストに
追加し、そのキー・ファイルをインポート・システム・
ハード・ディスクにコピーする。前に開示したとおり、
このキー・ファイルがインポート・システム上で暗号化
される。
【0063】図32は、本発明の好ましい実施例による
エクスポート操作を示すブロック図である。図示の通
り、ソース・コンピュータ651は、キー・ファイル6
53と計算機IDファイル655とを含む。キー・ファ
イル653は、製品キーと、顧客キーと、ソース・コン
ピュータ651用の計算機IDのクリア・テキストと、
試用期間データ(試用期間を定義するクロックまたはカ
ウンタあるいはその両方など)と、特定の保護ソフトウ
ェア製品について許可されたエクスポート操作の最大数
を定義し、実施されたエクスポート操作の総数を追跡す
るという二重機能を実行するエクスポート・カウンタと
を含む。計算機IDファイルは、計算機ID番号と試用
期間データ(試用期間を定義するクロックまたはカウン
タあるいはその両方など)とを含む。キー・ファイル6
53と計算機IDファイル655はどちらも従来の暗号
化操作(DESアルゴリズムなど)によって暗号化され
るが、この操作はソース・コンピュータ651の固有の
システム属性から導出されるキーで鍵がかけられてい
る。エクスポート操作の開始時に、キー・ファイル65
3と計算機IDファイル655が暗号解読される。キー
・ファイル653は、キー659で鍵がかけられた暗号
解読操作657に入力として供給される。同様に、計算
機IDファイル655は、キー661で鍵がかけられた
暗号解読操作663に入力として供給される。暗号解読
操作657および663は、キー・ファイル653と計
算機IDファイル655のクリア・テキスト・バージョ
ンを生成する。クリア・テキストが得られると、キー・
ファイル653内に収容されているエクスポート・カウ
ンタがブロック661により修正される。たとえば、こ
の操作が、許される10回の操作のうちの7回目のエク
スポート操作であれば、カウンタは"7:10"と表示す
るはずである。キー・ファイル653のクリア・テキス
ト・バージョンは暗号化操作669に入力として供給さ
れる。この暗号化操作669は、従来のいずれの暗号化
操作(DESアルゴリズムなど)でもよく、修飾子66
7による修正の対象となったソース・コンピュータ65
1に結合されたメモリ媒体に固有のメモリ媒体属性66
5で鍵がかけられる。たとえば、メモリ媒体677に固
有の「メモリ媒体属性」として固有のディスケット製造
番号を供給することができる。わずかに変更して暗号化
操作669に入力として供給するために、ディスケット
製造番号は修飾子667により修正される。計算機ID
ファイル655のクリア・テキストについても同じ操作
が行われる。すなわち、固有のメモリ媒体属性671が
修飾子673によって修正され、暗号化操作675のキ
ーとして使用される。この暗号化操作は、DES操作な
どの従来の暗号化操作で構成することができる。最後
に、暗号化操作669および675の出力がコピー操作
679および681に入力として供給され、暗号化キー
・ファイル653と計算機IDファイル655がメモリ
媒体677にコピーされる。
エクスポート操作を示すブロック図である。図示の通
り、ソース・コンピュータ651は、キー・ファイル6
53と計算機IDファイル655とを含む。キー・ファ
イル653は、製品キーと、顧客キーと、ソース・コン
ピュータ651用の計算機IDのクリア・テキストと、
試用期間データ(試用期間を定義するクロックまたはカ
ウンタあるいはその両方など)と、特定の保護ソフトウ
ェア製品について許可されたエクスポート操作の最大数
を定義し、実施されたエクスポート操作の総数を追跡す
るという二重機能を実行するエクスポート・カウンタと
を含む。計算機IDファイルは、計算機ID番号と試用
期間データ(試用期間を定義するクロックまたはカウン
タあるいはその両方など)とを含む。キー・ファイル6
53と計算機IDファイル655はどちらも従来の暗号
化操作(DESアルゴリズムなど)によって暗号化され
るが、この操作はソース・コンピュータ651の固有の
システム属性から導出されるキーで鍵がかけられてい
る。エクスポート操作の開始時に、キー・ファイル65
3と計算機IDファイル655が暗号解読される。キー
・ファイル653は、キー659で鍵がかけられた暗号
解読操作657に入力として供給される。同様に、計算
機IDファイル655は、キー661で鍵がかけられた
暗号解読操作663に入力として供給される。暗号解読
操作657および663は、キー・ファイル653と計
算機IDファイル655のクリア・テキスト・バージョ
ンを生成する。クリア・テキストが得られると、キー・
ファイル653内に収容されているエクスポート・カウ
ンタがブロック661により修正される。たとえば、こ
の操作が、許される10回の操作のうちの7回目のエク
スポート操作であれば、カウンタは"7:10"と表示す
るはずである。キー・ファイル653のクリア・テキス
ト・バージョンは暗号化操作669に入力として供給さ
れる。この暗号化操作669は、従来のいずれの暗号化
操作(DESアルゴリズムなど)でもよく、修飾子66
7による修正の対象となったソース・コンピュータ65
1に結合されたメモリ媒体に固有のメモリ媒体属性66
5で鍵がかけられる。たとえば、メモリ媒体677に固
有の「メモリ媒体属性」として固有のディスケット製造
番号を供給することができる。わずかに変更して暗号化
操作669に入力として供給するために、ディスケット
製造番号は修飾子667により修正される。計算機ID
ファイル655のクリア・テキストについても同じ操作
が行われる。すなわち、固有のメモリ媒体属性671が
修飾子673によって修正され、暗号化操作675のキ
ーとして使用される。この暗号化操作は、DES操作な
どの従来の暗号化操作で構成することができる。最後
に、暗号化操作669および675の出力がコピー操作
679および681に入力として供給され、暗号化キー
・ファイル653と計算機IDファイル655がメモリ
媒体677にコピーされる。
【0064】図33は、インポート操作を示すブロック
図である。メモリ媒体677(図32)はソース・コン
ピュータ651(図32)から物理的に取り外され、コ
ンピュータ707(図33)に物理的に運搬される。あ
るいは、分散データ処理システムではこの転送は、メモ
リ媒体677の物理的な取外しを伴わずに行われる場合
もある。ここで図33に関して説明すると、どの特定の
ターゲット・コンピュータがキー・ファイルと計算機I
Dファイルを受け取ったかを記録するために、ブロック
683により、ターゲット・コンピュータの計算機ID
がメモリ媒体677にコピーされる。次に、ブロック6
85および693により、暗号化キー・ファイル653
と計算機IDファイル655がメモリ媒体からターゲッ
ト・コンピュータ707にコピーされる。暗号化キー・
ファイル653は、キー687で鍵がかけられた暗号解
読操作689に入力として供給される。暗号解読操作6
89は、ブロック669の暗号化操作を取り消すもの
で、キー・ファイル653のクリア・テキスト・バージ
ョンを出力として提供する。同様に、計算機IDファイ
ル655は、キー695で鍵がかけられた暗号解読操作
697に入力として供給される。暗号解読操作697
は、暗号化操作675の暗号化を取り消すもので、計算
機IDファイル655のクリア・テキストを出力として
提供する。ブロック691により、ソース・コンピュー
タ651の計算機IDが取り出され、キー・ファイル6
53のクリア・テキストとしてメモリ内に記録される。
次に、キー・ファイル653のクリア・テキストが暗号
化操作699に入力として供給される。暗号化操作69
9は、DES操作などの従来の暗号化操作であり、ター
ゲット・コンピュータ707用の計算機IDまたは修正
済み計算機IDなどのターゲット・コンピュータ固有の
属性で鍵がかけられている。計算機IDファイル655
のクリア・テキストは、暗号化操作703に入力として
供給される。この暗号化操作703は、DES暗号化操
作などの従来の暗号化操作であり、ターゲット・コンピ
ュータ707の計算機IDまたは修正済み計算機IDな
どの固有のターゲット・コンピュータ属性705で鍵が
かけられている。暗号化操作699の出力は、製品キー
(ソース・コンピュータ651のキー・ファイル653
の一時製品キーと同じ)、顧客番号(ソース・コンピュ
ータ651のキー・ファイル653の顧客番号と同
じ)、クリア計算機ID(ターゲット・コンピュータ7
07用の計算機IDであって、ソース・コンピュータ6
51の計算機IDではない)、試用期間データ(ソース
・コンピュータ651のキー・ファイル653の試用期
間データと同じ)、およびソース・コンピュータ651
の計算機IDのIDを含む暗号化キー・ファイル709
を生成する。暗号化操作703の出力は計算機IDファ
イル711を定義するもので、このファイルは、ターゲ
ット・コンピュータ707の計算機ID(ソース・コン
ピュータ651の計算機IDではない)と試用期間デー
タ(ソース・コンピュータ651の計算機IDファイル
655の試用期間データと同じ)とを含む。
図である。メモリ媒体677(図32)はソース・コン
ピュータ651(図32)から物理的に取り外され、コ
ンピュータ707(図33)に物理的に運搬される。あ
るいは、分散データ処理システムではこの転送は、メモ
リ媒体677の物理的な取外しを伴わずに行われる場合
もある。ここで図33に関して説明すると、どの特定の
ターゲット・コンピュータがキー・ファイルと計算機I
Dファイルを受け取ったかを記録するために、ブロック
683により、ターゲット・コンピュータの計算機ID
がメモリ媒体677にコピーされる。次に、ブロック6
85および693により、暗号化キー・ファイル653
と計算機IDファイル655がメモリ媒体からターゲッ
ト・コンピュータ707にコピーされる。暗号化キー・
ファイル653は、キー687で鍵がかけられた暗号解
読操作689に入力として供給される。暗号解読操作6
89は、ブロック669の暗号化操作を取り消すもの
で、キー・ファイル653のクリア・テキスト・バージ
ョンを出力として提供する。同様に、計算機IDファイ
ル655は、キー695で鍵がかけられた暗号解読操作
697に入力として供給される。暗号解読操作697
は、暗号化操作675の暗号化を取り消すもので、計算
機IDファイル655のクリア・テキストを出力として
提供する。ブロック691により、ソース・コンピュー
タ651の計算機IDが取り出され、キー・ファイル6
53のクリア・テキストとしてメモリ内に記録される。
次に、キー・ファイル653のクリア・テキストが暗号
化操作699に入力として供給される。暗号化操作69
9は、DES操作などの従来の暗号化操作であり、ター
ゲット・コンピュータ707用の計算機IDまたは修正
済み計算機IDなどのターゲット・コンピュータ固有の
属性で鍵がかけられている。計算機IDファイル655
のクリア・テキストは、暗号化操作703に入力として
供給される。この暗号化操作703は、DES暗号化操
作などの従来の暗号化操作であり、ターゲット・コンピ
ュータ707の計算機IDまたは修正済み計算機IDな
どの固有のターゲット・コンピュータ属性705で鍵が
かけられている。暗号化操作699の出力は、製品キー
(ソース・コンピュータ651のキー・ファイル653
の一時製品キーと同じ)、顧客番号(ソース・コンピュ
ータ651のキー・ファイル653の顧客番号と同
じ)、クリア計算機ID(ターゲット・コンピュータ7
07用の計算機IDであって、ソース・コンピュータ6
51の計算機IDではない)、試用期間データ(ソース
・コンピュータ651のキー・ファイル653の試用期
間データと同じ)、およびソース・コンピュータ651
の計算機IDのIDを含む暗号化キー・ファイル709
を生成する。暗号化操作703の出力は計算機IDファ
イル711を定義するもので、このファイルは、ターゲ
ット・コンピュータ707の計算機ID(ソース・コン
ピュータ651の計算機IDではない)と試用期間デー
タ(ソース・コンピュータ651の計算機IDファイル
655の試用期間データと同じ)とを含む。
【0065】図34および図35は、図32および図3
3に示したインポート操作とエクスポート操作の代替図
で、本発明の重要な特徴の一部を強調するものである。
図示の通り、ソース・コンピュータ801は、ソース・
コンピュータ801に固有のシステム属性キーで暗号化
された計算機IDファイル803を含む。この計算機I
Dファイルは、計算機IDファイル番号ならびに各保護
ソフトウェア製品ごとに許されるエクスポートの回数を
示すカウントと、使用されたエクスポートの総数を示す
カウントとを含む。たとえば、最初のエクスポート操作
で"1:10"というカウントが伝達された場合、許可さ
れた10回のエクスポート操作のうちの1回が行われた
ことを意味する。次のエクスポート操作では、カウンタ
は"2:10"に増加し、許可された10回のエクスポー
ト操作のうち2回が行われたことを意味する。特定のエ
クスポート操作の受取り側であることを示すために、エ
クスポート操作の結果を受け取る各ターゲット・コンピ
ュータには、この特定のカウンタ値でタグが付けられ
る。たとえば、1つのソース・コンピュータ・システム
が"1:10"というカウンタ値を有する場合、このシス
テムが許可された10回のエクスポート操作のうちの最
初のエクスポート操作の受取り側であることを意味す
る。さらに別のターゲット・コンピュータが"7:10"
というカウンタ値を有する場合は、この特定のターゲッ
ト・コンピュータが許可された10回のエクスポート操
作のうちの7回目のエクスポート操作を受け取ったこと
を意味する。このようにして、ターゲット・コンピュー
タは使用したエクスポート操作の総数のカウントを保管
するのに対し、それぞれのソース・コンピュータは、許
可された複数のエクスポート操作のうちの特定の操作に
よる計算機IDファイルとキー・ファイルの受取り側を
識別するための異なるカウンタ値を有する。
3に示したインポート操作とエクスポート操作の代替図
で、本発明の重要な特徴の一部を強調するものである。
図示の通り、ソース・コンピュータ801は、ソース・
コンピュータ801に固有のシステム属性キーで暗号化
された計算機IDファイル803を含む。この計算機I
Dファイルは、計算機IDファイル番号ならびに各保護
ソフトウェア製品ごとに許されるエクスポートの回数を
示すカウントと、使用されたエクスポートの総数を示す
カウントとを含む。たとえば、最初のエクスポート操作
で"1:10"というカウントが伝達された場合、許可さ
れた10回のエクスポート操作のうちの1回が行われた
ことを意味する。次のエクスポート操作では、カウンタ
は"2:10"に増加し、許可された10回のエクスポー
ト操作のうち2回が行われたことを意味する。特定のエ
クスポート操作の受取り側であることを示すために、エ
クスポート操作の結果を受け取る各ターゲット・コンピ
ュータには、この特定のカウンタ値でタグが付けられ
る。たとえば、1つのソース・コンピュータ・システム
が"1:10"というカウンタ値を有する場合、このシス
テムが許可された10回のエクスポート操作のうちの最
初のエクスポート操作の受取り側であることを意味す
る。さらに別のターゲット・コンピュータが"7:10"
というカウンタ値を有する場合は、この特定のターゲッ
ト・コンピュータが許可された10回のエクスポート操
作のうちの7回目のエクスポート操作を受け取ったこと
を意味する。このようにして、ターゲット・コンピュー
タは使用したエクスポート操作の総数のカウントを保管
するのに対し、それぞれのソース・コンピュータは、許
可された複数のエクスポート操作のうちの特定の操作に
よる計算機IDファイルとキー・ファイルの受取り側を
識別するための異なるカウンタ値を有する。
【0066】ソース・コンピュータ801では、ソース
・コンピュータ801に固有のシステム属性をキーとし
て使用する暗号化アルゴリズムによって計算機IDファ
イル803とキー・ファイル805が暗号化されるが、
計算機IDファイル803とキー・ファイル805がエ
クスポート・キー・ディスケット807などのメモリ媒
体に転送されると、ディスケットの製造番号などの固有
のディスケット属性を暗号化キーとして使用する従来の
暗号化操作で計算機IDファイル809とキー・ファイ
ル811が暗号化されることに留意されたい。これによ
り、計算機IDファイル809またはキー・ファイル8
11あるいはその両方の内容が別のディスケットまたは
他のメモリ媒体にコピーされ、ソフトウェア製品への無
許可アクセスを獲得するのに利用される可能性が最小限
に抑えられる。その理由は、計算機IDファイル809
とキー・ファイル811の内容を効果的にターゲット・
コンピュータに転送するために、ターゲット・コンピュ
ータはエクスポート・キー・ディスケット807から固
有のディスケット属性を読み取って使用できなければな
らないためである。計算機IDファイル809とキー・
ファイル811がコピーされているディスケットでこれ
らのファイルがターゲット・コンピュータに提供された
場合のみ、効果的な転送を行うことができる。暗号解読
操作を正常に実施するにはターゲット・コンピュータは
エクスポート・キー・ディスケット807の固有の属性
(ディスケット製造番号など)を必要とするため、潜在
的ターゲット・コンピュータに対してエクスポート・キ
ー・ディスケット807以外のディスケットで計算機I
Dファイル809とキー・ファイル811を提供する
と、無意味な情報が転送されてしまう。
・コンピュータ801に固有のシステム属性をキーとし
て使用する暗号化アルゴリズムによって計算機IDファ
イル803とキー・ファイル805が暗号化されるが、
計算機IDファイル803とキー・ファイル805がエ
クスポート・キー・ディスケット807などのメモリ媒
体に転送されると、ディスケットの製造番号などの固有
のディスケット属性を暗号化キーとして使用する従来の
暗号化操作で計算機IDファイル809とキー・ファイ
ル811が暗号化されることに留意されたい。これによ
り、計算機IDファイル809またはキー・ファイル8
11あるいはその両方の内容が別のディスケットまたは
他のメモリ媒体にコピーされ、ソフトウェア製品への無
許可アクセスを獲得するのに利用される可能性が最小限
に抑えられる。その理由は、計算機IDファイル809
とキー・ファイル811の内容を効果的にターゲット・
コンピュータに転送するために、ターゲット・コンピュ
ータはエクスポート・キー・ディスケット807から固
有のディスケット属性を読み取って使用できなければな
らないためである。計算機IDファイル809とキー・
ファイル811がコピーされているディスケットでこれ
らのファイルがターゲット・コンピュータに提供された
場合のみ、効果的な転送を行うことができる。暗号解読
操作を正常に実施するにはターゲット・コンピュータは
エクスポート・キー・ディスケット807の固有の属性
(ディスケット製造番号など)を必要とするため、潜在
的ターゲット・コンピュータに対してエクスポート・キ
ー・ディスケット807以外のディスケットで計算機I
Dファイル809とキー・ファイル811を提供する
と、無意味な情報が転送されてしまう。
【0067】図35に示すように、エクスポート・キー
・ディスケット807はターゲット・コンピュータ81
3に提供される。当然のことながら、計算機IDファイ
ル809とキー・ファイル811は暗号化形式になって
いる。エクスポート・キー・ディスケット807からタ
ーゲット・コンピュータ813に転送する場合、計算機
IDファイル809の内容は、ターゲット・コンピュー
タ813の計算機IDと、使用したインポート操作のカ
ウントで更新される。ターゲット・コンピュータ813
への転送を実施する場合、ターゲット・コンピュータ8
13用の計算機IDなどの複数の項目と、顧客情報、な
らびにソース・コンピュータ801の計算機ID番号の
リストを含む計算機IDファイル815が作成される。
計算機IDファイル815とキー・ファイル817はど
ちらも、ターゲット・コンピュータ813の固有の属性
をキーとして使用する従来の暗号化操作を使用して暗号
化される。これにより、計算機IDファイル815およ
びキー・ファイル817が特定のターゲット・コンピュ
ータ813に結びつけられる。
・ディスケット807はターゲット・コンピュータ81
3に提供される。当然のことながら、計算機IDファイ
ル809とキー・ファイル811は暗号化形式になって
いる。エクスポート・キー・ディスケット807からタ
ーゲット・コンピュータ813に転送する場合、計算機
IDファイル809の内容は、ターゲット・コンピュー
タ813の計算機IDと、使用したインポート操作のカ
ウントで更新される。ターゲット・コンピュータ813
への転送を実施する場合、ターゲット・コンピュータ8
13用の計算機IDなどの複数の項目と、顧客情報、な
らびにソース・コンピュータ801の計算機ID番号の
リストを含む計算機IDファイル815が作成される。
計算機IDファイル815とキー・ファイル817はど
ちらも、ターゲット・コンピュータ813の固有の属性
をキーとして使用する従来の暗号化操作を使用して暗号
化される。これにより、計算機IDファイル815およ
びキー・ファイル817が特定のターゲット・コンピュ
ータ813に結びつけられる。
【0068】エクスポート/インポート・カウンタを使
用して、許可されたエクスポート/インポート操作の総
数と使用したエクスポート/インポート操作の総数を追
跡することで、本発明は、試用期間中にソフトウェア製
品の配布を追跡するのに使用可能な監査証跡(audit tr
ail)を作成する。各ソース・コンピュータは、実行さ
れたエクスポート操作の総数の記録を保有する。また、
各ソース・コンピュータは、どの特定のエクスポート/
インポート操作が1つまたは複数の保護ソフトウェア製
品をターゲット・コンピュータに転送するのに使用され
たかについての記録も保有する。この転送を実施するの
に使用するメモリ媒体(1枚のディスケットまたは1群
のディスケットなど)は、すべてのエクスポート/イン
ポート操作に使用されたソース・コンピュータとターゲ
ット・コンピュータの両方の計算機ID番号の永続的記
録を保有する。
用して、許可されたエクスポート/インポート操作の総
数と使用したエクスポート/インポート操作の総数を追
跡することで、本発明は、試用期間中にソフトウェア製
品の配布を追跡するのに使用可能な監査証跡(audit tr
ail)を作成する。各ソース・コンピュータは、実行さ
れたエクスポート操作の総数の記録を保有する。また、
各ソース・コンピュータは、どの特定のエクスポート/
インポート操作が1つまたは複数の保護ソフトウェア製
品をターゲット・コンピュータに転送するのに使用され
たかについての記録も保有する。この転送を実施するの
に使用するメモリ媒体(1枚のディスケットまたは1群
のディスケットなど)は、すべてのエクスポート/イン
ポート操作に使用されたソース・コンピュータとターゲ
ット・コンピュータの両方の計算機ID番号の永続的記
録を保有する。
【0069】エクスポート操作とインポート操作を実施
するための手順により、保護ソフトウェア製品が不必要
な危険に曝されることがなくなる。計算機IDファイル
とキー・ファイルがソース・コンピュータからターゲッ
ト・コンピュータに渡されると、エクスポート・ディス
ケットをコピーしたり、不当にキーを配布するための手
段としてその内容を掲示板に掲載する行為を防止または
禁止するエクスポート・ディスケットの固有の属性によ
って、これらのファイルが暗号化される。インポート操
作時は、ソース・コンピュータの安全保護と一致するよ
うにソフトウェア製品が維持されることを保証するた
め、計算機IDファイルとキー・ファイルがターゲット
・コンピュータに固有のシステム属性で暗号化される。
ただし、ソフトウェア製品そのものはターゲット・コン
ピュータに固有の属性で暗号化される。その結果、キー
の不当コピーや掲載が防止される。
するための手順により、保護ソフトウェア製品が不必要
な危険に曝されることがなくなる。計算機IDファイル
とキー・ファイルがソース・コンピュータからターゲッ
ト・コンピュータに渡されると、エクスポート・ディス
ケットをコピーしたり、不当にキーを配布するための手
段としてその内容を掲示板に掲載する行為を防止または
禁止するエクスポート・ディスケットの固有の属性によ
って、これらのファイルが暗号化される。インポート操
作時は、ソース・コンピュータの安全保護と一致するよ
うにソフトウェア製品が維持されることを保証するた
め、計算機IDファイルとキー・ファイルがターゲット
・コンピュータに固有のシステム属性で暗号化される。
ただし、ソフトウェア製品そのものはターゲット・コン
ピュータに固有の属性で暗号化される。その結果、キー
の不当コピーや掲載が防止される。
【0070】エクスポート/インポート機能の第二の実
施例は、図36および図37にブロック図形式で示す。
大まかに概説すると、まず、メモリ媒体1677を使用
してターゲット・コンピュータ1707とやりとりし、
ターゲット・コンピュータ1707に固有で、好ましく
はターゲット・コンピュータ1707の1つまたは複数
の固有のシステム属性から導出される転送キーをターゲ
ット・コンピュータ1707から獲得する。この転送キ
ーは、ターゲット・コンピュータ1707用の計算機I
Dの修正版でもよい。次に、メモリ媒体1677を使用
してエクスポート動作モードでソース・コンピュータ1
651とやりとりする。そのモードではキー・ファイル
1653と計算機IDファイル1655がまず暗号解読
され、その後、転送キーを使用して暗号化される。
施例は、図36および図37にブロック図形式で示す。
大まかに概説すると、まず、メモリ媒体1677を使用
してターゲット・コンピュータ1707とやりとりし、
ターゲット・コンピュータ1707に固有で、好ましく
はターゲット・コンピュータ1707の1つまたは複数
の固有のシステム属性から導出される転送キーをターゲ
ット・コンピュータ1707から獲得する。この転送キ
ーは、ターゲット・コンピュータ1707用の計算機I
Dの修正版でもよい。次に、メモリ媒体1677を使用
してエクスポート動作モードでソース・コンピュータ1
651とやりとりする。そのモードではキー・ファイル
1653と計算機IDファイル1655がまず暗号解読
され、その後、転送キーを使用して暗号化される。
【0071】図36は、本発明の好ましい実施例による
エクスポート操作を示すブロック図である。図示の通
り、ソース・コンピュータ1651は、キー・ファイル
1653と計算機IDファイル1655とを含む。キー
・ファイル1653は、製品キーと、顧客キーと、ソー
ス・コンピュータ1651用の計算機IDのクリア・テ
キストと、試用期間データ(試用期間を定義するクロッ
クまたはカウンタあるいはその両方など)と、特定の保
護ソフトウェア製品について許可されたエクスポート操
作の最大数を定義し、実施されたエクスポート操作の総
数を追跡するという二重機能を実行するエクスポート・
カウンタとを含む。計算機IDファイルは、計算機ID
番号と試用期間データ(試用期間を定義するクロックま
たはカウンタあるいはその両方など)とを含む。キー・
ファイル1653と計算機IDファイル1655はどち
らも従来の暗号化操作(DESアルゴリズムなど)によ
って暗号化されるが、この操作はソース・コンピュータ
1651の固有のシステム属性から導出されるキーで鍵
がかけられている。エクスポート操作の開始時に、キー
・ファイル1653と計算機IDファイル1655が暗
号解読される。キー・ファイル1653は、キー165
9で鍵がかけられた暗号解読操作1657に入力として
供給される。同様に、計算機IDファイル1655は、
キー1661で鍵がかけられた暗号解読操作1663に
入力として供給される。暗号解読操作1657および1
663は、キー・ファイル1653と計算機IDファイ
ル1655のクリア・テキスト・バージョンを生成す
る。クリア・テキストが得られると、キー・ファイル1
653内に収容されているエクスポート・カウンタがブ
ロック1661により修正される。たとえば、この操作
が、許される10回の操作のうちの7回目のエクスポー
ト操作であれば、カウンタは"7:10"と表示するはず
である。キー・ファイル1653のクリア・テキスト・
バージョンは暗号化操作1669に入力として供給され
る。この暗号化操作1669は、従来のいずれの暗号化
操作(DESアルゴリズムなど)でもよく、前に得られ
た転送キー1665で鍵がかけられる。計算機IDファ
イル1655のクリア・テキストについても同じ操作が
行われる。すなわち、転送キー1671が暗号化操作1
675のキーとして使用される。この暗号化操作は、D
ES操作などの従来の暗号化操作で構成することができ
る。最後に、暗号化操作1669および1675の出力
がコピー操作1679および1681に入力として供給
され、暗号化キー・ファイル1653と計算機IDファ
イル1655がメモリ媒体1677にコピーされる。
エクスポート操作を示すブロック図である。図示の通
り、ソース・コンピュータ1651は、キー・ファイル
1653と計算機IDファイル1655とを含む。キー
・ファイル1653は、製品キーと、顧客キーと、ソー
ス・コンピュータ1651用の計算機IDのクリア・テ
キストと、試用期間データ(試用期間を定義するクロッ
クまたはカウンタあるいはその両方など)と、特定の保
護ソフトウェア製品について許可されたエクスポート操
作の最大数を定義し、実施されたエクスポート操作の総
数を追跡するという二重機能を実行するエクスポート・
カウンタとを含む。計算機IDファイルは、計算機ID
番号と試用期間データ(試用期間を定義するクロックま
たはカウンタあるいはその両方など)とを含む。キー・
ファイル1653と計算機IDファイル1655はどち
らも従来の暗号化操作(DESアルゴリズムなど)によ
って暗号化されるが、この操作はソース・コンピュータ
1651の固有のシステム属性から導出されるキーで鍵
がかけられている。エクスポート操作の開始時に、キー
・ファイル1653と計算機IDファイル1655が暗
号解読される。キー・ファイル1653は、キー165
9で鍵がかけられた暗号解読操作1657に入力として
供給される。同様に、計算機IDファイル1655は、
キー1661で鍵がかけられた暗号解読操作1663に
入力として供給される。暗号解読操作1657および1
663は、キー・ファイル1653と計算機IDファイ
ル1655のクリア・テキスト・バージョンを生成す
る。クリア・テキストが得られると、キー・ファイル1
653内に収容されているエクスポート・カウンタがブ
ロック1661により修正される。たとえば、この操作
が、許される10回の操作のうちの7回目のエクスポー
ト操作であれば、カウンタは"7:10"と表示するはず
である。キー・ファイル1653のクリア・テキスト・
バージョンは暗号化操作1669に入力として供給され
る。この暗号化操作1669は、従来のいずれの暗号化
操作(DESアルゴリズムなど)でもよく、前に得られ
た転送キー1665で鍵がかけられる。計算機IDファ
イル1655のクリア・テキストについても同じ操作が
行われる。すなわち、転送キー1671が暗号化操作1
675のキーとして使用される。この暗号化操作は、D
ES操作などの従来の暗号化操作で構成することができ
る。最後に、暗号化操作1669および1675の出力
がコピー操作1679および1681に入力として供給
され、暗号化キー・ファイル1653と計算機IDファ
イル1655がメモリ媒体1677にコピーされる。
【0072】図37は、インポート操作を示すブロック
図である。メモリ媒体1677(図36)はソース・コ
ンピュータ1651(図36)から物理的に取り外さ
れ、コンピュータ1707(図37)に物理的に運搬さ
れる。あるいは、分散データ処理システムではこの転送
は、メモリ媒体1677の物理的な取外しを伴わずに行
われる場合もある。ここで図37に関して説明すると、
どの特定のターゲット・コンピュータがキー・ファイル
と計算機IDファイルを受け取ったかを記録するため
に、ブロック1683により、ターゲット・コンピュー
タの計算機IDがメモリ媒体1677にコピーされる。
次に、ブロック1685および1693により、暗号化
キー・ファイル1653と計算機IDファイル1655
がメモリ媒体からターゲット・コンピュータ1707に
コピーされる。暗号化キー・ファイル1653は、キー
1687で鍵がかけられた暗号解読操作1689に入力
として供給される。暗号解読操作1689は、ブロック
1669の暗号化操作を取り消すもので、キー・ファイ
ル1653のクリア・テキスト・バージョンを出力とし
て提供する。同様に、計算機IDファイル1655は、
キー1695で鍵がかけられた暗号解読操作1697に
入力として供給される。暗号解読操作1697は、暗号
化操作1675の暗号化を取り消すもので、計算機ID
ファイル1655のクリア・テキストを出力として提供
する。ブロック1691により、ソース・コンピュータ
1651の計算機IDが取り出され、キー・ファイル1
653のクリア・テキストとしてメモリ内に記録され
る。次に、キー・ファイル1653のクリア・テキスト
が暗号化操作1699に入力として供給される。暗号化
操作1699は、DES操作などの従来の暗号化操作で
あり、ターゲット・コンピュータ1707用の計算機I
Dまたは修正済み計算機IDなどのターゲット・コンピ
ュータ固有の属性で鍵がかけられている。計算機IDフ
ァイル1655のクリア・テキストは、暗号化操作17
03に入力として供給される。この暗号化操作1703
は、DES暗号化操作などの従来の暗号化操作であり、
ターゲット・コンピュータ1707の計算機IDまたは
修正済み計算機IDなどの固有のターゲット・コンピュ
ータ属性1705で鍵がかけられている。暗号化操作1
699の出力は、製品キー(ソース・コンピュータ16
51のキー・ファイル1653の一時製品キーと同
じ)、顧客番号(ソース・コンピュータ1651のキー
・ファイル1653の顧客番号と同じ)、クリア計算機
ID(ターゲット・コンピュータ1707用の計算機I
Dであって、ソース・コンピュータ1651の計算機I
Dではない)、試用期間データ(ソース・コンピュータ
1651のキー・ファイル1653の試用期間データと
同じ)、およびソース・コンピュータ1651の計算機
IDのIDを含む暗号化キー・ファイル1709を生成
する。暗号化操作1703の出力は計算機IDファイル
1711を定義するもので、このファイルは、ターゲッ
ト・コンピュータ1707の計算機ID(ソース・コン
ピュータ1651の計算機IDではない)と試用期間デ
ータ(ソース・コンピュータ1651の計算機IDファ
イル1655の試用期間データと同じ)とを含む。
図である。メモリ媒体1677(図36)はソース・コ
ンピュータ1651(図36)から物理的に取り外さ
れ、コンピュータ1707(図37)に物理的に運搬さ
れる。あるいは、分散データ処理システムではこの転送
は、メモリ媒体1677の物理的な取外しを伴わずに行
われる場合もある。ここで図37に関して説明すると、
どの特定のターゲット・コンピュータがキー・ファイル
と計算機IDファイルを受け取ったかを記録するため
に、ブロック1683により、ターゲット・コンピュー
タの計算機IDがメモリ媒体1677にコピーされる。
次に、ブロック1685および1693により、暗号化
キー・ファイル1653と計算機IDファイル1655
がメモリ媒体からターゲット・コンピュータ1707に
コピーされる。暗号化キー・ファイル1653は、キー
1687で鍵がかけられた暗号解読操作1689に入力
として供給される。暗号解読操作1689は、ブロック
1669の暗号化操作を取り消すもので、キー・ファイ
ル1653のクリア・テキスト・バージョンを出力とし
て提供する。同様に、計算機IDファイル1655は、
キー1695で鍵がかけられた暗号解読操作1697に
入力として供給される。暗号解読操作1697は、暗号
化操作1675の暗号化を取り消すもので、計算機ID
ファイル1655のクリア・テキストを出力として提供
する。ブロック1691により、ソース・コンピュータ
1651の計算機IDが取り出され、キー・ファイル1
653のクリア・テキストとしてメモリ内に記録され
る。次に、キー・ファイル1653のクリア・テキスト
が暗号化操作1699に入力として供給される。暗号化
操作1699は、DES操作などの従来の暗号化操作で
あり、ターゲット・コンピュータ1707用の計算機I
Dまたは修正済み計算機IDなどのターゲット・コンピ
ュータ固有の属性で鍵がかけられている。計算機IDフ
ァイル1655のクリア・テキストは、暗号化操作17
03に入力として供給される。この暗号化操作1703
は、DES暗号化操作などの従来の暗号化操作であり、
ターゲット・コンピュータ1707の計算機IDまたは
修正済み計算機IDなどの固有のターゲット・コンピュ
ータ属性1705で鍵がかけられている。暗号化操作1
699の出力は、製品キー(ソース・コンピュータ16
51のキー・ファイル1653の一時製品キーと同
じ)、顧客番号(ソース・コンピュータ1651のキー
・ファイル1653の顧客番号と同じ)、クリア計算機
ID(ターゲット・コンピュータ1707用の計算機I
Dであって、ソース・コンピュータ1651の計算機I
Dではない)、試用期間データ(ソース・コンピュータ
1651のキー・ファイル1653の試用期間データと
同じ)、およびソース・コンピュータ1651の計算機
IDのIDを含む暗号化キー・ファイル1709を生成
する。暗号化操作1703の出力は計算機IDファイル
1711を定義するもので、このファイルは、ターゲッ
ト・コンピュータ1707の計算機ID(ソース・コン
ピュータ1651の計算機IDではない)と試用期間デ
ータ(ソース・コンピュータ1651の計算機IDファ
イル1655の試用期間データと同じ)とを含む。
【0073】まとめとして、本発明の構成に関して以下
の事項を開示する。
の事項を開示する。
【0074】(1)(a)ソース・コンピュータ側で、
少なくとも一部は少なくとも1つの固有のソース・コン
ピュータ・システム属性から得たキーで暗号化された少
なくとも1つのファイルを提供するステップと、(b)
転送メモリ媒体を提供するステップと、(c)前記ソー
ス・コンピュータ側で、前記少なくとも1つのファイル
を暗号解読するステップと、(d)前記ソース・コンピ
ュータ側で、少なくとも1つの固有の転送メモリ媒体属
性から得たキーで前記少なくとも1つのファイルを暗号
化するステップと、(e)前記ソース・コンピュータ側
で、前記暗号化ファイルを前記転送メモリ媒体にコピー
するステップと、(f)ターゲット・コンピュータ側
で、前記少なくとも1つのファイルを暗号解読するステ
ップと、(g)前記ターゲット・コンピュータ側で、少
なくとも一部は少なくとも1つのターゲット・コンピュ
ータ・システム属性から得たキーで前記少なくとも1つ
のファイルを暗号化するステップとを含む、データ処理
システム間で暗号化ファイルを渡す方法。 (2)(い)許される転送操作の最大数を定義するエク
スポート・カウンタを前記ソース・コンピュータ内に設
けるステップと、(ろ)各転送操作ごとに前記エクスポ
ート・カウンタを起動するステップとを含む、上記
(1)に記載の暗号化ファイルを渡す方法。 (3)特定のターゲット・コンピュータに対して、前記
許される転送操作のそれぞれを識別するステップを含
む、上記(2)に記載の暗号化ファイルを渡す方法。 (4)各ターゲット・コンピュータから識別情報を獲得
することにより、前記転送メモリ媒体を必要とするすべ
ての転送操作の発生を記録するステップを含む、上記
(1)に記載の暗号化ファイルを渡す方法。 (5)(a)ソース・コンピュータ側で、少なくとも一
部は少なくとも1つの固有のソース・コンピュータ・シ
ステム属性から得たキーで暗号化された少なくとも1つ
のファイルを提供するステップと、(b)転送メモリ媒
体を提供するステップと、(c)特定の転送操作を開始
するステップと、(d)前記ソース・コンピュータ側
で、前記少なくとも1つのファイルを暗号解読するステ
ップと、(e)前記特定の転送操作を明確に識別する転
送IDを前記少なくとも1つのファイルに含めるステッ
プと、(f)前記ソース・コンピュータ側で、少なくと
も1つの固有の転送メモリ媒体属性から得たキーで前記
少なくとも1つのファイルを暗号化するステップと、
(g)前記ソース・コンピュータ側で、前記暗号化ファ
イルを前記転送メモリ媒体にコピーするステップと、
(h)ターゲット・コンピュータ側で、前記少なくとも
1つのファイルを暗号解読するステップと、(i)前記
ターゲット・コンピュータ側で、少なくとも一部は少な
くとも1つのターゲット・コンピュータ・システム属性
から得たキーで前記少なくとも1つのファイルを暗号化
するステップとを含む、データ処理システム間で暗号化
ファイルを渡す方法。 (6)前記ターゲット・コンピュータ側で、固有のター
ゲット・コンピュータIDを前記転送メモリ媒体に渡す
ステップを含む、上記(5)に記載の暗号化ファイルを
渡す方法。 (7)前記ターゲット・コンピュータ側で、前記ソース
・コンピュータのIDを提供するために前記少なくとも
1つのファイルを更新するステップを含む、上記(5)
に記載の暗号化ファイルを渡す方法。 (8)(a)少なくとも一部は少なくとも1つの固有の
ソース・コンピュータ・システム属性から得たキーで暗
号化された、ソース・コンピュータ内の少なくとも1つ
のファイルと、(b)固有の属性を有する取外し可能な
転送メモリ媒体と、(c)前記少なくとも1つのファイ
ルを暗号解読し、前記固有の属性から得たキーで前記少
なくとも1つのファイルを暗号化し、前記暗号化ファイ
ルを前記転送メモリ媒体にコピーするエクスポート・プ
ログラムと、(d)ターゲット・コンピュータ側で、前
記少なくとも1つのファイルを暗号解読し、少なくとも
一部は少なくとも1つのターゲット・コンピュータ・シ
ステム属性から得たキーで前記少なくとも1つのファイ
ルを暗号化するインポート・プログラムとを含む、デー
タ処理システム間で暗号化ファイルを渡す装置。 (9)前記ソース・コンピュータの前記エクスポート・
プログラム内に設けられ、許される転送操作の最大数を
定義し、各転送操作ごとにカウントするエクスポート・
カウンタを含む、上記(8)に記載の暗号化ファイルを
渡す装置。 (10)(a)ソース・コンピュータ側で、少なくとも
一部は少なくとも1つの固有のソース・コンピュータ・
システム属性から得たキーで暗号化された少なくとも1
つのファイルを提供するステップと、(b)転送メモリ
媒体を提供するステップと、(c)ターゲット・コンピ
ュータ側で、前記ターゲット・コンピュータに固有の転
送暗号化キーを前記転送メモリ媒体にコピーするステッ
プと、(d)前記ソース・コンピュータ側で、前記少な
くとも1つのファイルを暗号解読するステップと、
(e)前記ソース・コンピュータ側で、前記転送暗号化
キーで前記少なくとも1つのファイルを暗号化するステ
ップと、(f)前記ソース・コンピュータ側で、前記暗
号化ファイルを前記転送メモリ媒体にコピーするステッ
プと、(g)ターゲット・コンピュータ側で、前記少な
くとも1つのファイルを暗号解読するステップと、
(h)前記ターゲット・コンピュータ側で、少なくとも
一部は少なくとも1つのターゲット・コンピュータ・シ
ステム属性から得たキーで前記少なくとも1つのファイ
ルを暗号化するステップとを含む、データ処理システム
間で暗号化ファイルを渡す方法。 (11)許される転送操作の最大数を定義するエクスポ
ート・カウンタを前記ソース・コンピュータ内に設ける
ステップと、各転送操作ごとに前記エクスポート・カウ
ンタを起動するステップとを含む、上記(10)に記載
の暗号化ファイルを渡す方法。 (12)特定のターゲット・コンピュータに対して、前
記許される転送操作のそれぞれを識別するステップを含
む、上記(11)に記載の暗号化ファイルを渡す方法。 (13)各ターゲット・コンピュータから識別情報を獲
得することにより、前記転送メモリ媒体を必要とするす
べての転送操作の発生を記録するステップを含む、上記
(10)に記載の暗号化ファイルを渡す方法。
少なくとも一部は少なくとも1つの固有のソース・コン
ピュータ・システム属性から得たキーで暗号化された少
なくとも1つのファイルを提供するステップと、(b)
転送メモリ媒体を提供するステップと、(c)前記ソー
ス・コンピュータ側で、前記少なくとも1つのファイル
を暗号解読するステップと、(d)前記ソース・コンピ
ュータ側で、少なくとも1つの固有の転送メモリ媒体属
性から得たキーで前記少なくとも1つのファイルを暗号
化するステップと、(e)前記ソース・コンピュータ側
で、前記暗号化ファイルを前記転送メモリ媒体にコピー
するステップと、(f)ターゲット・コンピュータ側
で、前記少なくとも1つのファイルを暗号解読するステ
ップと、(g)前記ターゲット・コンピュータ側で、少
なくとも一部は少なくとも1つのターゲット・コンピュ
ータ・システム属性から得たキーで前記少なくとも1つ
のファイルを暗号化するステップとを含む、データ処理
システム間で暗号化ファイルを渡す方法。 (2)(い)許される転送操作の最大数を定義するエク
スポート・カウンタを前記ソース・コンピュータ内に設
けるステップと、(ろ)各転送操作ごとに前記エクスポ
ート・カウンタを起動するステップとを含む、上記
(1)に記載の暗号化ファイルを渡す方法。 (3)特定のターゲット・コンピュータに対して、前記
許される転送操作のそれぞれを識別するステップを含
む、上記(2)に記載の暗号化ファイルを渡す方法。 (4)各ターゲット・コンピュータから識別情報を獲得
することにより、前記転送メモリ媒体を必要とするすべ
ての転送操作の発生を記録するステップを含む、上記
(1)に記載の暗号化ファイルを渡す方法。 (5)(a)ソース・コンピュータ側で、少なくとも一
部は少なくとも1つの固有のソース・コンピュータ・シ
ステム属性から得たキーで暗号化された少なくとも1つ
のファイルを提供するステップと、(b)転送メモリ媒
体を提供するステップと、(c)特定の転送操作を開始
するステップと、(d)前記ソース・コンピュータ側
で、前記少なくとも1つのファイルを暗号解読するステ
ップと、(e)前記特定の転送操作を明確に識別する転
送IDを前記少なくとも1つのファイルに含めるステッ
プと、(f)前記ソース・コンピュータ側で、少なくと
も1つの固有の転送メモリ媒体属性から得たキーで前記
少なくとも1つのファイルを暗号化するステップと、
(g)前記ソース・コンピュータ側で、前記暗号化ファ
イルを前記転送メモリ媒体にコピーするステップと、
(h)ターゲット・コンピュータ側で、前記少なくとも
1つのファイルを暗号解読するステップと、(i)前記
ターゲット・コンピュータ側で、少なくとも一部は少な
くとも1つのターゲット・コンピュータ・システム属性
から得たキーで前記少なくとも1つのファイルを暗号化
するステップとを含む、データ処理システム間で暗号化
ファイルを渡す方法。 (6)前記ターゲット・コンピュータ側で、固有のター
ゲット・コンピュータIDを前記転送メモリ媒体に渡す
ステップを含む、上記(5)に記載の暗号化ファイルを
渡す方法。 (7)前記ターゲット・コンピュータ側で、前記ソース
・コンピュータのIDを提供するために前記少なくとも
1つのファイルを更新するステップを含む、上記(5)
に記載の暗号化ファイルを渡す方法。 (8)(a)少なくとも一部は少なくとも1つの固有の
ソース・コンピュータ・システム属性から得たキーで暗
号化された、ソース・コンピュータ内の少なくとも1つ
のファイルと、(b)固有の属性を有する取外し可能な
転送メモリ媒体と、(c)前記少なくとも1つのファイ
ルを暗号解読し、前記固有の属性から得たキーで前記少
なくとも1つのファイルを暗号化し、前記暗号化ファイ
ルを前記転送メモリ媒体にコピーするエクスポート・プ
ログラムと、(d)ターゲット・コンピュータ側で、前
記少なくとも1つのファイルを暗号解読し、少なくとも
一部は少なくとも1つのターゲット・コンピュータ・シ
ステム属性から得たキーで前記少なくとも1つのファイ
ルを暗号化するインポート・プログラムとを含む、デー
タ処理システム間で暗号化ファイルを渡す装置。 (9)前記ソース・コンピュータの前記エクスポート・
プログラム内に設けられ、許される転送操作の最大数を
定義し、各転送操作ごとにカウントするエクスポート・
カウンタを含む、上記(8)に記載の暗号化ファイルを
渡す装置。 (10)(a)ソース・コンピュータ側で、少なくとも
一部は少なくとも1つの固有のソース・コンピュータ・
システム属性から得たキーで暗号化された少なくとも1
つのファイルを提供するステップと、(b)転送メモリ
媒体を提供するステップと、(c)ターゲット・コンピ
ュータ側で、前記ターゲット・コンピュータに固有の転
送暗号化キーを前記転送メモリ媒体にコピーするステッ
プと、(d)前記ソース・コンピュータ側で、前記少な
くとも1つのファイルを暗号解読するステップと、
(e)前記ソース・コンピュータ側で、前記転送暗号化
キーで前記少なくとも1つのファイルを暗号化するステ
ップと、(f)前記ソース・コンピュータ側で、前記暗
号化ファイルを前記転送メモリ媒体にコピーするステッ
プと、(g)ターゲット・コンピュータ側で、前記少な
くとも1つのファイルを暗号解読するステップと、
(h)前記ターゲット・コンピュータ側で、少なくとも
一部は少なくとも1つのターゲット・コンピュータ・シ
ステム属性から得たキーで前記少なくとも1つのファイ
ルを暗号化するステップとを含む、データ処理システム
間で暗号化ファイルを渡す方法。 (11)許される転送操作の最大数を定義するエクスポ
ート・カウンタを前記ソース・コンピュータ内に設ける
ステップと、各転送操作ごとに前記エクスポート・カウ
ンタを起動するステップとを含む、上記(10)に記載
の暗号化ファイルを渡す方法。 (12)特定のターゲット・コンピュータに対して、前
記許される転送操作のそれぞれを識別するステップを含
む、上記(11)に記載の暗号化ファイルを渡す方法。 (13)各ターゲット・コンピュータから識別情報を獲
得することにより、前記転送メモリ媒体を必要とするす
べての転送操作の発生を記録するステップを含む、上記
(10)に記載の暗号化ファイルを渡す方法。
【0075】
【発明の効果】本発明のソフトウェア配布手法により、
不正使用の問題を回避しつつ、ユーザに一次的な一定の
試用期間を許容する機構が提供される。しかも、当該試
用期間後もソフトウェア製品の使用を望むユーザについ
ては、別途永続キーを付与することによりその目的が達
成される。
不正使用の問題を回避しつつ、ユーザに一次的な一定の
試用期間を許容する機構が提供される。しかも、当該試
用期間後もソフトウェア製品の使用を望むユーザについ
ては、別途永続キーを付与することによりその目的が達
成される。
【図1】ソフトウェア製品の試用期間使用を可能にする
好ましい技法を実施する際に使用可能なスタンドアロン
型データ処理システム、電話、およびコンピュータがア
クセス可能な様々なメモリ媒体を示す絵画表現である。
好ましい技法を実施する際に使用可能なスタンドアロン
型データ処理システム、電話、およびコンピュータがア
クセス可能な様々なメモリ媒体を示す絵画表現である。
【図2】ソフトウェア製品の試用期間使用を可能にする
本発明の技法を使用可能な分散データ処理システムを示
す絵画表現である。
本発明の技法を使用可能な分散データ処理システムを示
す絵画表現である。
【図3】本発明により計算機IDを生成するために使用
可能なデータ処理システムの属性を示すブロック図であ
る。
可能なデータ処理システムの属性を示すブロック図であ
る。
【図4】ソフトウェア・オブジェクトを暗号化するため
のルーチンを示すブロック図である。
のルーチンを示すブロック図である。
【図5】本発明の教示によりソース(ソフトウェア・ベ
ンダ)とユーザ(顧客)との間で行われる情報交換を示
す絵画表現である。
ンダ)とユーザ(顧客)との間で行われる情報交換を示
す絵画表現である。
【図6】本発明によりユーザ・インタフェース・シェル
を構築する際に使用される大まかなステップを示す流れ
図である。
を構築する際に使用される大まかなステップを示す流れ
図である。
【図7】本発明によるベンダと顧客との対話を示す流れ
図である。
図である。
【図8】本発明による試用期間操作を容易にするための
ユーザ・インタフェース画面を示す図である。
ユーザ・インタフェース画面を示す図である。
【図9】本発明による試用期間操作を容易にするための
ユーザ・インタフェース画面を示す図である。
ユーザ・インタフェース画面を示す図である。
【図10】本発明による試用期間操作を容易にするため
のユーザ・インタフェース画面を示す図である。
のユーザ・インタフェース画面を示す図である。
【図11】本発明による試用期間操作を容易にするため
のユーザ・インタフェース画面を示す図である。
のユーザ・インタフェース画面を示す図である。
【図12】一時アクセス・キーを開始するために使用さ
れるユーザ・インタフェースを示す図である。
れるユーザ・インタフェースを示す図である。
【図13】計算機IDを生成する好ましい技法を示すブ
ロック図である。
ロック図である。
【図14】本発明により計算機IDを暗号化するために
使用される暗号化操作を示すブロック図である。
使用される暗号化操作を示すブロック図である。
【図15】本発明により製品キーを生成する好ましい技
法を示すブロック図である。
法を示すブロック図である。
【図16】1つまたは複数のソフトウェア・オブジェク
トの暗号解読に使用可能な実キーを生成するために一時
製品キーを使用する好ましい技法を示すブロック図であ
る。
トの暗号解読に使用可能な実キーを生成するために一時
製品キーを使用する好ましい技法を示すブロック図であ
る。
【図17】図16のブロック図により導出された実キー
の妥当性を検査する好ましい技法を示す図である。
の妥当性を検査する好ましい技法を示す図である。
【図18】図16のブロック図により導出された実キー
の妥当性を検査する好ましい技法を示す図である。
の妥当性を検査する好ましい技法を示す図である。
【図19】一時製品キーを含む情報が入っているキー・
ファイルを暗号化するための好ましいルーチンを示すブ
ロック図である。
ファイルを暗号化するための好ましいルーチンを示すブ
ロック図である。
【図20】本発明により暗号化ファイル内の暗号化ヘッ
ダを処理する好ましい技法を示すブロック図である。
ダを処理する好ましい技法を示すブロック図である。
【図21】暗号化ソフトウェア・オブジェクトの暗号解
読に使用可能な実キーを導出するためにユーザ制御のデ
ータ処理システム内の複数の入力を使用する技法を示す
ブロック図である。
読に使用可能な実キーを導出するためにユーザ制御のデ
ータ処理システム内の複数の入力を使用する技法を示す
ブロック図である。
【図22】図21により導出された実キーを使用する暗
号解読操作を示す図である。
号解読操作を示す図である。
【図23】実キーの妥当性を判定するために使用される
比較操作を示すブロック図である。
比較操作を示すブロック図である。
【図24】妥当性が検査された実キーを使用する暗号解
読操作を示す図である。
読操作を示す図である。
【図25】本発明による暗号化ヘッダの使い方を示す図
である。
である。
【図26】本発明による暗号化ヘッダの使い方を示す図
である。
である。
【図27】本発明による暗号化ヘッダの使い方を示す図
である。
である。
【図28】本発明による暗号化ヘッダの使い方を示す図
である。
である。
【図29】本発明による暗号化ヘッダの使い方を示す図
である。
である。
【図30】暗号化ソフトウェア・オブジェクトに関して
試用期間使用を提供する好ましい技法を示す流れ図であ
る。
試用期間使用を提供する好ましい技法を示す流れ図であ
る。
【図31】暗号化ソフトウェア・オブジェクトに関して
試用期間使用を提供する好ましい技法を示す流れ図であ
る。
試用期間使用を提供する好ましい技法を示す流れ図であ
る。
【図32】分散データ処理システム内で試用期間使用操
作を実行するために使用可能なエクスポート操作を示す
図である。
作を実行するために使用可能なエクスポート操作を示す
図である。
【図33】分散データ処理システム内で試用期間使用操
作を実行するために使用可能なインポート操作を示す図
である。
作を実行するために使用可能なインポート操作を示す図
である。
【図34】図32に示すエクスポート操作の代替図であ
る。
る。
【図35】図33に示すインポート操作の代替図であ
る。
る。
【図36】エクスポート操作を実行するための代替技法
を示すブロック図である。
を示すブロック図である。
【図37】インポート操作を実行するための代替技法を
示すブロック図である。
示すブロック図である。
209 ソース、ベンダ 211 ユーザ、顧客 213 メモリ媒体 215 ユーザ固有情報、計算機ID 217 製品キー、顧客番号
───────────────────────────────────────────────────── フロントページの続き (72)発明者 ジャグディシュ・ナグダ アメリカ合衆国80304 コロラド州ボウル ダー カルミア・アベニュー 701 (72)発明者 ロバート・エフ・プライアー アメリカ合衆国80503 コロラド州ロング モント マウント・ミーカー・ロード 7380
Claims (13)
- 【請求項1】(a)ソース・コンピュータ側で、少なく
とも一部は少なくとも1つの固有のソース・コンピュー
タ・システム属性から得たキーで暗号化された少なくと
も1つのファイルを提供するステップと、(b)転送メ
モリ媒体を提供するステップと、(c)前記ソース・コ
ンピュータ側で、前記少なくとも1つのファイルを暗号
解読するステップと、(d)前記ソース・コンピュータ
側で、少なくとも1つの固有の転送メモリ媒体属性から
得たキーで前記少なくとも1つのファイルを暗号化する
ステップと、(e)前記ソース・コンピュータ側で、前
記暗号化ファイルを前記転送メモリ媒体にコピーするス
テップと、(f)ターゲット・コンピュータ側で、前記
少なくとも1つのファイルを暗号解読するステップと、
(g)前記ターゲット・コンピュータ側で、少なくとも
一部は少なくとも1つのターゲット・コンピュータ・シ
ステム属性から得たキーで前記少なくとも1つのファイ
ルを暗号化するステップとを含む、 データ処理システム間で暗号化ファイルを渡す方法。 - 【請求項2】(い)許される転送操作の最大数を定義す
るエクスポート・カウンタを前記ソース・コンピュータ
内に設けるステップと、(ろ)各転送操作ごとに前記エ
クスポート・カウンタを起動するステップとを含む、請
求項1に記載の暗号化ファイルを渡す方法。 - 【請求項3】特定のターゲット・コンピュータに対し
て、前記許される転送操作のそれぞれを識別するステッ
プを含む、請求項2に記載の暗号化ファイルを渡す方
法。 - 【請求項4】各ターゲット・コンピュータから識別情報
を獲得することにより、前記転送メモリ媒体を必要とす
るすべての転送操作の発生を記録するステップを含む、
請求項1に記載の暗号化ファイルを渡す方法。 - 【請求項5】(a)ソース・コンピュータ側で、少なく
とも一部は少なくとも1つの固有のソース・コンピュー
タ・システム属性から得たキーで暗号化された少なくと
も1つのファイルを提供するステップと、(b)転送メ
モリ媒体を提供するステップと、(c)特定の転送操作
を開始するステップと、(d)前記ソース・コンピュー
タ側で、前記少なくとも1つのファイルを暗号解読する
ステップと、(e)前記特定の転送操作を明確に識別す
る転送IDを前記少なくとも1つのファイルに含めるス
テップと、(f)前記ソース・コンピュータ側で、少な
くとも1つの固有の転送メモリ媒体属性から得たキーで
前記少なくとも1つのファイルを暗号化するステップ
と、(g)前記ソース・コンピュータ側で、前記暗号化
ファイルを前記転送メモリ媒体にコピーするステップ
と、(h)ターゲット・コンピュータ側で、前記少なく
とも1つのファイルを暗号解読するステップと、(i)
前記ターゲット・コンピュータ側で、少なくとも一部は
少なくとも1つのターゲット・コンピュータ・システム
属性から得たキーで前記少なくとも1つのファイルを暗
号化するステップとを含む、データ処理システム間で暗
号化ファイルを渡す方法。 - 【請求項6】前記ターゲット・コンピュータ側で、固有
のターゲット・コンピュータIDを前記転送メモリ媒体
に渡すステップを含む、請求項5に記載の暗号化ファイ
ルを渡す方法。 - 【請求項7】前記ターゲット・コンピュータ側で、前記
ソース・コンピュータのIDを提供するために前記少な
くとも1つのファイルを更新するステップを含む、請求
項5に記載の暗号化ファイルを渡す方法。 - 【請求項8】(a)少なくとも一部は少なくとも1つの
固有のソース・コンピュータ・システム属性から得たキ
ーで暗号化された、ソース・コンピュータ内の少なくと
も1つのファイルと、(b)固有の属性を有する取外し
可能な転送メモリ媒体と、(c)前記少なくとも1つの
ファイルを暗号解読し、前記固有の属性から得たキーで
前記少なくとも1つのファイルを暗号化し、前記暗号化
ファイルを前記転送メモリ媒体にコピーするエクスポー
ト・プログラムと、(d)ターゲット・コンピュータ側
で、前記少なくとも1つのファイルを暗号解読し、少な
くとも一部は少なくとも1つのターゲット・コンピュー
タ・システム属性から得たキーで前記少なくとも1つの
ファイルを暗号化するインポート・プログラムとを含
む、 データ処理システム間で暗号化ファイルを渡す装置。 - 【請求項9】前記ソース・コンピュータの前記エクスポ
ート・プログラム内に設けられ、許される転送操作の最
大数を定義し、各転送操作ごとにカウントするエクスポ
ート・カウンタを含む、請求項8に記載の暗号化ファイ
ルを渡す装置。 - 【請求項10】(a)ソース・コンピュータ側で、少な
くとも一部は少なくとも1つの固有のソース・コンピュ
ータ・システム属性から得たキーで暗号化された少なく
とも1つのファイルを提供するステップと、(b)転送
メモリ媒体を提供するステップと、(c)ターゲット・
コンピュータ側で、前記ターゲット・コンピュータに固
有の転送暗号化キーを前記転送メモリ媒体にコピーする
ステップと、(d)前記ソース・コンピュータ側で、前
記少なくとも1つのファイルを暗号解読するステップ
と、(e)前記ソース・コンピュータ側で、前記転送暗
号化キーで前記少なくとも1つのファイルを暗号化する
ステップと、(f)前記ソース・コンピュータ側で、前
記暗号化ファイルを前記転送メモリ媒体にコピーするス
テップと、(g)ターゲット・コンピュータ側で、前記
少なくとも1つのファイルを暗号解読するステップと、
(h)前記ターゲット・コンピュータ側で、少なくとも
一部は少なくとも1つのターゲット・コンピュータ・シ
ステム属性から得たキーで前記少なくとも1つのファイ
ルを暗号化するステップとを含む、 データ処理システム間で暗号化ファイルを渡す方法。 - 【請求項11】許される転送操作の最大数を定義するエ
クスポート・カウンタを前記ソース・コンピュータ内に
設けるステップと、 各転送操作ごとに前記エクスポート・カウンタを起動す
るステップとを含む、請求項10に記載の暗号化ファイ
ルを渡す方法。 - 【請求項12】特定のターゲット・コンピュータに対し
て、前記許される転送操作のそれぞれを識別するステッ
プを含む、請求項11に記載の暗号化ファイルを渡す方
法。 - 【請求項13】各ターゲット・コンピュータから識別情
報を獲得することにより、前記転送メモリ媒体を必要と
するすべての転送操作の発生を記録するステップを含
む、請求項10に記載の暗号化ファイルを渡す方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US238418 | 1994-04-25 | ||
| US08/238,418 US5563946A (en) | 1994-04-25 | 1994-04-25 | Method and apparatus for enabling trial period use of software products: method and apparatus for passing encrypted files between data processing systems |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001379059A Division JP3914430B2 (ja) | 1994-04-25 | 2001-12-12 | ソフトウェア・オブジェクトの配布を可能にするための方法および装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH07295798A true JPH07295798A (ja) | 1995-11-10 |
Family
ID=22897809
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP7090571A Pending JPH07295798A (ja) | 1994-04-25 | 1995-04-17 | ソフトウェア・オブジェクトの配布を可能にするための方法および装置 |
| JP2001379059A Expired - Lifetime JP3914430B2 (ja) | 1994-04-25 | 2001-12-12 | ソフトウェア・オブジェクトの配布を可能にするための方法および装置 |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2001379059A Expired - Lifetime JP3914430B2 (ja) | 1994-04-25 | 2001-12-12 | ソフトウェア・オブジェクトの配布を可能にするための方法および装置 |
Country Status (4)
| Country | Link |
|---|---|
| US (1) | US5563946A (ja) |
| EP (1) | EP0679977B1 (ja) |
| JP (2) | JPH07295798A (ja) |
| DE (1) | DE69528408T2 (ja) |
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1998027494A1 (en) * | 1996-12-18 | 1998-06-25 | Hitachi, Ltd. | Electronic document management method |
| JP2001216440A (ja) * | 2000-01-26 | 2001-08-10 | Gtx Corp | 電子商取引を行うための方法及び装置 |
| JP2007281849A (ja) * | 2006-04-06 | 2007-10-25 | Sharp Corp | プレーヤシステム及び信号出入力切換方法 |
| JP2007534080A (ja) * | 2004-04-23 | 2007-11-22 | ジョン・グルームス | ウェブベースのデータコンテンツ配信システム |
Families Citing this family (341)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5557518A (en) * | 1994-04-28 | 1996-09-17 | Citibank, N.A. | Trusted agents for open electronic commerce |
| US7991347B1 (en) | 1994-04-07 | 2011-08-02 | Data Innovation Llc | System and method for accessing set of digital data at a remote site |
| US6473860B1 (en) | 1994-04-07 | 2002-10-29 | Hark C. Chan | Information distribution and processing system |
| US5598470A (en) * | 1994-04-25 | 1997-01-28 | International Business Machines Corporation | Method and apparatus for enabling trial period use of software products: Method and apparatus for utilizing a decryption block |
| US7181758B1 (en) | 1994-07-25 | 2007-02-20 | Data Innovation, L.L.C. | Information distribution and processing system |
| JP4095680B2 (ja) * | 1994-08-01 | 2008-06-04 | 富士通株式会社 | カード型記憶装置用セキュリティ管理方法およびカード型記憶装置 |
| JP3439838B2 (ja) * | 1994-08-10 | 2003-08-25 | 富士通株式会社 | ソフトウエア従量課金・再生装置 |
| US6865551B1 (en) | 1994-11-23 | 2005-03-08 | Contentguard Holdings, Inc. | Removable content repositories |
| US7117180B1 (en) | 1994-11-23 | 2006-10-03 | Contentguard Holdings, Inc. | System for controlling the use of digital works using removable content repositories |
| US6963859B2 (en) * | 1994-11-23 | 2005-11-08 | Contentguard Holdings, Inc. | Content rendering repository |
| JPH08263438A (ja) | 1994-11-23 | 1996-10-11 | Xerox Corp | ディジタルワークの配給及び使用制御システム並びにディジタルワークへのアクセス制御方法 |
| KR0152788B1 (ko) | 1994-11-26 | 1998-10-15 | 이헌조 | 디지탈 영상 시스템의 복사 방지 방법 및 장치 |
| KR0136458B1 (ko) | 1994-12-08 | 1998-05-15 | 구자홍 | 디지탈 자기 기록재생 시스템의 복사 방지장치 |
| 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 |
| US6948070B1 (en) * | 1995-02-13 | 2005-09-20 | Intertrust Technologies Corporation | Systems and methods for secure transaction management and electronic rights protection |
| US7165174B1 (en) | 1995-02-13 | 2007-01-16 | Intertrust Technologies Corp. | Trusted infrastructure support systems, methods and techniques for secure electronic commerce transaction and rights management |
| US7095854B1 (en) * | 1995-02-13 | 2006-08-22 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US7143290B1 (en) | 1995-02-13 | 2006-11-28 | Intertrust Technologies Corporation | Trusted and secure techniques, systems and methods for item delivery and execution |
| US5892900A (en) | 1996-08-30 | 1999-04-06 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US5943422A (en) | 1996-08-12 | 1999-08-24 | Intertrust Technologies Corp. | Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels |
| US7133845B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | System and methods for secure transaction management and electronic rights protection |
| US7133846B1 (en) * | 1995-02-13 | 2006-11-07 | Intertrust Technologies Corp. | Digital certificate support system, methods and techniques for secure electronic commerce transaction and rights management |
| US6157721A (en) | 1996-08-12 | 2000-12-05 | Intertrust Technologies Corp. | Systems and methods using cryptography to protect secure computing environments |
| US7124302B2 (en) | 1995-02-13 | 2006-10-17 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| US7069451B1 (en) | 1995-02-13 | 2006-06-27 | Intertrust Technologies Corp. | Systems and methods for secure transaction management and electronic rights protection |
| 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 |
| CN100365535C (zh) * | 1995-02-13 | 2008-01-30 | 英特特拉斯特技术公司 | 用于安全交易管理和电子权利保护的系统和方法 |
| US6742118B1 (en) * | 1995-05-12 | 2004-05-25 | Sony Corporation | Information processing apparatus, information processing method, data recording medium, and information processing system |
| US5883954A (en) * | 1995-06-07 | 1999-03-16 | Digital River, Inc. | Self-launching encrypted try before you buy software distribution system |
| CA2223409A1 (en) * | 1995-06-07 | 1996-12-19 | Digital River, Inc. | Try before you buy software distribution and marketing system |
| US5870543A (en) * | 1995-06-07 | 1999-02-09 | Digital River, Inc. | System for preventing unauthorized copying of active software |
| US5883955A (en) * | 1995-06-07 | 1999-03-16 | Digital River, Inc. | On-line try before you buy software distribution system |
| US5903647A (en) * | 1995-06-07 | 1999-05-11 | Digital River, Inc. | Self-launching encrypted digital information distribution system |
| US5887060A (en) * | 1995-06-07 | 1999-03-23 | Digital River, Inc. | Central database system for automatic software program sales |
| US6000030A (en) * | 1996-06-20 | 1999-12-07 | Emc Corporation | Software fingerprinting and branding |
| US8429205B2 (en) * | 1995-07-27 | 2013-04-23 | Digimarc Corporation | Associating data with media signals in media signal systems through auxiliary data steganographically embedded in the media signals |
| JP4518574B2 (ja) * | 1995-08-11 | 2010-08-04 | ソニー株式会社 | 記録方法及び装置、記録媒体、並びに再生方法及び装置 |
| US5758068A (en) * | 1995-09-19 | 1998-05-26 | International Business Machines Corporation | Method and apparatus for software license management |
| US5764774A (en) * | 1995-09-25 | 1998-06-09 | Intermec Corporation | Source data compression and decompression in code symbol printing and decoding |
| US7191154B2 (en) * | 1995-10-09 | 2007-03-13 | Matsushita Electric Industrial Co., Ltd. | Apparatus for encrypting and recording received content information on a recording medium using both medium identification information and a cipher key for encryption |
| DE69613156T2 (de) | 1995-10-09 | 2001-10-25 | Matsushita Electric Industrial Co., Ltd. | Optisches Wiedergabegerät zur Wiedergabe verschlüsselter Informationen |
| US6023506A (en) * | 1995-10-26 | 2000-02-08 | Hitachi, Ltd. | Data encryption control apparatus and method |
| KR19980701566A (ko) * | 1995-11-20 | 1998-05-15 | 요트.게.아. 롤페즈 | 컴퓨터 프로그램을 분배하는 시스템 |
| BR9610883A (pt) * | 1996-01-16 | 1999-07-13 | Hughes Aircraft Co | Método e sistema de distribuição de documentos eletrônicos difusos pagamento diferenciado |
| US20010011253A1 (en) * | 1998-08-04 | 2001-08-02 | Christopher D. Coley | Automated system for management of licensed software |
| US5953419A (en) * | 1996-05-06 | 1999-09-14 | Symantec Corporation | Cryptographic file labeling system for supporting secured access by multiple users |
| US7010697B2 (en) * | 1996-06-28 | 2006-03-07 | Protexis, Inc. | System for dynamically encrypting information for secure internet commerce and providing embedded fulfillment software |
| US7770230B2 (en) * | 2002-04-22 | 2010-08-03 | Arvato Digital Services Canada, Inc. | System for dynamically encrypting content for secure internet commerce and providing embedded fulfillment software |
| US6052780A (en) * | 1996-09-12 | 2000-04-18 | Open Security Solutions, Llc | Computer system and process for accessing an encrypted and self-decrypting digital information product while restricting access to decrypted digital information |
| JPH10164046A (ja) * | 1996-11-29 | 1998-06-19 | Canon Inc | 送信方法、受信方法、送信装置、受信装置、伝送システム及び媒体 |
| TW401573B (en) * | 1997-01-10 | 2000-08-11 | Victor Company Of Japan | Methods, apparatuse, and systems for producing and writing cipher keys, reproducing information with a cipher key, and for permitting reproduction of information with a cipher key, and optical disc recorded with a cipher key |
| US6141698A (en) * | 1997-01-29 | 2000-10-31 | Network Commerce Inc. | Method and system for injecting new code into existing application code |
| WO1998037659A2 (en) * | 1997-02-24 | 1998-08-27 | Wildfire Communications, Inc. | Method and apparatus for offering additional product functions to a user |
| US5920861A (en) | 1997-02-25 | 1999-07-06 | Intertrust Technologies Corp. | Techniques for defining using and manipulating rights management data structures |
| US7062500B1 (en) | 1997-02-25 | 2006-06-13 | Intertrust Technologies Corp. | Techniques for defining, using and manipulating rights management data structures |
| US6233684B1 (en) | 1997-02-28 | 2001-05-15 | Contenaguard Holdings, Inc. | System for controlling the distribution and use of rendered digital works through watermaking |
| ES2178174T3 (es) * | 1997-03-27 | 2002-12-16 | British Telecomm | Proteccion de datos contra la copia. |
| US6298457B1 (en) * | 1997-10-17 | 2001-10-02 | International Business Machines Corporation | Non-invasive networked-based customer support |
| US6112181A (en) | 1997-11-06 | 2000-08-29 | Intertrust Technologies Corporation | Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
| US7092914B1 (en) | 1997-11-06 | 2006-08-15 | Intertrust Technologies Corporation | Methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information |
| US7233948B1 (en) | 1998-03-16 | 2007-06-19 | Intertrust Technologies Corp. | Methods and apparatus for persistent control and protection of content |
| US20010044901A1 (en) * | 1998-03-24 | 2001-11-22 | Symantec Corporation | Bubble-protected system for automatic decryption of file data on a per-use basis and automatic re-encryption |
| US7051004B2 (en) * | 1998-04-03 | 2006-05-23 | Macrovision Corporation | System and methods providing secure delivery of licenses and content |
| US6202056B1 (en) * | 1998-04-03 | 2001-03-13 | Audiosoft, Inc. | Method for computer network operation providing basis for usage fees |
| US7246246B2 (en) * | 1998-04-17 | 2007-07-17 | Iomega Corporation | System for keying protected electronic data to particular media to prevent unauthorized copying using a compound key |
| JP3713141B2 (ja) * | 1998-05-19 | 2005-11-02 | インターナショナル・ビジネス・マシーンズ・コーポレーション | プログラムの不正実行防止方法 |
| JPH11328033A (ja) * | 1998-05-20 | 1999-11-30 | Fujitsu Ltd | ライセンス委譲装置 |
| KR100559688B1 (ko) * | 1998-07-22 | 2006-03-10 | 마츠시타 덴끼 산교 가부시키가이샤 | 저작권을 보호하고 기록매체에 기록된 암호화된디지털데이터를 용이하게 재생하는 디지털데이터기록장치와 그 방법 및 그 프로그램을 기록한 컴퓨터판독가능한 기록매체 |
| US7068787B1 (en) | 1998-10-23 | 2006-06-27 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| US7047416B2 (en) * | 1998-11-09 | 2006-05-16 | First Data Corporation | Account-based digital signature (ABDS) system |
| US6820202B1 (en) | 1998-11-09 | 2004-11-16 | First Data Corporation | Account authority digital signature (AADS) system |
| US6434535B1 (en) * | 1998-11-13 | 2002-08-13 | Iomega Corporation | System for prepayment of electronic content using removable media and for prevention of unauthorized copying of same |
| US7058597B1 (en) | 1998-12-04 | 2006-06-06 | Digital River, Inc. | Apparatus and method for adaptive fraud screening for electronic commerce transactions |
| US7617124B1 (en) * | 1998-12-04 | 2009-11-10 | Digital River, Inc. | Apparatus and method for secure downloading of files |
| US20030195974A1 (en) | 1998-12-04 | 2003-10-16 | Ronning Joel A. | Apparatus and method for scheduling of search for updates or downloads of a file |
| EP1473721B1 (en) * | 1998-12-11 | 2015-07-15 | Sony Corporation | Technique for controlling copying of data |
| WO2000052684A1 (en) * | 1999-03-03 | 2000-09-08 | Sony Corporation | Recording device, recording method, reproducing device and reproducing method |
| US6847949B1 (en) * | 1999-05-10 | 2005-01-25 | Koninklijke Philips Electronics N.V. | Indicator system for screening protected material |
| WO2000055962A2 (en) | 1999-03-15 | 2000-09-21 | Sony Electronics, Inc. | Electronic media system, method and device |
| US6937726B1 (en) * | 1999-04-06 | 2005-08-30 | Contentguard Holdings, Inc. | System and method for protecting data files by periodically refreshing a decryption key |
| US7286665B1 (en) | 1999-04-06 | 2007-10-23 | Contentguard Holdings, Inc. | System and method for transferring the right to decode messages |
| US7356688B1 (en) | 1999-04-06 | 2008-04-08 | Contentguard Holdings, Inc. | System and method for document distribution |
| US6859533B1 (en) | 1999-04-06 | 2005-02-22 | Contentguard Holdings, Inc. | System and method for transferring the right to decode messages in a symmetric encoding scheme |
| US6966002B1 (en) | 1999-04-30 | 2005-11-15 | Trymedia Systems, Inc. | Methods and apparatus for secure distribution of software |
| US7360252B1 (en) | 1999-04-30 | 2008-04-15 | Macrovision Corporation | Method and apparatus for secure distribution of software |
| US20060005021A1 (en) * | 1999-06-09 | 2006-01-05 | Andres Torrubia-Saez | Methods and apparatus for secure distribution of software |
| US7430670B1 (en) | 1999-07-29 | 2008-09-30 | Intertrust Technologies Corp. | Software self-defense systems and methods |
| US7243236B1 (en) | 1999-07-29 | 2007-07-10 | Intertrust Technologies Corp. | Systems and methods for using cryptography to protect secure and insecure computing environments |
| US6885748B1 (en) | 1999-10-23 | 2005-04-26 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| US6654888B1 (en) * | 1999-12-31 | 2003-11-25 | International Business Machines Corporation | Installing and controlling trial software |
| US20020114465A1 (en) * | 2000-01-05 | 2002-08-22 | Shen-Orr D. Chaim | Digital content delivery system and method |
| AU2001229402A1 (en) | 2000-01-13 | 2001-07-24 | Digimarc Corporation | Authenticating metadata and embedding metadata in watermarks of media signals |
| US20070271191A1 (en) * | 2000-03-09 | 2007-11-22 | Andres Torrubia-Saez | Method and apparatus for secure distribution of software |
| WO2001093002A2 (en) * | 2000-05-30 | 2001-12-06 | Dataplay, Incorporated | Method of decrypting data stored on a storage device using an embedded encryption/decryption means |
| EP1305753A4 (en) * | 2000-06-07 | 2010-07-14 | Kount Inc | ONLINE MACHINE METHOD FOR COLLECTING AND STORING DATA |
| US20020073336A1 (en) * | 2000-06-30 | 2002-06-13 | E L & Associates, Inc. | Method and apparatus for encrypted electronic file access control |
| EP1303940B1 (en) * | 2000-07-14 | 2008-08-13 | Irdeto Access B.V. | Secure packet-based data broadcasting architecture |
| US7010691B2 (en) * | 2000-08-04 | 2006-03-07 | First Data Corporation | ABDS system utilizing security information in authenticating entity access |
| US7552333B2 (en) * | 2000-08-04 | 2009-06-23 | First Data Corporation | Trusted authentication digital signature (tads) system |
| WO2002013434A1 (en) * | 2000-08-04 | 2002-02-14 | First Data Corporation | Method and apparatus for access authentication entity |
| JP3646631B2 (ja) * | 2000-08-04 | 2005-05-11 | ヤマハ株式会社 | 電子機器 |
| US7096354B2 (en) * | 2000-08-04 | 2006-08-22 | First Data Corporation | Central key authority database in an ABDS system |
| US7558965B2 (en) * | 2000-08-04 | 2009-07-07 | First Data Corporation | Entity authentication in electronic communications by providing verification status of device |
| US6978369B2 (en) * | 2000-08-04 | 2005-12-20 | First Data Corporation | Person-centric account-based digital signature system |
| US7082533B2 (en) * | 2000-08-04 | 2006-07-25 | First Data Corporation | Gauging risk in electronic communications regarding accounts in ABDS system |
| US6983368B2 (en) * | 2000-08-04 | 2006-01-03 | First Data Corporation | Linking public key of device to information during manufacture |
| US6789189B2 (en) * | 2000-08-04 | 2004-09-07 | First Data Corporation | Managing account database in ABDS system |
| US7242776B1 (en) * | 2000-08-08 | 2007-07-10 | Verizon Corporate Services Group Inc. | Method and apparatus for the generation and distribution of random bits |
| US6947556B1 (en) | 2000-08-21 | 2005-09-20 | International Business Machines Corporation | Secure data storage and retrieval with key management and user authentication |
| US7010689B1 (en) | 2000-08-21 | 2006-03-07 | International Business Machines Corporation | Secure data storage and retrieval in a client-server environment |
| US20030196109A1 (en) | 2000-08-28 | 2003-10-16 | Contentguard Holdings, Inc. | Method and apparatus for content transaction aggregation |
| US7743259B2 (en) | 2000-08-28 | 2010-06-22 | Contentguard Holdings, Inc. | System and method for digital rights management using a standard rendering engine |
| US7073199B1 (en) | 2000-08-28 | 2006-07-04 | Contentguard Holdings, Inc. | Document distribution management method and apparatus using a standard rendering engine and a method and apparatus for controlling a standard rendering engine |
| US6931545B1 (en) | 2000-08-28 | 2005-08-16 | Contentguard Holdings, Inc. | Systems and methods for integrity certification and verification of content consumption environments |
| US8972590B2 (en) * | 2000-09-14 | 2015-03-03 | Kirsten Aldrich | Highly accurate security and filtering software |
| JP2004509398A (ja) * | 2000-09-14 | 2004-03-25 | プロビックス・インコーポレイテッド | ネットワークにわたって配布されるオブジェクトの保護のために監査証跡を確立するためのシステム |
| WO2002023798A1 (en) * | 2000-09-14 | 2002-03-21 | Probix, Inc. | System for protecting objects distributed over a network |
| DE10045975A1 (de) * | 2000-09-16 | 2002-04-11 | Bosch Gmbh Robert | Verfahren zur Steuerung des Zugriffs |
| US7343324B2 (en) | 2000-11-03 | 2008-03-11 | Contentguard Holdings Inc. | Method, system, and computer readable medium for automatically publishing content |
| US7962416B1 (en) * | 2000-11-22 | 2011-06-14 | Ge Medical Technology Services, Inc. | Method and system to remotely enable software-based options for a trial period |
| JP2002183633A (ja) * | 2000-12-13 | 2002-06-28 | Sony Corp | 情報記録媒体、情報処理装置および情報処理方法、プログラム記録媒体、並びに情報処理システム |
| US6912294B2 (en) | 2000-12-29 | 2005-06-28 | Contentguard Holdings, Inc. | Multi-stage watermarking process and system |
| US8069116B2 (en) | 2001-01-17 | 2011-11-29 | Contentguard Holdings, Inc. | System and method for supplying and managing usage rights associated with an item repository |
| US7028009B2 (en) | 2001-01-17 | 2006-04-11 | Contentguardiholdings, Inc. | Method and apparatus for distributing enforceable property rights |
| US6754642B2 (en) | 2001-05-31 | 2004-06-22 | Contentguard Holdings, Inc. | Method and apparatus for dynamically assigning usage rights to digital works |
| US7774279B2 (en) | 2001-05-31 | 2010-08-10 | Contentguard Holdings, Inc. | Rights offering and granting |
| BR0206506A (pt) | 2001-01-17 | 2003-10-21 | Contentguard Holdings Inc | Processo e aparelho para gerenciar direitos de uso de conteúdo digital |
| US7206765B2 (en) | 2001-01-17 | 2007-04-17 | Contentguard Holdings, Inc. | System and method for supplying and managing usage rights based on rules |
| WO2002093849A2 (en) * | 2001-05-16 | 2002-11-21 | Kasten Chase Applied Research Limited | System for secure electronic information transmission |
| US6895503B2 (en) | 2001-05-31 | 2005-05-17 | Contentguard Holdings, Inc. | Method and apparatus for hierarchical assignment of rights to documents and documents having such rights |
| US6973445B2 (en) | 2001-05-31 | 2005-12-06 | Contentguard Holdings, Inc. | Demarcated digital content and method for creating and processing demarcated digital works |
| US8099364B2 (en) | 2001-05-31 | 2012-01-17 | Contentguard Holdings, Inc. | Digital rights management of content when content is a future live event |
| US8275716B2 (en) | 2001-05-31 | 2012-09-25 | Contentguard Holdings, Inc. | Method and system for subscription digital rights management |
| US7222104B2 (en) * | 2001-05-31 | 2007-05-22 | Contentguard Holdings, Inc. | Method and apparatus for transferring usage rights and digital work having transferrable usage rights |
| US6976009B2 (en) | 2001-05-31 | 2005-12-13 | Contentguard Holdings, Inc. | Method and apparatus for assigning consequential rights to documents and documents having such rights |
| US7725401B2 (en) | 2001-05-31 | 2010-05-25 | Contentguard Holdings, Inc. | Method and apparatus for establishing usage rights for digital content to be created in the future |
| US8275709B2 (en) | 2001-05-31 | 2012-09-25 | Contentguard Holdings, Inc. | Digital rights management of content when content is a future live event |
| US7152046B2 (en) | 2001-05-31 | 2006-12-19 | Contentguard Holdings, Inc. | Method and apparatus for tracking status of resource in a system for managing use of the resources |
| US6876984B2 (en) | 2001-05-31 | 2005-04-05 | Contentguard Holdings, Inc. | Method and apparatus for establishing usage rights for digital content to be created in the future |
| US8001053B2 (en) | 2001-05-31 | 2011-08-16 | Contentguard Holdings, Inc. | System and method for rights offering and granting using shared state variables |
| US7426494B2 (en) * | 2001-06-06 | 2008-09-16 | Matsushita Electric Industrial Co., Ltd. | Rental system |
| US7774280B2 (en) | 2001-06-07 | 2010-08-10 | Contentguard Holdings, Inc. | System and method for managing transfer of rights using shared state variables |
| WO2002101494A2 (en) | 2001-06-07 | 2002-12-19 | Contentguard Holdings, Inc. | Protected content distribution system |
| CA2432189A1 (en) | 2001-06-07 | 2002-12-19 | Contentguard Holdings, Inc. | Cryptographic trust zones in digital rigths management |
| US7421411B2 (en) | 2001-07-06 | 2008-09-02 | Nokia Corporation | Digital rights management in a mobile communications environment |
| US8515773B2 (en) | 2001-08-01 | 2013-08-20 | Sony Corporation | System and method for enabling distribution and brokering of content information |
| US20040128508A1 (en) * | 2001-08-06 | 2004-07-01 | Wheeler Lynn Henry | Method and apparatus for access authentication entity |
| US8281129B1 (en) | 2001-08-29 | 2012-10-02 | Nader Asghari-Kamrani | Direct authentication system and method via trusted authenticators |
| US7444676B1 (en) | 2001-08-29 | 2008-10-28 | Nader Asghari-Kamrani | Direct authentication and authorization system and method for trusted network of financial institutions |
| AU2002332710A1 (en) * | 2001-08-29 | 2003-03-18 | Globespanvirata Incorporated | Secure access to software functionalities |
| WO2003021862A1 (en) * | 2001-08-31 | 2003-03-13 | Hamilton Jon W | A system and method for imprinting a digital image with an identifier using black metamers |
| US20030051172A1 (en) * | 2001-09-13 | 2003-03-13 | Lordemann David A. | Method and system for protecting digital objects distributed over a network |
| US7167982B2 (en) * | 2001-09-14 | 2007-01-23 | Lenovo (Singapore) Pte Ltd. | Securing decrypted files in a shared environment |
| US7003116B2 (en) * | 2001-10-31 | 2006-02-21 | Hewlett-Packard Development Company, L.P. | System for encrypted file storage optimization via differentiated key lengths |
| 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 |
| AU2002350209A1 (en) | 2001-11-20 | 2003-06-10 | Contentguard Holdings, Inc. | An extensible rights expression processing system |
| US7974923B2 (en) | 2001-11-20 | 2011-07-05 | Contentguard Holdings, Inc. | Extensible rights expression processing system |
| US7562397B1 (en) * | 2002-02-27 | 2009-07-14 | Mithal Ashish K | Method and system for facilitating search, selection, preview, purchase evaluation, offering for sale, distribution, and/or sale of digital content and enhancing the security thereof |
| US7316032B2 (en) * | 2002-02-27 | 2008-01-01 | Amad Tayebi | Method for allowing a customer to preview, acquire and/or pay for information and a system therefor |
| US7656908B1 (en) * | 2005-09-30 | 2010-02-02 | At&T Corp. | System and method for delivering content in a unicast/multicast manner |
| US7082142B1 (en) * | 2001-12-21 | 2006-07-25 | At & T Corp. | System and method for delivering content in a unicast/multicast manner |
| US7805371B2 (en) | 2002-03-14 | 2010-09-28 | Contentguard Holdings, Inc. | Rights expression profile system and method |
| CN1653463B (zh) | 2002-03-14 | 2013-03-06 | 康坦夹德控股股份有限公司 | 用于处理使用权利表达的方法和装置 |
| US8216071B2 (en) * | 2002-03-20 | 2012-07-10 | Intel Corporation | Method and apparatus for software delivery and management |
| WO2003094076A1 (en) | 2002-04-29 | 2003-11-13 | Contentguard Holdings, Inc. | Rights management system using legality expression language |
| US20030217280A1 (en) * | 2002-05-17 | 2003-11-20 | Keaton Thomas S. | Software watermarking for anti-tamper protection |
| JP2003345641A (ja) * | 2002-05-29 | 2003-12-05 | Ricoh Co Ltd | 記憶媒体及びプログラム |
| US20030237005A1 (en) * | 2002-06-21 | 2003-12-25 | Yuval Bar-Or | Method and system for protecting digital objects distributed over a network by electronic mail |
| US9521213B2 (en) * | 2002-06-28 | 2016-12-13 | Adobe Systems Incorporated | Electronic fulfillment system for distributing digital goods |
| US7421579B2 (en) | 2002-06-28 | 2008-09-02 | Microsoft Corporation | Multiplexing a secure counter to implement second level secure counters |
| US7885896B2 (en) | 2002-07-09 | 2011-02-08 | Avaya Inc. | Method for authorizing a substitute software license server |
| US8041642B2 (en) | 2002-07-10 | 2011-10-18 | Avaya Inc. | Predictive software license balancing |
| US7707116B2 (en) | 2002-08-30 | 2010-04-27 | Avaya Inc. | Flexible license file feature controls |
| US7966520B2 (en) | 2002-08-30 | 2011-06-21 | Avaya Inc. | Software licensing for spare processors |
| US7228567B2 (en) * | 2002-08-30 | 2007-06-05 | Avaya Technology Corp. | License file serial number tracking |
| US7698225B2 (en) | 2002-08-30 | 2010-04-13 | Avaya Inc. | License modes in call processing |
| US7681245B2 (en) | 2002-08-30 | 2010-03-16 | Avaya Inc. | Remote feature activator feature extraction |
| US20040078339A1 (en) * | 2002-10-22 | 2004-04-22 | Goringe Christopher M. | Priority based licensing |
| US20040153451A1 (en) * | 2002-11-15 | 2004-08-05 | John Phillips | Methods and systems for sharing data |
| JP2004171110A (ja) * | 2002-11-18 | 2004-06-17 | Mitsubishi Electric Corp | コンテンツ再生装置、コンテンツ再生制御プログラム及びコンテンツ再生制御プログラムを記録した記録媒体 |
| US7890997B2 (en) * | 2002-12-26 | 2011-02-15 | Avaya Inc. | Remote feature activation authentication file system |
| JP3928561B2 (ja) * | 2003-01-23 | 2007-06-13 | ソニー株式会社 | コンテンツ配信システム、情報処理装置又は情報処理方法、並びにコンピュータ・プログラム |
| EP1643404A3 (en) * | 2003-02-03 | 2006-04-19 | Tennessee Pacific Group. L.L.C. | Distribution and rights management of digital content |
| US20050004873A1 (en) * | 2003-02-03 | 2005-01-06 | Robin Pou | Distribution and rights management of digital content |
| US7260557B2 (en) * | 2003-02-27 | 2007-08-21 | Avaya Technology Corp. | Method and apparatus for license distribution |
| US7373657B2 (en) * | 2003-03-10 | 2008-05-13 | Avaya Technology Corp. | Method and apparatus for controlling data and software access |
| JP4222110B2 (ja) * | 2003-05-28 | 2009-02-12 | ソニー株式会社 | 情報記録媒体、並びに情報処理装置及び方法 |
| US20040249761A1 (en) * | 2003-06-03 | 2004-12-09 | Bea Systems, Inc. | Self-service customer license management application providing transaction history |
| JP2005006228A (ja) * | 2003-06-13 | 2005-01-06 | Casio Comput Co Ltd | プロジェクタ |
| US7685642B2 (en) | 2003-06-26 | 2010-03-23 | Contentguard Holdings, Inc. | System and method for controlling rights expressions by stakeholders of an item |
| JP2005026762A (ja) * | 2003-06-30 | 2005-01-27 | Nec Corp | 無線通信網におけるセキュリティ維持方法、システム、装置及びセキュリティ用プログラム並びに記憶媒体 |
| DE10330089B4 (de) * | 2003-07-03 | 2014-02-27 | Bt Ignite Gmbh & Co. | Verfahren und Vorrichtung zum Übermitteln von Entschlüsselungscodes für frei übertragene, verschlüsselte Programminhalte an eindeutig identifizierbare Empfänger |
| US7389273B2 (en) | 2003-09-25 | 2008-06-17 | Scott Andrew Irwin | System and method for federated rights management |
| US10437964B2 (en) * | 2003-10-24 | 2019-10-08 | Microsoft Technology Licensing, Llc | Programming interface for licensing |
| US7353388B1 (en) | 2004-02-09 | 2008-04-01 | Avaya Technology Corp. | Key server for securing IP telephony registration, control, and maintenance |
| US7836301B2 (en) * | 2004-03-10 | 2010-11-16 | Harris Steven M | Computer program for securely viewing a file |
| FR2867868A1 (fr) * | 2004-03-19 | 2005-09-23 | Tan Truyen Tran | Procede de protection de logiciels et de donnees avec methode de gestion de clefs securisees |
| US7272500B1 (en) | 2004-03-25 | 2007-09-18 | Avaya Technology Corp. | Global positioning system hardware key for software licenses |
| US20110071916A1 (en) * | 2004-04-23 | 2011-03-24 | John Grooms | Virtual release party |
| US8271390B2 (en) * | 2004-06-14 | 2012-09-18 | Nokia Corporation | Digital rights management (DRM) license manager |
| US7908477B2 (en) * | 2004-07-27 | 2011-03-15 | Seiji Eto | System and method for enabling device dependent rights protection |
| US7712135B2 (en) * | 2004-08-05 | 2010-05-04 | Savant Protection, Inc. | Pre-emptive anti-virus protection of computing systems |
| US7496753B2 (en) * | 2004-09-02 | 2009-02-24 | International Business Machines Corporation | Data encryption interface for reducing encrypt latency impact on standard traffic |
| US7409558B2 (en) * | 2004-09-02 | 2008-08-05 | International Business Machines Corporation | Low-latency data decryption interface |
| US7707405B1 (en) | 2004-09-21 | 2010-04-27 | Avaya Inc. | Secure installation activation |
| US20060064387A1 (en) * | 2004-09-22 | 2006-03-23 | Siemens Information And Communication Networks, Inc. | Systems and methods for software licensing |
| US7270228B2 (en) * | 2004-09-22 | 2007-09-18 | Metal Fabricating Corporation | Hanger for conveyor assembly |
| US8229858B1 (en) | 2004-09-30 | 2012-07-24 | Avaya Inc. | Generation of enterprise-wide licenses in a customer environment |
| US7747851B1 (en) | 2004-09-30 | 2010-06-29 | Avaya Inc. | Certificate distribution via license files |
| US7965701B1 (en) | 2004-09-30 | 2011-06-21 | Avaya Inc. | Method and system for secure communications with IP telephony appliance |
| US20060075441A1 (en) * | 2004-10-06 | 2006-04-06 | Sony Corporation | Method and system for a personal video recorder comprising multiple removable storage/tuner units |
| US8768844B2 (en) * | 2004-10-06 | 2014-07-01 | Sony Corporation | Method and system for content sharing and authentication between multiple devices |
| US8660961B2 (en) | 2004-11-18 | 2014-02-25 | Contentguard Holdings, Inc. | Method, system, and device for license-centric content consumption |
| US20060143135A1 (en) * | 2004-11-26 | 2006-06-29 | Tucker David M | Associating licensing information with software applications |
| US20060143473A1 (en) * | 2004-12-29 | 2006-06-29 | Kumar Mohan J | Software key implementation using system management firmware |
| US20060153364A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Asymmetric key cryptosystem based on shared knowledge |
| US20060156013A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Digital signature software using ephemeral private key and system |
| US20060153370A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Generating public-private key pair based on user input data |
| US7490239B2 (en) * | 2005-01-07 | 2009-02-10 | First Data Corporation | Facilitating digital signature based on ephemeral private key |
| US7593527B2 (en) * | 2005-01-07 | 2009-09-22 | First Data Corporation | Providing digital signature and public key based on shared knowledge |
| US7869593B2 (en) * | 2005-01-07 | 2011-01-11 | First Data Corporation | Software for providing based on shared knowledge public keys having same private key |
| US7936869B2 (en) * | 2005-01-07 | 2011-05-03 | First Data Corporation | Verifying digital signature based on shared knowledge |
| US7693277B2 (en) * | 2005-01-07 | 2010-04-06 | First Data Corporation | Generating digital signatures using ephemeral cryptographic key |
| US20060153369A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Providing cryptographic key based on user input data |
| US20060153367A1 (en) * | 2005-01-07 | 2006-07-13 | Beeson Curtis L | Digital signature system based on shared knowledge |
| US7281652B2 (en) * | 2005-05-18 | 2007-10-16 | Foss Jonathan G | Point-of-sale provider evaluation |
| US7973218B2 (en) * | 2005-08-24 | 2011-07-05 | Pioneer Hi-Bred International, Inc. | Methods and compositions for controlling weeds |
| US7814023B1 (en) | 2005-09-08 | 2010-10-12 | Avaya Inc. | Secure download manager |
| US7996255B1 (en) | 2005-09-29 | 2011-08-09 | The Mathworks, Inc. | System and method for providing sales leads based on-demand software trial usage |
| US7720767B2 (en) | 2005-10-24 | 2010-05-18 | Contentguard Holdings, Inc. | Method and system to support dynamic rights and resources sharing |
| US20070143295A1 (en) * | 2005-12-16 | 2007-06-21 | Dale Malik | Methods, systems, and computer program products for delivering associated content on a communication network |
| US7788337B2 (en) * | 2005-12-21 | 2010-08-31 | Flinchem Edward P | Systems and methods for advertisement tracking |
| US20070162390A1 (en) * | 2005-12-22 | 2007-07-12 | Macrovision Corporation | Techniques for distributing and monitoring content |
| US20070265980A1 (en) * | 2006-05-15 | 2007-11-15 | Mukesh Sehgal | Systems and methods for managing, maximizing and clearing contractually based media assets |
| JP2008033751A (ja) * | 2006-07-31 | 2008-02-14 | Ziosoft Inc | アップデート方法およびアップデートシステム |
| US20100250400A1 (en) * | 2006-11-10 | 2010-09-30 | Media Patents, S.L. | Apparatus and methods for the sale of software products |
| US20080114695A1 (en) * | 2006-11-10 | 2008-05-15 | Semantic Components S.L. | Process for implementing a method for the on-line sale of software product use licenses through a data network, and software component which allows carrying out said process |
| US8120802B2 (en) * | 2006-12-06 | 2012-02-21 | Sharp Laboratories Of America, Inc. | System and method for securely accessing downloaded print job resources |
| US20080154716A1 (en) * | 2006-12-21 | 2008-06-26 | David Meazoa | Consolidated digital direct advertising and advertisement distribution |
| JP4671198B2 (ja) * | 2007-01-26 | 2011-04-13 | 株式会社ソニー・コンピュータエンタテインメント | 情報処理装置 |
| WO2008122308A1 (en) * | 2007-04-04 | 2008-10-16 | Media Patents S.L. | Process for the on-line distribution, through a data network, of digital files protected by intellectual property rights and computer readable medium containing a program for carrying out said process |
| US8127235B2 (en) | 2007-11-30 | 2012-02-28 | International Business Machines Corporation | Automatic increasing of capacity of a virtual space in a virtual world |
| US20090164919A1 (en) | 2007-12-24 | 2009-06-25 | Cary Lee Bates | Generating data for managing encounters in a virtual world environment |
| JP5159375B2 (ja) | 2008-03-07 | 2013-03-06 | インターナショナル・ビジネス・マシーンズ・コーポレーション | メタバースにおけるオブジェクトの真贋判断システム、方法及びそのコンピュータ・プログラム |
| US20090262926A1 (en) * | 2008-04-16 | 2009-10-22 | Infineon Technologies Ag | Method and apparatus for generating a cryptographic key |
| KR101227787B1 (ko) * | 2008-09-24 | 2013-01-29 | 엔이씨 유럽 리미티드 | 네트워크를 통해 tv 콘텐츠를 분배하는 방법 및 시스템 |
| US8959653B2 (en) * | 2009-03-31 | 2015-02-17 | Blackberry Limited | Automatic license key injection |
| US20110054980A1 (en) * | 2009-09-02 | 2011-03-03 | Dave Simons | Game revenue optimization system |
| US20110066843A1 (en) * | 2009-09-16 | 2011-03-17 | Brent Newman | Mobile media play system and method |
| US9205328B2 (en) | 2010-02-18 | 2015-12-08 | Activision Publishing, Inc. | Videogame system and method that enables characters to earn virtual fans by completing secondary objectives |
| US9682324B2 (en) | 2010-05-12 | 2017-06-20 | Activision Publishing, Inc. | System and method for enabling players to participate in asynchronous, competitive challenges |
| US20120303533A1 (en) | 2011-05-26 | 2012-11-29 | Michael Collins Pinkus | System and method for securing, distributing and enforcing for-hire vehicle operating parameters |
| US20130253999A1 (en) | 2012-03-22 | 2013-09-26 | Frias Transportation Infrastructure Llc | Transaction and communication system and method for vendors and promoters |
| US9141783B2 (en) | 2012-06-26 | 2015-09-22 | Ologn Technologies Ag | Systems, methods and apparatuses for the application-specific identification of devices |
| US10137376B2 (en) | 2012-12-31 | 2018-11-27 | Activision Publishing, Inc. | System and method for creating and streaming augmented game sessions |
| US9510055B2 (en) | 2013-01-23 | 2016-11-29 | Sonos, Inc. | System and method for a media experience social interface |
| US20150220498A1 (en) * | 2014-02-05 | 2015-08-06 | Sonos, Inc. | Remote Creation of a Playback Queue for a Future Event |
| GB2523758A (en) * | 2014-03-03 | 2015-09-09 | Mastercard International Inc | Secure mobile device transactions |
| US9679054B2 (en) | 2014-03-05 | 2017-06-13 | Sonos, Inc. | Webpage media playback |
| US20150324552A1 (en) | 2014-05-12 | 2015-11-12 | Sonos, Inc. | Share Restriction for Media Items |
| US20150356084A1 (en) | 2014-06-05 | 2015-12-10 | Sonos, Inc. | Social Queue |
| US10322351B2 (en) | 2014-07-03 | 2019-06-18 | Activision Publishing, Inc. | Matchmaking system and method for multiplayer video games |
| US9874997B2 (en) | 2014-08-08 | 2018-01-23 | Sonos, Inc. | Social playback queues |
| US9860286B2 (en) | 2014-09-24 | 2018-01-02 | Sonos, Inc. | Associating a captured image with a media item |
| EP3114625A1 (en) | 2014-09-24 | 2017-01-11 | Sonos, Inc. | Social media connection recommendations based on playback information |
| EP3114852A1 (en) | 2014-09-24 | 2017-01-11 | Sonos Inc. | Social media queue |
| US9959087B2 (en) | 2014-09-24 | 2018-05-01 | Sonos, Inc. | Media item context from social media |
| US10645130B2 (en) | 2014-09-24 | 2020-05-05 | Sonos, Inc. | Playback updates |
| US9667679B2 (en) | 2014-09-24 | 2017-05-30 | Sonos, Inc. | Indicating an association between a social-media account and a media playback system |
| US9690540B2 (en) | 2014-09-24 | 2017-06-27 | Sonos, Inc. | Social media queue |
| US9723038B2 (en) | 2014-09-24 | 2017-08-01 | Sonos, Inc. | Social media connection recommendations based on playback information |
| US11351466B2 (en) | 2014-12-05 | 2022-06-07 | Activision Publishing, Ing. | System and method for customizing a replay of one or more game events in a video game |
| US10118099B2 (en) | 2014-12-16 | 2018-11-06 | Activision Publishing, Inc. | System and method for transparently styling non-player characters in a multiplayer video game |
| US10286314B2 (en) | 2015-05-14 | 2019-05-14 | Activision Publishing, Inc. | System and method for providing continuous gameplay in a multiplayer video game through an unbounded gameplay session |
| US10315113B2 (en) | 2015-05-14 | 2019-06-11 | Activision Publishing, Inc. | System and method for simulating gameplay of nonplayer characters distributed across networked end user devices |
| US10486068B2 (en) | 2015-05-14 | 2019-11-26 | Activision Publishing, Inc. | System and method for providing dynamically variable maps in a video game |
| US10213682B2 (en) | 2015-06-15 | 2019-02-26 | Activision Publishing, Inc. | System and method for uniquely identifying physical trading cards and incorporating trading card game items in a video game |
| US10471348B2 (en) | 2015-07-24 | 2019-11-12 | Activision Publishing, Inc. | System and method for creating and sharing customized video game weapon configurations in multiplayer video games via one or more social networks |
| US11185784B2 (en) | 2015-10-08 | 2021-11-30 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
| US10099140B2 (en) | 2015-10-08 | 2018-10-16 | Activision Publishing, Inc. | System and method for generating personalized messaging campaigns for video game players |
| US10232272B2 (en) | 2015-10-21 | 2019-03-19 | Activision Publishing, Inc. | System and method for replaying video game streams |
| US10376781B2 (en) | 2015-10-21 | 2019-08-13 | Activision Publishing, Inc. | System and method of generating and distributing video game streams |
| US10245509B2 (en) | 2015-10-21 | 2019-04-02 | Activision Publishing, Inc. | System and method of inferring user interest in different aspects of video game streams |
| US10694352B2 (en) | 2015-10-28 | 2020-06-23 | Activision Publishing, Inc. | System and method of using physical objects to control software access |
| US10226703B2 (en) | 2016-04-01 | 2019-03-12 | Activision Publishing, Inc. | System and method of generating and providing interactive annotation items based on triggering events in a video game |
| US10226701B2 (en) | 2016-04-29 | 2019-03-12 | Activision Publishing, Inc. | System and method for identifying spawn locations in a video game |
| US10179289B2 (en) | 2016-06-21 | 2019-01-15 | Activision Publishing, Inc. | System and method for reading graphically-encoded identifiers from physical trading cards through image-based template matching |
| US10586380B2 (en) | 2016-07-29 | 2020-03-10 | Activision Publishing, Inc. | Systems and methods for automating the animation of blendshape rigs |
| US10463964B2 (en) | 2016-11-17 | 2019-11-05 | Activision Publishing, Inc. | Systems and methods for the real-time generation of in-game, locally accessible heatmaps |
| US10709981B2 (en) | 2016-11-17 | 2020-07-14 | Activision Publishing, Inc. | Systems and methods for the real-time generation of in-game, locally accessible barrier-aware heatmaps |
| US10500498B2 (en) | 2016-11-29 | 2019-12-10 | Activision Publishing, Inc. | System and method for optimizing virtual games |
| US10055880B2 (en) | 2016-12-06 | 2018-08-21 | Activision Publishing, Inc. | Methods and systems to modify a two dimensional facial image to increase dimensional depth and generate a facial image that appears three dimensional |
| US10861079B2 (en) | 2017-02-23 | 2020-12-08 | Activision Publishing, Inc. | Flexible online pre-ordering system for media |
| US10818060B2 (en) | 2017-09-05 | 2020-10-27 | Activision Publishing, Inc. | Systems and methods for guiding motion capture actors using a motion reference system |
| US10974150B2 (en) | 2017-09-27 | 2021-04-13 | Activision Publishing, Inc. | Methods and systems for improved content customization in multiplayer gaming environments |
| US11040286B2 (en) | 2017-09-27 | 2021-06-22 | Activision Publishing, Inc. | Methods and systems for improved content generation in multiplayer gaming environments |
| US10561945B2 (en) | 2017-09-27 | 2020-02-18 | Activision Publishing, Inc. | Methods and systems for incentivizing team cooperation in multiplayer gaming environments |
| US10463971B2 (en) | 2017-12-06 | 2019-11-05 | Activision Publishing, Inc. | System and method for validating video gaming data |
| US10537809B2 (en) | 2017-12-06 | 2020-01-21 | Activision Publishing, Inc. | System and method for validating video gaming data |
| US10981051B2 (en) | 2017-12-19 | 2021-04-20 | Activision Publishing, Inc. | Synchronized, fully programmable game controllers |
| US11278813B2 (en) | 2017-12-22 | 2022-03-22 | Activision Publishing, Inc. | Systems and methods for enabling audience participation in bonus game play sessions |
| US10596471B2 (en) | 2017-12-22 | 2020-03-24 | Activision Publishing, Inc. | Systems and methods for enabling audience participation in multi-player video game play sessions |
| US10864443B2 (en) | 2017-12-22 | 2020-12-15 | Activision Publishing, Inc. | Video game content aggregation, normalization, and publication systems and methods |
| US11263670B2 (en) | 2018-11-19 | 2022-03-01 | Activision Publishing, Inc. | Systems and methods for dynamically modifying video game content based on non-video gaming content being concurrently experienced by a user |
| US11192028B2 (en) | 2018-11-19 | 2021-12-07 | Activision Publishing, Inc. | Systems and methods for the real-time customization of video game content based on player data |
| US11115712B2 (en) | 2018-12-15 | 2021-09-07 | Activision Publishing, Inc. | Systems and methods for indexing, searching for, and retrieving digital media |
| US11679330B2 (en) | 2018-12-18 | 2023-06-20 | Activision Publishing, Inc. | Systems and methods for generating improved non-player characters |
| US11305191B2 (en) | 2018-12-20 | 2022-04-19 | Activision Publishing, Inc. | Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay |
| US11344808B2 (en) | 2019-06-28 | 2022-05-31 | Activision Publishing, Inc. | Systems and methods for dynamically generating and modulating music based on gaming events, player profiles and/or player reactions |
| US11097193B2 (en) | 2019-09-11 | 2021-08-24 | Activision Publishing, Inc. | Methods and systems for increasing player engagement in multiplayer gaming environments |
| US11423605B2 (en) | 2019-11-01 | 2022-08-23 | Activision Publishing, Inc. | Systems and methods for remastering a game space while maintaining the underlying game simulation |
| US11712627B2 (en) | 2019-11-08 | 2023-08-01 | Activision Publishing, Inc. | System and method for providing conditional access to virtual gaming items |
| US11537209B2 (en) | 2019-12-17 | 2022-12-27 | Activision Publishing, Inc. | Systems and methods for guiding actors using a motion capture reference system |
| US11420122B2 (en) | 2019-12-23 | 2022-08-23 | Activision Publishing, Inc. | Systems and methods for controlling camera perspectives, movements, and displays of video game gameplay |
| US11563774B2 (en) | 2019-12-27 | 2023-01-24 | Activision Publishing, Inc. | Systems and methods for tracking and identifying phishing website authors |
| US11316658B2 (en) | 2020-07-20 | 2022-04-26 | Bank Of America Corporation | System and method for securing a database by scrambling data |
| US11524234B2 (en) | 2020-08-18 | 2022-12-13 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically modified fields of view |
| US11351459B2 (en) | 2020-08-18 | 2022-06-07 | Activision Publishing, Inc. | Multiplayer video games with virtual characters having dynamically generated attribute profiles unconstrained by predefined discrete values |
| CN111737722B (zh) * | 2020-08-21 | 2020-12-01 | 北京志翔科技股份有限公司 | 内网终端间数据安全摆渡方法及装置 |
| US12001523B2 (en) | 2020-09-29 | 2024-06-04 | International Business Machines Corporation | Software access through heterogeneous encryption |
| US11833423B2 (en) | 2020-09-29 | 2023-12-05 | Activision Publishing, Inc. | Methods and systems for generating level of detail visual assets in a video game |
| US11724188B2 (en) | 2020-09-29 | 2023-08-15 | Activision Publishing, Inc. | Methods and systems for selecting a level of detail visual asset during the execution of a video game |
| US11717753B2 (en) | 2020-09-29 | 2023-08-08 | Activision Publishing, Inc. | Methods and systems for generating modified level of detail visual assets in a video game |
| US11439904B2 (en) | 2020-11-11 | 2022-09-13 | Activision Publishing, Inc. | Systems and methods for imparting dynamic and realistic movement to player-controlled avatars in video games |
| US12485347B2 (en) | 2020-11-11 | 2025-12-02 | Activision Publishing, Inc. | Systems and methods for procedurally animating a virtual camera associated with player-controlled avatars in video games |
| US12179113B2 (en) | 2020-12-09 | 2024-12-31 | Activision Publishing, Inc. | Methods and systems for dynamically selecting and modifying digital assets within game elements of a multiplayer video game |
| US12097430B2 (en) | 2020-12-28 | 2024-09-24 | Activision Publishing, Inc. | Methods and systems for generating and managing active objects in video games |
| US12064688B2 (en) | 2020-12-30 | 2024-08-20 | Activision Publishing, Inc. | Methods and systems for determining decal projections intersecting spatial units in a frame of a game space |
| US11794107B2 (en) | 2020-12-30 | 2023-10-24 | Activision Publishing, Inc. | Systems and methods for improved collision detection in video games |
| US11853439B2 (en) | 2020-12-30 | 2023-12-26 | Activision Publishing, Inc. | Distributed data storage system providing enhanced security |
| ES3073651T3 (en) * | 2021-02-02 | 2026-07-14 | Siemens Mobility GmbH | Methods, apparatuses and computer programm product for running software on a computer for controlling a technical system, in particular a system for railway control system |
| US12434152B2 (en) | 2021-10-13 | 2025-10-07 | Activision Publishing, Inc. | Systems and methods for dynamically enabling feature changes in a mobile game |
| US11422977B1 (en) * | 2021-10-15 | 2022-08-23 | Morgan Stanley Services Group Inc. | High-compression, high-volume deduplication cache |
| US12293076B2 (en) | 2021-10-15 | 2025-05-06 | Morgan Stanley Services Group Inc. | High-compression, high-volume deduplication cache |
| US12370445B2 (en) | 2021-11-12 | 2025-07-29 | Activision Publishing, Inc. | Computer implemented method of scalably generating gaming assets for rendering during gameplay |
| US12589303B2 (en) | 2021-11-12 | 2026-03-31 | Activision Publishing, Inc. | Computer-implemented methods for generating level of detail assets for dynamic rendering during a videogame session |
| US12544674B2 (en) | 2021-12-20 | 2026-02-10 | Activision Publishing, Inc. | System and method for using room-scale virtual sets to design video games |
| US12685930B2 (en) | 2022-09-13 | 2026-07-21 | Activision Publishing, Inc. | Systems and methods for efficient content management and distribution for video game development |
| US12589300B2 (en) | 2022-09-30 | 2026-03-31 | Activision Publishing, Inc. | Systems and methods for improved corner slicing in a multiplayer video game |
| US12674718B2 (en) | 2022-12-30 | 2026-07-07 | Activision Publishing, Inc. | LED wall surface reflectance |
| EP4629680A1 (en) * | 2024-04-04 | 2025-10-08 | Nxp B.V. | Secure element and operating method |
Family Cites Families (8)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4588991A (en) * | 1983-03-07 | 1986-05-13 | Atalla Corporation | File access security method and means |
| EP0268139A3 (en) * | 1986-11-05 | 1991-04-10 | International Business Machines Corporation | Manipulating rights-to-execute in connection with a software copy protection mechanism |
| US5191611A (en) * | 1989-04-03 | 1993-03-02 | Lang Gerald S | Method and apparatus for protecting material on storage media and for transferring material on storage media to various recipients |
| JP3073590B2 (ja) * | 1992-03-16 | 2000-08-07 | 富士通株式会社 | 電子化データ保護システム、使用許諾者側装置および使用者側装置 |
| AU678985B2 (en) * | 1992-09-21 | 1997-06-19 | Uniloc Corporation Pty Limited | System for software registration |
| US5327563A (en) * | 1992-11-13 | 1994-07-05 | Hewlett-Packard | Method for locking software files to a specific storage device |
| US5341429A (en) * | 1992-12-04 | 1994-08-23 | Testdrive Corporation | Transformation of ephemeral material |
| US5337357A (en) * | 1993-06-17 | 1994-08-09 | Software Security, Inc. | Method of software distribution protection |
-
1994
- 1994-04-25 US US08/238,418 patent/US5563946A/en not_active Expired - Lifetime
-
1995
- 1995-04-10 DE DE69528408T patent/DE69528408T2/de not_active Expired - Lifetime
- 1995-04-10 EP EP95105400A patent/EP0679977B1/en not_active Expired - Lifetime
- 1995-04-17 JP JP7090571A patent/JPH07295798A/ja active Pending
-
2001
- 2001-12-12 JP JP2001379059A patent/JP3914430B2/ja not_active Expired - Lifetime
Cited By (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO1998027494A1 (en) * | 1996-12-18 | 1998-06-25 | Hitachi, Ltd. | Electronic document management method |
| JP2001216440A (ja) * | 2000-01-26 | 2001-08-10 | Gtx Corp | 電子商取引を行うための方法及び装置 |
| JP2007534080A (ja) * | 2004-04-23 | 2007-11-22 | ジョン・グルームス | ウェブベースのデータコンテンツ配信システム |
| JP2007281849A (ja) * | 2006-04-06 | 2007-10-25 | Sharp Corp | プレーヤシステム及び信号出入力切換方法 |
Also Published As
| Publication number | Publication date |
|---|---|
| US5563946A (en) | 1996-10-08 |
| JP2002251325A (ja) | 2002-09-06 |
| DE69528408T2 (de) | 2003-07-03 |
| DE69528408D1 (de) | 2002-11-07 |
| EP0679977B1 (en) | 2002-10-02 |
| EP0679977A1 (en) | 1995-11-02 |
| JP3914430B2 (ja) | 2007-05-16 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3503773B2 (ja) | ファイルへのアクセスを保護するための方法および装置 | |
| JP3503774B2 (ja) | ファイルへのアクセスを保護するための方法および装置 | |
| JP3914430B2 (ja) | ソフトウェア・オブジェクトの配布を可能にするための方法および装置 | |
| KR100200444B1 (ko) | 소프트웨어 객체 배포 방법 | |
| KR100200443B1 (ko) | 소프트웨어 객체 배포 방법 | |
| US8275709B2 (en) | Digital rights management of content when content is a future live event | |
| JP2659896B2 (ja) | 構造化文書複製管理方法及び構造化文書複製管理装置 | |
| US5673316A (en) | Creation and distribution of cryptographic envelope | |
| US20050177742A1 (en) | Method and system for managing a data object so as to comply with predetermined conditions for usage | |
| US20120090018A1 (en) | Digital rights management of content when content is a future live event | |
| US20070277246A1 (en) | Distributing Access to a Data Item | |
| US7464273B2 (en) | Content utilizing method | |
| JPH09138827A (ja) | ディジタル著作物流通システム | |
| GB2404828A (en) | Copyright management where encrypted content and corresponding key are in same file | |
| WO1998027494A1 (en) | Electronic document management method | |
| US20040123126A1 (en) | Method and apparatus for deterring piracy | |
| JPWO1998027494A1 (ja) | 電子文書管理方法 | |
| HK1070714B (en) | System and methods providing secure delivery of licenses and content | |
| HK1070714A1 (zh) | 提供許可和內容的安全遞送的系統和方法 |