JP4309042B2 - 暗号化された素材の動的な変換の方法とシステム - Google Patents
暗号化された素材の動的な変換の方法とシステム Download PDFInfo
- Publication number
- JP4309042B2 JP4309042B2 JP2000513380A JP2000513380A JP4309042B2 JP 4309042 B2 JP4309042 B2 JP 4309042B2 JP 2000513380 A JP2000513380 A JP 2000513380A JP 2000513380 A JP2000513380 A JP 2000513380A JP 4309042 B2 JP4309042 B2 JP 4309042B2
- Authority
- JP
- Japan
- Prior art keywords
- software
- encrypted
- operating system
- user
- license
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
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]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
-
- 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/12—Protecting executable software
- G06F21/121—Restricting unauthorised execution of programs
- G06F21/125—Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
- G06F21/126—Interacting with the operating system
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
-
- 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/2135—Metering
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Technology Law (AREA)
- Multimedia (AREA)
- Storage Device Security (AREA)
- Table Devices Or Equipment (AREA)
- Detergent Compositions (AREA)
- Graft Or Block Polymers (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Mobile Radio Communication Systems (AREA)
- Analysing Materials By The Use Of Radiation (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
- Stored Programmes (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
Description
(技術分野)
本発明は、電子的デジタル形式で存在しているコンピュータ・ソフトウエアおよび他の知的所有物件の、計測されての使用に関する。本発明の最終結果は、ソフトウエア・オン・デマンドやソフトウエア購読などのサービスを可能にする。本発明はまた、コンピュータ・ソフトウエアおよび他の知的所有物件の海賊行為防止に対しても適用することができる。
【0002】
(背景技術)
現行の消費者市場にあっては、デジタル形式で存在するコンピュータ・ソフトウエアおよび他の知的所有物件は、その他の消費用ハード物品と同様の販売が主としてなされている。しかしビデオ・テープおよび他のハード物品が日常的に賃貸される反面、ソフトウエア製品は、一般的にはまだなお購入を基準にしてしか入手することができない。その結果、少なくとも2つの有用なサービス、即ち、ソフトウエア・オン・デマンドとソフトウエア購読が概して用いられていない。ソフトウエア・オン・デマンドは、使用者が使用回数を基準にしてソフトウエア製品の支払いを行えばよいというサービスである。ソフトウエア購読は、月に1度といったような定期的予約購読を基準にして、1以上のソフトウエア製品を使用者が入手可能であるというサービスである。
【0003】
これらのサービスが明らかに有用であるにもかかわらず、ソフトウエア製品に内在する性質の故に、技術提供業を可能にすることへの効果的な技術的挑戦が躊躇されてきた。これらのサービスを首尾よく支援するには、その可能にする技術は以下の範疇に合致しなければならない。
I.機密保護。ソフトウエア・オン・デマンドおよび購読形式で入手できるソフトウエア製品は、完全に機密保護対策がとられた方法で保護され、また管理されなければならない。可能にする技術は、もっとも熟練し、また果敢なるハッカ連中からソフトウエアを防衛しなければならない。とりわけ、熟練したシステムレベルでのハッカ連中は簡単にドアを開けてしまうので、ソフトウエアがそのオリジナルの状態で中間保存媒体にそのまま長くは存在し得ない。また可能性としてだが、誰にとってもアクセスが可能であるようなそんな中間保存媒体を利用できるようになるユーティリティがあるかも知れない。
II.非被侵入性。可能にする技術は、保護および計測された使用のためにソース・コードの変更を必要としてはならない。対照的に、侵入技術はそれ自身をソフトウエア製品のソース・コード中に埋設し、そのソフトウエアの再編集を必要とさせる。これに取り組むことは、余分なコーディング実施とリソースの試験実施との点で、保護プロセスにおける大変な費用負担を発生し、また、非常ににエラーを発生しやすい。
III.最小限のシステム費用負担。可能にする技術は、ソフトウエア製品の使用を保護し、起動し、および計測する間に、著しい費用負担を賦課してはならない。可能にする技術によって生じる一般的な費用負担は、追加のRAMとハードディスクの記憶スペースが必要であること、保護されたソフトウエアを復号化する前に保護を行うプロセスを起動すること、および使用を監視する間でのCPUなどの別のシステム・リソースにとっての競合が含まれる。
IV.システム・クロック再設定に対する耐性。コンピュータ・システムのクロック設定を変更することによって、ソフトウエア製品の使用者は、許諾されている使用期間を著しく延長することができ、その結果、ソフトウエア・オン・デマンドおよびソフトウエア購読のサービスの有効性を損なってしまう。可能にする技術は、システム・クロック再設定に対する防衛を可能にし、対策行為をとることが可能であるものでなくてはならない。
V.絶えず保護を行い計測を行うこと。ソフトウエア発行者が、一旦、ソフトウエアを可能にする技術の保護と管理との下においたならば、それは絶えず保護されまた管理されなければならない。その後、複製をしたり再導入をしたりしても、その保護と管理とを駄目なものにしてはならない。
VI.使用者が使いやすいものであること。可能にする技術は、使用者にとって著しい、システム設定上の変化をもたらすやり方でコンピュータ使用者の環境を変化させてはならない。使用者インターフェイスは完全に直感的なものであり、容易に使用できるものでなくてはならない。
【0004】
入手することのできる、従来技術での保護技術は、「ラッパー」および「リディレクション」技術とに基づいている。「ラッパー」は、しばしばオペレーティング・システム・シェル・プログラムまたは保護されたソフトウエアの変更された起動コード部の形式をとる。その機能は、保護されたソフトウエアに対する直接のアクセスを遮蔽するものである。保護されたソフトウエアが使用者によってアクセスされた場合、「ラッパー」が最初に実行される。暗号化された状態にある保護されたソフトウエアはその後復号化され、オリジナルの状態で一時保存媒体上に再保存される。「ラッパー」はその後、アクセスを一時保存媒体上の再保存されたソフトウエアに転送する。
【0005】
カリフォルニャ州サンタ・クララのテストドライブ・コーポレーションによって開発されたシステムは、購入前試行ソフトウエア評価サービスを提供する。このシステムは、ソフトウエアのオリジナル版を、限定された期間もしくは評価期間だけしか使用することができない無効版に変換する。もしソフトウエアの購入を希望するならば、そのソフトウエアをオリジナルの状態に変換する解錠コードを購入することができる。好ましい実施態様にあっては、この従来技術でのシステムは、例えばコンピュータ・プログラムのような、選択された素材に適用され、また、その素材の一部分はオリジナルの素材からは分離される。この方法にあっては、素材の分離された部分と素材の残りの部分とを含むオリジナル素材の変質された版がつくられる。試用期間中、その素材の変質された版は一時保存媒体中におかれるが、分離された部分のみはシステム使用者によってたやすくアクセスされる。さらに、素材の分離された部分は、変形された部分に置き換えられ得る、例えば、素材のアクセスされる回数である数字を限定する目的でカウンタが含まれ得るし、オリジナルの素材に対して、例えば、音声信号における警告音や映像信号における遮蔽物のような妨害素材が加えられ得る。
【0006】
これら「ラッパー」および「リディレクション」技術を基準にしたシステムにおける幾らかの欠点は明白である。
I.機密保護の欠陥。「ラッパー」および「リディレクション」技術は、再保存されたソフトウエアの全てもしくはオリジナルの状態におけるそのソフトウエアの残りの部分を物理的に受け入れるのに、一時保存媒体を必要とするので、まさしくその、システム使用者によるアクセスが可能である、オリジナル状態での素材の存在が、システムをハッカの攻撃に対して弱いものにしている。オペレーティング・システムの専門家にとって、オリジナルの状態にある素材へのアクセスを入手し、素材の海賊版を再販売することは可能である。ユーティリティ・ソフトウエア・プログラムもまた、この海賊行為を繰り返して成し遂げるために、ことによると開発され得たかも知れないし、可能なサービスの有効性を損なうためにパブリック・ドメインで入手できるようにされているかも知れない。「ラッパー」と「リディレクション」技術は、初心者からの攻撃に対してソフトウエアを保護することができるものの、専門家に対しては、高度に機密保護をするものではない。
II.システムの負担。「ラッパー」プログラムを起動すること、そのオリジナルの状態で再保存されたソフトウエアを物理的に保存すること、および、一時保存媒体を創出し管理すること、これら全ては、使用者が必要とするソフトウエアを起動するに先立っての遅れを負わせる。これらの行為はまた、オペレーティングシステムが走らせる別のプロセスを有する別のシステム・リソースと競合する。
III.スペースの負担。オリジナルの状態でランダム・アクセス・メモリ(RAM)中に再保存されたソフトウエアの保存領域は、保護されたソフトウエアが通常必要とするRAMスペースの100%以上を余分に必要とする。多重の保護されたソフトウエアを同時に実行することのできる多重処理オペレーティングシステムにおいては、この負担は倍化され、またシステムの動作性能に顕著に影響を与える。
IV.好まれざる邪魔物。コンピュータ・システム中に一時保存媒体、例えば仮想的デバイスのような、を創出することは、コンピュータ・システム使用者にとって通常好まれることのない、異質の人工遺物である。したがって、使用者は、ラッパーやリディレクション技術で発生させられた邪魔物や人工遺物を除去するため、結局はオリジナルの素材を完全な姿で購入しようと望むことであろう。従って、これらの技術は、絶え間なく使用を計測し保護を行うサービス提供には向いていない。
【0007】
現在のところ、復号化された素材を一時媒体上に転送をしたり保存したりすることなく、暗号化されたソフトウエアおよび他の電子的素材のリアルタイムの復合化を提供できる高度に機密保護を行う方法は知られていない。
【0008】
(発明の開示)
本発明は、ソフトウエア・オン・デマンドおよびソフトウエア購読のサービスを可能にする、ダイナミック変換フィルタ技術に基づいた方法とシステムを提供する。本発明はまた、その他の電子的素材の販売においても有用である。本発明において利用される装置は、本技術の保護下にある復号化された素材にとって如何なる中間保存領域をもつくらない。そのかわりに、本装置は、オペレーティング・システムの仮想的組込部分として構築され、例えばハード・ドライブのような入出力デバイスに出入りする「読み出し」、「書き込み」、および「開く」/「実行する」全てのアクセスを監視し「濾過」する。保護された素材が「読み込み」、「書き出し」、もしくは「開く」/「実行する」アクセスを受けたならば、変換フィルタはそれ自身を、素材を低レベルのファイル・システム層を通って高レベルのアプリケーション層に読み込みをするのに必要とされるクリティカルパスに位置づける。素材は暗号化された状態で、その変換フィルタに入る。変換フィルタは素材が通過するときにそれを復号化し、オリジナルの状態にあるその素材を、アクセス要求を実行するために高位のレベルにあるオペレーティング・システム構成要素に引き渡す。中間保存領域の必要性が除去されたので、そのオリジナルの状態で復号化された素材は、オペレーティング・システム構成要素の組込部分にとってのみ見えるものであり他のシステム使用者は見えない。結果として、従来技術でのシステムを上回って機密保護が格段に改善される。
【0009】
変換フィルタは、完全に異なった目的用にオペレーティング・システムが提供するプログラム可能なサービスを、「濾過する」機密保護および管理システムへと変換することによって形成される。このプログラム可能なサービスは、ウインドウズ95TMソフトウエアの場合には、仮想的デバイス・ドライバであり、また、ウインドウズNTTMの場合には、カーネル・モードのドライバであることが好ましい。
【0010】
本発明は、保護された素材の内部に邪魔をしないように埋設された素材と一緒に作動することができる。そのことは、幾ばくかの簡単に追従できるステップを踏むだけで如何なる素材をも復号化するユーティリティを提供する。本発明は、アメリカ合衆国政府および民間企業から入手可能な標準データ暗号化の仕組みを採用する。しかし、本発明にある装置は、復号化された素材の機密保護をさらに保障する目的で、拡張されたキー管理機能を提供する。消費者のパソコン上に導入された全ての素材は、2つの暗号化プロセスを通過する。第2の暗号化プロセスは、そのコンピュータ使用者のユニークIDから生成される動的にユニークなキーを必要とする。そのキーの動的生成は、如何なる解読用のキーもハード・ディスク上に保存されたファイルから直接的に得ることができないことを保証する。
【0011】
本発明は、変換フィルタが、デジタル形式で存在しているソフトウエア製品および他の知的所有物件の使用を絶えず管理し、計測し、課金することを可能にする。そのような素材はオン・デマンドで何回も注文することができるし、また同様に購読を基準にして入手することもできる。導入された素材を別のコンピュータに複製することは、単にその素材の暗号化された版をつくり出すに過ぎない。しかし、復号化された素材の永久的複製は、その発行者の権限でおこなわれる。
【0012】
本発明は、そのような素材の使用者にとって、モデム経由もしくは現存の民営ネットワークやインターネット接続を介して、交換所のサーバに接続することができるようにするシステムの構成要素を提供する。その交換所のサーバは、注文と課金用のカード番号との受領に基づき、引き換えに、素材の計測されての使用を可能にする許認可コードを生成する。現行の受入可能な課金用カードは通常のクレジット・カードとデビット・カードとを含んでいる。将来の支払方法は、実例的にはスマート・カードとデジタル・キャッシュとを含むことであろう。システムのこれら構成要素はまた、利用者の返還および交換の処理を可能にすることであろう。
【0013】
本発明は、例えばインターネット上での電子的素材販売や、実際の店先で販売されるCD−ROMや、DVD,VCD,ケーブル・モデムおよびその他の放送チャネルのような、あらゆる可能なチャネル経由で販売される素材に適用することが可能である。
【0014】
本発明はまた、ネットワーク・ファイル・システムにわたって、素材に対するアクセスがシステムによって等しく管理され計測されるネットワーク環境において作動する。
【0015】
(発明を実施するための最良の形態)
本発明は、マイクロソフトのウインドウズ95もしくはウインドウNTのようなオペレーティング・システムの内部に組込まれた方法と装置である。この方法と装置は一時保存媒体への転送を行うことなく即時に暗号化された素材の動的な復合化を可能にする。その結果、本発明は電子的形態にあるソフトウエア製品および他の素材が暗号化を通して保護され、また、管理され計測されての使用をするために利用できるようにする。
【0016】
本発明の好ましい実施態様にあっては、変換フィルタは、多重処理オペレーティング・システム環境で動作しているカーネル・レベルのプログラムとして構築されており、また、暗号化された素材はアプリケーション・ソフトウエアである。しかし、本発明は同様に、べつの状況、例えば暗号化された形式にある音声や映像素材の販売にも適用することができる。
【0017】
図1は、高レベルの基本設計概念図であり、オペレーティング・システム内部における変換フィルタの位置と機能とを示している。
【0018】
高レベルのアプリケーション・プログラムは、ローカル・アプリケーションおよびネットワーク・アプリケーション101,102,103を含むが、「読み込み」、「書き込み」および「開く」/「実行する」行為を成就するため、システムの入出力デバイス106上に常駐しているソフトウエア素材へのアクセスを要求する。これらの要求は、OSのファイル・システム・マネージャ107もしくはネットワーク・サービス・プロバイダ108のようなオペレーティング・システム構成要素に対して提出されなければならず、また、ファイル・システム・ドライバ層もしくは同様にカーネル・レベル上にあるネットワーク・ファイル・システム・ドライバ層105に中継されなければならない。本発明によると、変換フィルタ104は、アプリケーション101,102,103とファイル・システム・ドライバ層105との間に位置される。実例として、ウインドウズ95TMソフトウエアの状況にあっては、変換フィルタは仮想的デバイス・ドライバとして構築され、またウインドウズNTTMの場合には、カーネル・モードのドライバとして構築される。
【0019】
もし、ローカルおよび/またはネットワークのアプリケーションから来ている、ファイル・システムに対するアクセス要求が「下流」に進んでいるものであると判断された場合、その後、オペレーティング・システムの上位層に対して入出力デバイスから読み出されている全てのデータは「上流」に進んでいるものであると判断される。下流(アプリケーションからファイル・システムに下る)および上流(ファイル・システムらアプリケーションへ)の両データは、以降本書類ではクリティカルパスと称する特定の経路を通過しなければならない。変換フィルタ104は、クリティカルパス中にある。
【0020】
データが変換フィルタを上流方向に向けて通過するときは常に、変換フィルタは暗号化されたソフトウエアをそのオリジナルの状態に変換するという必要な変換を遂行する。そのオリジナルの状態に転位されてしまっているソフトウエアはその後、オペレーティング・システムの上位層に引き渡される。もしも要求がアプリケーション、例えば画像閲覧ソフトからのものでディスプレイ用にファイルを開くというものであった場合、変換されたソフトウエア素材が、最終的にはそのアプリケーションに引き渡される。要求を出しているアプリケーションの見地からすれば、この暗号化されたソフトウエア素材を開くことは、別のオリジナルのソフトウエア素材を開くことと何も変わることはない。変換プロセスは、要求を出しているソフトウエアに対して完全に透明なものである。もしも要求がファイルを実行することで(例えば、ファイル上でマウスのダブル・クリックがなされる)、オリジナルのソフトウエア素材が実行可能なプログラムである場合、変換されたソフトウエアは、メモリ内部で実行をするようにオペレーティング・システムの読み込み機能に引き渡される。このプロセスは、「濾過をすること」と考えられる。というのは、上流に移動している暗号化されたソフトウエアは、装置に入り、そして、あたかも濾過をするデバイスを通過したかのように、復号化された状態で出てくるからである。全ての「濾過をする」プロセスの間、復号化されたソフトウエアの如何なる中間保存領域もシステム使用者に対して露呈されることがない。すべての引渡と復号化のプロセスとは、高度に機密保護がとられている方法にある内部活動としてオペレーティング・システムの内部で行われる。
【0021】
変換フィルタ104は、あたかもそれがオペレーティング・システムの組込部分であったかのように構築される。追加の機密保護策が変換フィルタ104内部に組込まれる。それで上流および下流のデータを「濾過をする」ことが可能であるのみならず、またオペレーティング・システムの中のハッキング行為を監視し、いかなるのであれ機密保護を破壊するものが生じてくるのを防止するための対策をとる。
【0022】
図2は、ブロック図で、事前導入の暗号化されたステップへとオリジナルのソフトウエア素材を暗号化しているプロセスを示すものである。図2に示されるように、オリジナルのソフトウエア素材MO201は、暗号化プロセスPE203において変換関数fE202のアプリケーションによって暗号化される。暗号化のプロセスは、DESもしくはRSAのような標準の暗号化プロセスであることが好ましい。この暗号化プロセスの結果が、暗号化されたソフトウエアME204であり、CD−ROM、インターネットなどのような種々の販売チャネルを通じて機密保護状態で転送され得るものである。
【0023】
第2のプロセスPB209の間、ソフトウエア使用の管理と計測とを首尾よく行うことの支援をする4つの別の構成要素がME204に追加される。これらの構成要素とは、使用許諾マネージャ205、利用者アプリケーション206、変換フィルタ207、および製品独自の署名データ208である。使用許諾マネージャ205は、ソフトウエア・プログラムであり、暗号化されたソフトウエアの使用に関するデータを含む使用許諾のデータベースを整備すること、暗号化されたソフトウエア素材MEの使用者との仲立ちをすること、および許認可された使用期間の終了に伴い暗号化されたソフトウエア素材の使用打ち切りを行うことに役割を果たす。利用者アプリケーション206は、ソフトウエア・プログラムであり、交換所のサーバから、暗号化されたソフトウエア素材MEを使用するための許認可を要求するのに、および交換所のサーバからの適切な許認可コードを受領するのに用いられる。この活動はまた電子的支払いの何らかの形式、例えばクレジットもしくはデビット・カードの番号提供のような、を伴うことができる。加えて、利用者アプリケーションはまた、料金徴収、販売促進とアップグレード情報、および追加ソフトウエアのダウンロードを行う能力を含むことができる。変換フィルタ207は、当のソフトウエアであり、暗号化されたソフトウエア素材MEへのアクセスを管理する。このソフトウエアの更なる詳細が、図1および4との関連で記述される。製品独自の署名データ208は、特定の暗号化されたソフトウエア・素材MEに対してユニークなコードである。
【0024】
プロセス209の出力は、単一出力ファイルMI210であり、事前導入の暗号化されたソフトウエア素材であって、全ての入力構成要素204、205、206、207、208から構成される。プロセス209は、構成要素204、205、206、207、208を単一のソフトウエア製品へと単に結合させることが好ましい。他に、プロセス209はまた、追加の暗号化プロセスを伴うことができたはずである。
【0025】
本発明の好ましい実施態様にあっては、出力ファイルMIは、オリジナルのソフトウエア素材の名称、アイコンおよびその他のプロパティを見かけ上そのまま引き継ぐ。従って、外部から見た限りでは、このファイルはオリジナルのソフトウエアと全く同じに見える。本実施態様は主として、ソフトウエア製品のパッケージを行うに際しての、ソフトウエア発行者にとっての余分なステップを削除するためのものである。
【0026】
次に、ソフトウエア発行者は、あたかも図2の暗号化プロセスが決して起きたことがないかのように、自分たちのソフトウエアを正常な導入パッケージに入れ込むのに自分たちが気に入っている導入パッケージング・ユーティリティ、例えばインストール・シールドTMのような、を用いることができる。
【0027】
図3はブロック図であり、使用者のパソコン上に暗号化されたソフトウエア素材を導入しているプロセスを示している。好ましい実施態様にあっては、出力ファイルMIはそれ自身の導入プロセス302を、使用者がソフトウエアの導入の通常手順を行った後に、正にあたかもそのソフトウエアは暗号化されたことなどなかったかのように起動する。導入プロセスPI302は、事前導入されたソフトウエア素材MI210/301のキーとなる構成要素を生み出す。最初、使用許諾マネージャ303、利用者アプリケーション304および変換フィルタ305が抽出されてシステム中の適当な隠れた場所に導入される。製品独自の署名データ306および暗号化されたソフトウエアMEが同様に持ってこられる。
【0028】
同時に、DP307として表されている使用者特性データおよびオペレーティング・システム独自の情報がプロセスPU312中で変換関数f1308によって変換され、利用者にとってのユニークID313を生成する。ユニークIDを生成することでは、従来技術のどんな数であってもプロセス312で使用することができる。便利なように、ユニークID313の生成にあっては、我々はミリ秒で測定された精度、というのは2人の使用者が同じミリ秒において彼らのソフトウエアを導入する確率は事実上ゼロだから、の時刻印を使用するように設定する。ユニークID313は引き続き、システムのあらゆる局面および構成要素中で使用される。
【0029】
製品独自の署名データ306、ユニークID313および暗号化されたソフトウエアMEは、プロセスPES309に供給される。プロセスPESは、変換関数fEの逆関数を用い、ソフトウエア素材を復号化し、それによってオリジナルの素材MOを再保存する。ここまでの復合化プロセスは周知である。その後、ユニークID313と製品独自の署名データ306とに基づいたユニーク暗号化キーで即座にMOを再度暗号化する。再び、例えばDESもしくはRSAのような標準暗号化プロセスが使用され得る。その結果が、ユニークに暗号化されたソフトウエア・素材MU310である。ソフトウエア・素材MUはその後、ドライバ層105の上方に導入される(図1を参照のこと)。
【0030】
好ましい実施態様にあっては、本発明は、MUを生成するのに使用されたユニークな暗号化キーを絶対に保存しない。必要な場合には常に、このユニーク・キーは同じ入力(ユニークIDおよび製品独自の署名データ)とキー生成プロセスとを用いて動的に再生成することができる。このキー管理方策があるため、暗号化されたソフトウエア素材を損なおうとしても極めて困難なものにしている。キーのユニークさはまた、一旦ソフトウエアが導入されたならば、どんな2人をもってきても、それらの使用者のコンピュータ上に同一である暗号化されたソフトウエア素材は存在することがないということを保証する。
【0031】
導入の最後に、図4との関連で以下に記述される使用管理や計測のプロセスを首尾よく実行するための、あらゆる使用許諾情報、使用のカウンタおよびその他の重要な情報を保持する使用許諾データベースDL311が生成される。使用許諾データベースは暗号化されたソフトウエアを「登録された」状態にあるもの、即ち、本発明のシステムの影響下にあるものとして識別する。このデータベースはまた、コンピュータ・システムに保存される。
【0032】
図1を参照する。変換フィルタ104は、コンピュータ・システムに導入され、入出力デバイス106上に常駐しているソフトウエア・ファイルへのあらゆるアクセス要求を途中で捕捉する。ウインドウズ95TMオペレーティング・システムにあっては、このことは当の変換フィルタを仮想的デバイス・ドライバとして導入することで成し遂げられる。ウインドウズNTTMオペレーティング・システムにあっては、このことは当の変換フィルタをカーネル・モード・ドライバとして導入することで成し遂げられる。
【0033】
ソフトウエア素材を読み出したり、書き込んだり、実行したりする、もしくは見るためにソフトウエア素材を開いたりする使用者行為は、オペレーティング・システムによって処理される。より高いレベルのオペレーティング・システム処理(例えば図1のローカルもしくはネットワーク・アプリケーション101、102、103)は、それら行為の要求を下流のドライバ層105に向かって変換フィルタ104を通過させていく役割を有する。
【0034】
図4は変換フィルタの内部プロセスのフローが記述されたものを示している。ボックス416に示されるように、変換フィルタはあらゆる入出力要求にそなえて、オペレーティング・システムを絶えず監視している。そんな要求が変換フィルタに到着すると、それはソフトウエアと使用許諾情報を得るプロセス403を起動する。このプロセスは要求されたソフトウエアにとっての、そのソフトウエアの使用の最新の状態、使用許諾、許認可・コード、失効日、製品独自の署名データ208/306、を含む使用許諾情報(もしあるならば)をその他の関連する情報と併せて取得する。引き続き、2つの確認テストが適用される。即ち、ソフトウエアが登録されているかどうかのテスト(ステップ406)および使用許諾が有効であるかどうかのテスト(ステップ407)である。もし、要求されたソフトウエアが登録されていなかった場合、変換フィルタは、それ以上何のアクションもとらずに、単純に管理をオペレーティング・システムのステップ413における要求プロセスに移転して戻す。もし、ソフトウエアが登録されている場合、変換フィルタはステップ407において、有効である使用許諾が存在するかどうかをチェックする。有効な使用許諾がない場合、利用者アプリケーションがステップ414で導入され、使用者に更なる使用を注文するかまたはソフトウエアを購入するように促す。
【0035】
注文入力プロセスは、システムの利用者アプリケーション構成要素によって取扱われる。利用者アプリケーションは使用者のコンピュータを交換所のサーバにモデム経由もしくは現行のインターネット接続を介して接続する。交換所のサーバは、有効であるクレジット・カードまたはデビット・カードの番号の受領に基づいて、引き換えに許認可コードを生成し、登録されていたソフトウエアの正当な使用ができるようにする。
【0036】
もし、ソフトウエアにとっての有効な使用許諾が見られ、それを実行することが許認可された使用期間内である場合、変換フィルタは機密保護監視プロセス408を起動し、復号化された後変換フィルタを出て行くデータの乗っ取りをしようと試みているものと思われるあらゆる第3者のプロセスの走査を遂行する。オペレーティング・システム中に疑わしい行為が存在する場合、変換フィルタは潜在的脅威を除去するための対策をとる。
【0037】
次いで、暗号化されたソフトウエアを復号化するのに使用されるべきユニーク・キーは、キー生成プロセス409において生成される。このキーは、ユニークID313と製品独自の署名データ306とから生成される。生成された復合化キーと暗号化プロセス309の逆関数とを用いて、変換フィルタはその後、即時に、復号化を行う変換プロセス410においてソフトウエアのあらゆる暗号化された部分を復号化する。オリジナルの状態に復号化されたソフトウエアはその後、ステップ413で要求プロセスに引き渡される。オペレーティング・システムはいまや、アクセスを要求したアプリケーションに対して復号化されたソフトウエア素材の実行即ち送り込みを首尾よく処理することができる。
【0038】
復号化されたソフトウエアが要求しているプロセスに一旦引き渡されたならば、変換フィルタは、ステップ411で使用計測カウンタを起動する。使用カウンタが走っている間変換フィルタは、ステップ412で使用許諾期間違反がないかどうか、即ち使用許諾の満了がないかどうか、絶えず使用の量をテストする。ソフトウエアにとっての使用許諾期間の違反がある、即ち使用許諾が満了してしまっている場合、変換フィルタは、使用許諾マネージャを起動するプロセスをステップ415で起動する。使用許諾マネージャは使用許諾データベースを適切に整備し、最新日のものにし、種々の伝言で使用者を案内し、使用者から戻る要望を取り込むことで使用者と対話を行う役割を担う。必要なときは常に、使用許諾マネージャは、使用者に対して警告と応答に必要な妥当な時間を与えた後、登録されたソフトウエア素材の使用打ち切りを行う役割を担う。使用許諾マネージャは、使用許諾が満了したとき、使用者に更なる使用の注文を行うよう案内をするために管理を利用者アプリケーションに移転することができる。
【0039】
本発明は、ソフトウエア素材の暗号化をすること、登録をすること、注文をすること、使用ができるようにすること、復号化をすること、使用を管理し計測をすること、の全てを可能にする。消費者に益をもたらすことになる業としてのサービスは、それらのみに限定するものではないものの、ソフトウエア・オン・デマンド、ソフトウエア賃貸、ソフトウエア購読、購入前試用を含んで、本発明の方法とシステムによって適切に支援され得る。
【0040】
ソフトウエア提供における本発明の2つの適用例は、ソフトウエア・オン・デマンドおよびソフトウエア購読サービスである。
【0041】
ソフトウエア・オン・デマンド・サービスの真髄は、消費者がソフトウエアを使いたいと思ったときにはいつでも自由にそのソフトウエアを入手できるようにすることである。このサービスを通して入手可能となったソフトウエア素材は、例えば会計用ソフトウエア、ゲーム、教育および娯楽用ソフトウエア、CAD用ソフトウエアなどのような、アプリケーション・ソフトウエアであってよい。ソフトウエア素材はまた、例えばオーディオ、ビデオ、類の形式のもしくは、単に平易なバイナリもしくはテキスト・ファイルを呈するマルチメディア・コンテントのような、どんな電子的に保存された素材であってもよい。このサービスは、本発明によって以下のように支援される。
1.発行者は、図1のステップに沿ってソフトウエア素材を暗号化するのに本発明を使用する。暗号化されたソフトウエア素材は、交換所のサーバが知るところの登録されたソフトウエアとなる。
2.ソフトウエア素材は、どれでもよいが、市販で入手可能な導入パッケージング・ソフトウエア、例えばインストールシールド、を用いてパッケージされる。1人もしくは数人の発行者からの多重プログラムもしくは他のソフトウエア素材が1つのソフトウエア・パッケージに結合され得る。
3.ソフトウエア素材は、例えばインターネット/WWW、CD−ROM、DVDもしくはVCDのような、種々のチャネルを通じて使用者に販売される。
4.使用者は、ソフトウエア・パッケージ内にある入手可能な素材全てをリストしているオンラインに基づいた電子カタログから選択する。彼もしくは彼女は、1つもしくは幾つかのソフトウエア・プログラムもしくは他の素材を、彼もしくは彼女のコンピュータ上に図2のステップに沿って導入しようと判断する。
5.使用者はその後、ソフトウエア・プログラムもしくは他の素材の1つの使用を決心する。
6.使用者は、ソフトウエア・プログラムもしくは他の素材にアクセスするため、実行コマンドを発する即ちアプリケーションを呼び出す。
7.使用者は、利用者アプリケーション経由でそのような使用に対してクレジット・カードもしくはその他の形式のデビット・カード番号で支払いを行うように案内される。
8.使用者は、交換所のサーバ設備に、モデム経由もしくはインターネット接続を介して接続される。もしファイヤ・ウォール(企業使用者用に)がある場合、本発明は、ファイヤ・ウォールの許認可プロセスを通過するための手順を作動する。
9.使用者は、利用者アプリケーションによって交換所のサーバから取り出された料金情報を点検する。
10.使用者は注文を確認する。
11.交換所のサーバは、許認可コードを発行する。
12.許認可コードは、要求されたソフトウエア素材を使用できる状態にする。使用カウンタが、この注文のやりとりを記録するために最新日のものにされる。
13.使用者は、実行即ちアクセスのコマンドを再度発する。
14.変換フィルタは、動的に必要な変換を遂行し、ソフトウエア素材の正当な使用を可能にする。
15.使用は、使用許諾マネージャ・アプリケーションによって計測および管理される。
【0042】
ソフトウエア購読サービスは、ソフトウエア・オン・デマンド・サービスに類似のステップに従うが、サービスへの支払いが月ベースであるところが異なる。使用者はまた通常多数の製品の使用を毎月自由に選択することができる。
【0043】
本発明の適用のその他の例は、音声/映像もしくはテキストの素材販売におけるものである。そのような素材は、基本的にアプリケーション・ソフトウエアと同じやり方で暗号化され、準備され、そして販売され得る。使用者は、そこで、見たり聞いたりしたい素材を選択し、ソフトウエアを入手するのと同様のやり方でそれを入手する。但しこの場合、映像素材はディスプレイされるし音声素材はスピーカ・システムを駆動するのに使用される。
【図面の簡単な説明】
本発明のこれらおよび他の目的、特徴および利点は、以下の本発明の詳述からきわめて容易に理解されるであろう。
【図1】 システムの構成要素、それらの相対的位置と相互依存関係およびデータの流れの方向を示している高レベルの基本設計概念図である。
【図2】 オリジナルの素材を、保護された状態に暗号化しパッケージングするプロセスを示す。
【図3】 ユニークIDの生成や使用者ユニーク・キーを用いた第2の暗号化を含んだ、使用者のコンピュータ上に保護された製品を導入するプロセスを示す。
【図4】 変換フィルタの内部プロセスの流れを示すフローチャートである。
Claims (1)
- ローカルアプリケーション(101、102)又はネットワークアプリケーション(103)と、ファイルシステムマネージャ(107)又はネットワークサービスプロバイダ(108)と、ファイルシステムドライバ層(105)と、入出力デバイス(106)とを含むコンピュータのオペレーションシステムによってコンピュータに導入された暗号化された素材の使用を制御する方法において、
オペレーションシステムの仮想デバイスドライバ又はカーネルモードドライバとして構築された変換フィルタ(104)を上記ローカルアプリケーション(101、102)又はネットワークアプリケーショ(103)と、ファイルシステムドライバ層(105)との間に配置し、上記変換フィルタ(104)が、
暗号化された素材に対するローカルアプリケーション(101、102)又はネットワークアプリケーショ(103)からのアクセス要求を監視するステップと、
上記暗号化された素材に対するアクセス要求を受領すると、上記素材を取り出すステップと、
上記素材の使用に使用許諾が存在するかどうかを調べるステップと、
使用許諾が存在する場合には、中間保存媒体に転送することなく上記暗号化された素材を即時に復号化するステップと、
上記復号化された素材の使用期間及び上記復号化された素材に関連するカウンタの少なくとも1つを含む使用計量を監視するステップと、
上記監視された使用計量が上記使用許諾に適合しているかどうかを判断するステップの各ステップを実行することを特徴とする方法。
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US08/935,955 US5991402A (en) | 1997-09-23 | 1997-09-23 | Method and system of dynamic transformation of encrypted material |
| US08/935,955 | 1997-09-23 | ||
| PCT/US1998/019618 WO1999016205A1 (en) | 1997-09-23 | 1998-09-21 | Method and system of dynamic transformation of encrypted material |
Related Child Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008070026A Division JP4658156B2 (ja) | 1997-09-23 | 2008-03-18 | 暗号化された素材の動的な変換の方法とシステム |
Publications (3)
| Publication Number | Publication Date |
|---|---|
| JP2001517845A JP2001517845A (ja) | 2001-10-09 |
| JP2001517845A5 JP2001517845A5 (ja) | 2006-01-05 |
| JP4309042B2 true JP4309042B2 (ja) | 2009-08-05 |
Family
ID=25467965
Family Applications (2)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2000513380A Expired - Fee Related JP4309042B2 (ja) | 1997-09-23 | 1998-09-21 | 暗号化された素材の動的な変換の方法とシステム |
| JP2008070026A Expired - Fee Related JP4658156B2 (ja) | 1997-09-23 | 2008-03-18 | 暗号化された素材の動的な変換の方法とシステム |
Family Applications After (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP2008070026A Expired - Fee Related JP4658156B2 (ja) | 1997-09-23 | 2008-03-18 | 暗号化された素材の動的な変換の方法とシステム |
Country Status (16)
| Country | Link |
|---|---|
| US (1) | US5991402A (ja) |
| EP (1) | EP1018237B1 (ja) |
| JP (2) | JP4309042B2 (ja) |
| KR (1) | KR100609598B1 (ja) |
| CN (1) | CN1282320C (ja) |
| AT (1) | ATE450013T1 (ja) |
| AU (1) | AU750272B2 (ja) |
| BG (1) | BG65408B1 (ja) |
| BR (1) | BR9812832A (ja) |
| CA (1) | CA2303049C (ja) |
| DE (1) | DE69841319D1 (ja) |
| HU (1) | HUP0101023A2 (ja) |
| ID (1) | ID24750A (ja) |
| IL (1) | IL135048A0 (ja) |
| PL (1) | PL342264A1 (ja) |
| WO (1) | WO1999016205A1 (ja) |
Families Citing this family (122)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| FR2750285B1 (fr) * | 1996-06-20 | 2000-08-04 | Sagem | Terminal de radio-telephonie mobile a utilisation controlee |
| 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 |
| US7917643B2 (en) | 1996-09-12 | 2011-03-29 | Audible, Inc. | Digital information library and delivery system |
| US5926624A (en) | 1996-09-12 | 1999-07-20 | Audible, Inc. | Digital information library and delivery system with logic for generating files targeted to the playback device |
| US6308270B1 (en) | 1998-02-13 | 2001-10-23 | Schlumberger Technologies, Inc. | Validating and certifying execution of a software program with a smart card |
| US6170014B1 (en) * | 1998-03-25 | 2001-01-02 | Community Learning And Information Network | Computer architecture for managing courseware in a shared use operating environment |
| US6253237B1 (en) | 1998-05-20 | 2001-06-26 | Audible, Inc. | Personalized time-shifted programming |
| US6223288B1 (en) * | 1998-05-22 | 2001-04-24 | Protexis Inc. | System for persistently encrypting critical software file to prevent installation of software program on unauthorized computers |
| US6799277B2 (en) | 1998-06-04 | 2004-09-28 | Z4 Technologies, Inc. | System and method for monitoring software |
| US6044471A (en) | 1998-06-04 | 2000-03-28 | Z4 Technologies, Inc. | Method and apparatus for securing software to reduce unauthorized use |
| US20040117664A1 (en) * | 1998-06-04 | 2004-06-17 | Z4 Technologies, Inc. | Apparatus for establishing a connectivity platform for digital rights management |
| US20040107368A1 (en) * | 1998-06-04 | 2004-06-03 | Z4 Technologies, Inc. | Method for digital rights management including self activating/self authentication software |
| US6986063B2 (en) * | 1998-06-04 | 2006-01-10 | Z4 Technologies, Inc. | Method for monitoring software using encryption including digital signatures/certificates |
| US20040117631A1 (en) * | 1998-06-04 | 2004-06-17 | Z4 Technologies, Inc. | Method for digital rights management including user/publisher connectivity interface |
| US20040117628A1 (en) * | 1998-06-04 | 2004-06-17 | Z4 Technologies, Inc. | Computer readable storage medium for enhancing license compliance of software/digital content including self-activating/self-authenticating software/digital content |
| US20040117663A1 (en) * | 1998-06-04 | 2004-06-17 | Z4 Technologies, Inc. | Method for authentication of digital content used or accessed with secondary devices to reduce unauthorized use or distribution |
| US20040225894A1 (en) * | 1998-06-04 | 2004-11-11 | Z4 Technologies, Inc. | Hardware based method for digital rights management including self activating/self authentication software |
| US20040117644A1 (en) * | 1998-06-04 | 2004-06-17 | Z4 Technologies, Inc. | Method for reducing unauthorized use of software/digital content including self-activating/self-authenticating software/digital content |
| US6243753B1 (en) * | 1998-06-12 | 2001-06-05 | Microsoft Corporation | Method, system, and computer program product for creating a raw data channel form an integrating component to a series of kernel mode filters |
| EP1014618A1 (en) * | 1998-07-30 | 2000-06-28 | Sony Corporation | Content processing system |
| US7068787B1 (en) | 1998-10-23 | 2006-06-27 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| US20030061566A1 (en) * | 1998-10-30 | 2003-03-27 | Rubstein Laila J. | Dynamic integration of digital files for transmission over a network and file usage control |
| US20010016836A1 (en) * | 1998-11-02 | 2001-08-23 | Gilles Boccon-Gibod | Method and apparatus for distributing multimedia information over a network |
| US6763370B1 (en) | 1998-11-16 | 2004-07-13 | Softricity, Inc. | Method and apparatus for content protection in a secure content delivery system |
| US7017188B1 (en) | 1998-11-16 | 2006-03-21 | Softricity, Inc. | Method and apparatus for secure content delivery over broadband access networks |
| CA2292041A1 (en) * | 1998-12-22 | 2000-06-22 | Scott Alan Thomson | Software program protection mechanism |
| US8175977B2 (en) * | 1998-12-28 | 2012-05-08 | Audible | License management for digital content |
| US6192477B1 (en) | 1999-02-02 | 2001-02-20 | Dagg Llc | Methods, software, and apparatus for secure communication over a computer network |
| US6763467B1 (en) * | 1999-02-03 | 2004-07-13 | Cybersoft, Inc. | Network traffic intercepting method and system |
| US7370071B2 (en) | 2000-03-17 | 2008-05-06 | Microsoft Corporation | Method for serving third party software applications from servers to client computers |
| US7730169B1 (en) | 1999-04-12 | 2010-06-01 | Softricity, Inc. | Business method and system for serving third party software applications |
| US6681212B1 (en) | 1999-04-23 | 2004-01-20 | Nianning Zeng | Internet-based automated system and a method for software copyright protection and sales |
| US8099758B2 (en) | 1999-05-12 | 2012-01-17 | Microsoft Corporation | Policy based composite file system and method |
| US7197144B1 (en) | 1999-06-08 | 2007-03-27 | Ethos Technologies, Inc. | Method and apparatus to authenticate a user's system to prevent unauthorized use of software products distributed to users |
| US6795833B1 (en) * | 1999-09-22 | 2004-09-21 | Alsoft, Inc. | Method for allowing verification of alterations to the cataloging structure on a computer storage device |
| US7310735B1 (en) * | 1999-10-01 | 2007-12-18 | International Business Machines Corporation | Method, system, and program for distributing software between computer systems |
| US7337360B2 (en) | 1999-10-19 | 2008-02-26 | Idocrase Investments Llc | Stored memory recovery system |
| US6594780B1 (en) | 1999-10-19 | 2003-07-15 | Inasoft, Inc. | Operating system and data protection |
| US6885748B1 (en) * | 1999-10-23 | 2005-04-26 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| WO2001041027A1 (en) * | 1999-12-03 | 2001-06-07 | Davor Runje | System and method for secure electronic digital rights management, secure transaction management and content distribution |
| US6996720B1 (en) * | 1999-12-17 | 2006-02-07 | Microsoft Corporation | System and method for accessing protected content in a rights-management architecture |
| US6970849B1 (en) | 1999-12-17 | 2005-11-29 | Microsoft Corporation | Inter-server communication using request with encrypted parameter |
| US7047411B1 (en) | 1999-12-17 | 2006-05-16 | Microsoft Corporation | Server for an electronic distribution system and method of operating same |
| US6754784B1 (en) | 2000-02-01 | 2004-06-22 | Cirrus Logic, Inc. | Methods and circuits for securing encached information |
| US20010032312A1 (en) * | 2000-03-06 | 2001-10-18 | Davor Runje | System and method for secure electronic digital rights management, secure transaction management and content distribution |
| JP2003526986A (ja) * | 2000-03-07 | 2003-09-09 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 算術的に符号化された情報信号の算術復号化 |
| CA2341931C (en) * | 2000-03-24 | 2006-05-30 | Contentguard Holdings, Inc. | System and method for protection of digital works |
| US7000119B1 (en) | 2000-04-20 | 2006-02-14 | Realnetworks, Inc. | Instruction/data protection employing derived obscuring instruction/data |
| JP2004514194A (ja) | 2000-04-28 | 2004-05-13 | モルドフロウ コーポレイション | ネットワーク可能なアプリケーションソフトウェアシステムおよび方法 |
| AU2001269354A1 (en) * | 2000-05-12 | 2001-11-20 | Xtreamlok Pty. Ltd. | Information security method and system |
| US6891953B1 (en) | 2000-06-27 | 2005-05-10 | Microsoft Corporation | Method and system for binding enhanced software features to a persona |
| US7171692B1 (en) | 2000-06-27 | 2007-01-30 | Microsoft Corporation | Asynchronous communication within a server arrangement |
| US7051200B1 (en) | 2000-06-27 | 2006-05-23 | Microsoft Corporation | System and method for interfacing a software process to secure repositories |
| US6981262B1 (en) | 2000-06-27 | 2005-12-27 | Microsoft Corporation | System and method for client interaction in a multi-level rights-management architecture |
| US7158953B1 (en) * | 2000-06-27 | 2007-01-02 | Microsoft Corporation | Method and system for limiting the use of user-specific software features |
| US7539875B1 (en) * | 2000-06-27 | 2009-05-26 | Microsoft Corporation | Secure repository with layers of tamper resistance and system and method for providing same |
| US7017189B1 (en) * | 2000-06-27 | 2006-03-21 | Microsoft Corporation | System and method for activating a rendering device in a multi-level rights-management architecture |
| US20020046045A1 (en) * | 2000-06-30 | 2002-04-18 | Attila Narin | Architecture for an electronic shopping service integratable with a software application |
| US7225159B2 (en) * | 2000-06-30 | 2007-05-29 | Microsoft Corporation | Method for authenticating and securing integrated bookstore entries |
| US7539828B2 (en) * | 2000-08-08 | 2009-05-26 | Faronics Corporation | Method and system for automatically preserving persistent storage |
| US20020022971A1 (en) * | 2000-08-21 | 2002-02-21 | Masanori Tanaka | Software rental system, software rental method, and computer program for being executed on the software rental system |
| US6813682B2 (en) * | 2000-09-29 | 2004-11-02 | Steven Bress | Write protection for computer long-term memory devices |
| US7246348B1 (en) * | 2000-10-13 | 2007-07-17 | International Business Machines Corp. | Method and apparatus for using print jobs for downloading and executing printer controller code |
| IL155260A0 (en) * | 2000-10-13 | 2003-11-23 | Nds Ltd | Automated multi-level marketing system |
| US20020087968A1 (en) * | 2001-01-02 | 2002-07-04 | Aditya Krishnan | Set-top box with credit card reader and method of activation/authentication |
| EP1352523B1 (fr) * | 2001-01-16 | 2004-08-04 | Nagracard S.A. | Methode pour stocker des donnees encryptees |
| US6961773B2 (en) * | 2001-01-19 | 2005-11-01 | Esoft, Inc. | System and method for managing application service providers |
| US7051006B2 (en) * | 2001-02-09 | 2006-05-23 | International Business Machines Corporation | System and method for maintaining customer privacy |
| SE522794C2 (sv) * | 2001-02-23 | 2004-03-09 | Ericsson Telefon Ab L M | Anordning och förfarande för kommunicerande av elektroniska data via en nätverksinfrastruktur som har en unicast-mekanism och multicast-mekanism |
| EP2267626B8 (en) | 2001-03-28 | 2016-11-30 | NDS Limited | Digital rights management system and method |
| US7188342B2 (en) * | 2001-04-20 | 2007-03-06 | Microsoft Corporation | Server controlled branding of client software deployed over computer networks |
| US6690783B2 (en) | 2001-06-18 | 2004-02-10 | International Business Machines Corporation | Service application architecture for integrated network service providers |
| US7979914B2 (en) | 2001-06-25 | 2011-07-12 | Audible, Inc. | Time-based digital content authorization |
| US7127740B2 (en) * | 2001-10-29 | 2006-10-24 | Pitney Bowes Inc. | Monitoring system for a corporate network |
| US10033700B2 (en) | 2001-12-12 | 2018-07-24 | Intellectual Ventures I Llc | Dynamic evaluation of access rights |
| US6970866B1 (en) * | 2002-05-31 | 2005-11-29 | Adobe Systems Incorporated | Filter file system |
| US7549164B2 (en) * | 2003-06-11 | 2009-06-16 | Symantec Corporation | Intrustion protection system utilizing layers and triggers |
| US7970789B1 (en) | 2003-06-11 | 2011-06-28 | Symantec Corporation | Sublayered application layered system |
| US7461086B1 (en) | 2006-01-03 | 2008-12-02 | Symantec Corporation | Run-time application installation application layered system |
| US7512977B2 (en) * | 2003-06-11 | 2009-03-31 | Symantec Corporation | Intrustion protection system utilizing layers |
| US7877413B1 (en) | 2002-06-12 | 2011-01-25 | Symantec Corporation | Path variablizing layered system |
| US7945897B1 (en) | 2002-06-12 | 2011-05-17 | Symantec Corporation | Method and system for running an application in a clean operating environment using a layered computing system |
| US7165260B2 (en) * | 2002-06-12 | 2007-01-16 | Fsl, L.L.C. | Layered computing systems and methods for insecure environments |
| US7117495B2 (en) * | 2002-06-12 | 2006-10-03 | Altiris, Inc. | Systems and methods for the creation of software packages using layered systems |
| US7620956B2 (en) * | 2003-06-11 | 2009-11-17 | Symantec Corporation | Portable memory storage devices with application layers |
| US7886291B1 (en) | 2003-06-11 | 2011-02-08 | Symantec Corporation | Layer typed prioritizing application layered systems |
| US8010961B1 (en) | 2003-06-11 | 2011-08-30 | Symantec Corporation | Data layer prioritization in an application layered system |
| US7542988B1 (en) * | 2006-01-03 | 2009-06-02 | Symantec Corporation | File type associative application layered system |
| US7461096B1 (en) | 2003-06-11 | 2008-12-02 | Symantec Corporation | Weighted prioritizing layered computing system |
| US8843903B1 (en) | 2003-06-11 | 2014-09-23 | Symantec Corporation | Process tracking application layered system |
| US7496931B2 (en) * | 2003-12-30 | 2009-02-24 | Symantec Corporation | Portable memory storage devices containing public context application layers |
| GB2389928A (en) * | 2002-06-21 | 2003-12-24 | Spero Comm Ltd | Data stored in encrypted form on a data carrier may be accessed by a user when a remote server provides permission |
| US20040158529A1 (en) * | 2002-07-30 | 2004-08-12 | Dynamic City Metronet Advisors, Inc. | Open access data transport system and method |
| KR100987769B1 (ko) | 2003-11-14 | 2010-10-13 | 삼성전자주식회사 | 개인용 컴퓨터의 인증키를 이용하여 전용 인증키를생성하는 인증키 생성 장치 및 방법 |
| US7272081B2 (en) * | 2004-03-29 | 2007-09-18 | International Business Machines Corporation | On-demand support for resources in an automated data storage library |
| JP2005284827A (ja) * | 2004-03-30 | 2005-10-13 | Fujitsu Ltd | 情報処理装置 |
| US20050282607A1 (en) * | 2004-06-21 | 2005-12-22 | Michael Gauselmann | Game for a gaming device that changes automatically over time |
| KR100677344B1 (ko) * | 2004-07-29 | 2007-02-02 | 엘지전자 주식회사 | 권리객체 처리를 위한 메시지 및 이를 이용한 권리객체 처리 방법 및 시스템 |
| US7300621B2 (en) * | 2005-03-16 | 2007-11-27 | Siemens Power Generation, Inc. | Method of making a ceramic matrix composite utilizing partially stabilized fibers |
| US7539647B2 (en) * | 2005-08-25 | 2009-05-26 | Microsoft Corporation | Using power state to enforce software metering state |
| US8135958B2 (en) * | 2005-11-22 | 2012-03-13 | International Business Machines Corporation | Method, system, and apparatus for dynamically validating a data encryption operation |
| WO2007071465A1 (en) * | 2005-12-22 | 2007-06-28 | International Business Machines Corporation | A method and apparatus for populating a software catalog with automated use signature generation |
| US7752139B2 (en) | 2005-12-27 | 2010-07-06 | Michael Noel Hu | Method and system for managing software licenses and reducing unauthorized use of software |
| US7937458B2 (en) * | 2006-02-14 | 2011-05-03 | Nanamura Roberto N | On-demand software service system and method |
| US9213808B2 (en) * | 2006-08-21 | 2015-12-15 | Irdeto B.V. | Controlling distribution of digital content |
| US8732236B2 (en) * | 2008-12-05 | 2014-05-20 | Social Communications Company | Managing network communications between network nodes and stream transport protocol |
| EP2232764A1 (en) * | 2007-12-05 | 2010-09-29 | Uniloc Usa, Inc. | System and method for device bound public key infrastructure |
| US8090904B2 (en) * | 2008-02-01 | 2012-01-03 | Cru Acquisition Group, Llc | Reduced hard-drive-capacity detection device |
| US8639734B1 (en) | 2008-03-31 | 2014-01-28 | Symantec Operating Corporation | Use of external information about a file to determine virtualization |
| US8438196B1 (en) | 2008-03-31 | 2013-05-07 | Symantec Operating Corporation | Finer grained data organization using data sublayers |
| US8688641B1 (en) | 2008-03-31 | 2014-04-01 | Symantec Operating Corporation | Per user and per process layer visibility |
| KR20130010910A (ko) * | 2008-12-05 | 2013-01-29 | 소우셜 커뮤니케이션즈 컴퍼니 | 실시간 커널 |
| US9069851B2 (en) | 2009-01-15 | 2015-06-30 | Social Communications Company | Client application integrating web browsing and network data stream processing for realtime communications |
| US8881140B1 (en) | 2009-09-04 | 2014-11-04 | Symantec Corporation | Systems and methods for virtualizing software associated with external computer hardware devices |
| JP5372843B2 (ja) * | 2010-06-18 | 2013-12-18 | 武史 藤田 | コンテンツ利用装置及びプログラム |
| 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 |
| US9275233B1 (en) * | 2012-12-21 | 2016-03-01 | Emc Corporation | Generation and use of a modified protected file |
| TW201427366A (zh) | 2012-12-28 | 2014-07-01 | Ibm | 企業網路中為了資料外洩保護而解密檔案的方法與資訊裝置 |
| JP2014171061A (ja) * | 2013-03-01 | 2014-09-18 | Kddi Corp | コンテンツ配信システム、装置及びプログラム |
| CN103457995A (zh) * | 2013-06-07 | 2013-12-18 | 北京百纳威尔科技有限公司 | 终端设备数据信息的存储方法、终端设备和云端服务器 |
| US9910967B2 (en) * | 2015-07-27 | 2018-03-06 | International Business Machines Corporation | File origin determination |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US4864494A (en) * | 1986-03-21 | 1989-09-05 | Computerized Data Ssytems For Mfg., Inc. | Software usage authorization system with key for decrypting/re-encrypting/re-transmitting moving target security codes from protected software |
| US5050213A (en) * | 1986-10-14 | 1991-09-17 | Electronic Publishing Resources, Inc. | Database usage metering and protection system and method |
| CA2053261A1 (en) * | 1989-04-28 | 1990-10-29 | Gary D. Hornbuckle | Method and apparatus for remotely controlling and monitoring the use of computer software |
| JPH0350929A (ja) * | 1989-07-19 | 1991-03-05 | Fujitsu Ltd | 業務形態に準じたidベースファイル暗号用鍵管理方式 |
| US5151938A (en) * | 1990-03-13 | 1992-09-29 | General Instrument Corporation | Security enhancement in a data processor through use of dynamic parameter authentication |
| JP2949865B2 (ja) * | 1991-01-31 | 1999-09-20 | 富士通株式会社 | 電子ファイルキャビネットシステム |
| AU5014493A (en) * | 1992-08-14 | 1994-03-15 | Dtmf Television, Inc. | A participatory television system |
| JP2880045B2 (ja) * | 1993-06-01 | 1999-04-05 | 鐘紡株式会社 | データ処理装置 |
| JPH07219762A (ja) * | 1994-01-31 | 1995-08-18 | Matsushita Electric Ind Co Ltd | ソフトウェア保護システム |
| US5805706A (en) * | 1996-04-17 | 1998-09-08 | Intel Corporation | Apparatus and method for re-encrypting data without unsecured exposure of its non-encrypted format |
| WO1995035533A1 (en) * | 1994-06-17 | 1995-12-28 | Megalode Corporation | Method for preventing use of software on an unauthorized computer |
| JP3399638B2 (ja) * | 1994-07-04 | 2003-04-21 | 松下電器産業株式会社 | ソフトウェア実行制御システム |
| JP2600643B2 (ja) * | 1994-07-28 | 1997-04-16 | 日本電気株式会社 | ファイル暗号装置 |
| US5638443A (en) * | 1994-11-23 | 1997-06-10 | Xerox Corporation | System for controlling the distribution and use of composite digital works |
| US5530235A (en) * | 1995-02-16 | 1996-06-25 | Xerox Corporation | Interactive contents revealing storage device |
| US5615264A (en) * | 1995-06-08 | 1997-03-25 | Wave Systems Corp. | Encrypted data package record for use in remote transaction metered data system |
| US5717756A (en) * | 1995-10-12 | 1998-02-10 | International Business Machines Corporation | System and method for providing masquerade protection in a computer network using hardware and timestamp-specific single use keys |
| US5825883A (en) * | 1995-10-31 | 1998-10-20 | Interval Systems, Inc. | Method and apparatus that accounts for usage of digital applications |
| US5708709A (en) * | 1995-12-08 | 1998-01-13 | Sun Microsystems, Inc. | System and method for managing try-and-buy usage of application programs |
| US5826011A (en) * | 1995-12-26 | 1998-10-20 | Rainbow Technologies, Inc. | Method of metering and protecting computer software |
| JP3712457B2 (ja) * | 1996-01-12 | 2005-11-02 | 株式会社ハドソン | ソフトウエアのネットワーク配信方法 |
| JP3090021B2 (ja) * | 1996-02-14 | 2000-09-18 | 富士ゼロックス株式会社 | 電子文書管理装置 |
| US5758069A (en) * | 1996-03-15 | 1998-05-26 | Novell, Inc. | Electronic licensing system |
| US5790663A (en) * | 1996-03-28 | 1998-08-04 | Advanced Micro Devices, Inc. | Method and apparatus for software access to a microprocessor serial number |
-
1997
- 1997-09-23 US US08/935,955 patent/US5991402A/en not_active Expired - Lifetime
-
1998
- 1998-09-21 EP EP98947171A patent/EP1018237B1/en not_active Expired - Lifetime
- 1998-09-21 CN CNB988114461A patent/CN1282320C/zh not_active Expired - Fee Related
- 1998-09-21 ID IDW20000763A patent/ID24750A/id unknown
- 1998-09-21 AU AU94011/98A patent/AU750272B2/en not_active Ceased
- 1998-09-21 HU HU0101023A patent/HUP0101023A2/hu unknown
- 1998-09-21 PL PL98342264A patent/PL342264A1/xx unknown
- 1998-09-21 IL IL13504898A patent/IL135048A0/xx unknown
- 1998-09-21 WO PCT/US1998/019618 patent/WO1999016205A1/en not_active Ceased
- 1998-09-21 DE DE69841319T patent/DE69841319D1/de not_active Expired - Lifetime
- 1998-09-21 AT AT98947171T patent/ATE450013T1/de not_active IP Right Cessation
- 1998-09-21 CA CA002303049A patent/CA2303049C/en not_active Expired - Fee Related
- 1998-09-21 BR BR9812832-9A patent/BR9812832A/pt not_active IP Right Cessation
- 1998-09-21 KR KR1020007003018A patent/KR100609598B1/ko not_active Expired - Fee Related
- 1998-09-21 JP JP2000513380A patent/JP4309042B2/ja not_active Expired - Fee Related
-
2000
- 2000-04-18 BG BG104353A patent/BG65408B1/bg unknown
-
2008
- 2008-03-18 JP JP2008070026A patent/JP4658156B2/ja not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| IL135048A0 (en) | 2001-05-20 |
| AU750272B2 (en) | 2002-07-11 |
| KR20010024212A (ko) | 2001-03-26 |
| CA2303049C (en) | 2008-01-29 |
| BG104353A (en) | 2001-02-28 |
| DE69841319D1 (de) | 2010-01-07 |
| EP1018237B1 (en) | 2009-11-25 |
| CN1306712A (zh) | 2001-08-01 |
| EP1018237A1 (en) | 2000-07-12 |
| CA2303049A1 (en) | 1999-04-01 |
| ATE450013T1 (de) | 2009-12-15 |
| US5991402A (en) | 1999-11-23 |
| BR9812832A (pt) | 2000-08-08 |
| EP1018237A4 (en) | 2004-09-15 |
| PL342264A1 (en) | 2001-06-04 |
| AU9401198A (en) | 1999-04-12 |
| HUP0101023A2 (hu) | 2001-07-30 |
| WO1999016205A1 (en) | 1999-04-01 |
| CN1282320C (zh) | 2006-10-25 |
| JP2008193724A (ja) | 2008-08-21 |
| BG65408B1 (bg) | 2008-06-30 |
| JP2001517845A (ja) | 2001-10-09 |
| JP4658156B2 (ja) | 2011-03-23 |
| ID24750A (id) | 2000-08-03 |
| KR100609598B1 (ko) | 2006-08-09 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP4309042B2 (ja) | 暗号化された素材の動的な変換の方法とシステム | |
| US8181021B2 (en) | Systems and methods for secure transaction management and electronic rights protection | |
| US8639625B1 (en) | Systems and methods for secure transaction management and electronic rights protection | |
| US7149722B1 (en) | Retail transactions involving distributed and super-distributed digital content in a digital rights management (DRM) system | |
| JP4235691B2 (ja) | 自己保護文書システム | |
| US6253193B1 (en) | Systems and methods for the secure transaction management and electronic rights protection | |
| US6948070B1 (en) | Systems and methods for secure transaction management and electronic rights protection | |
| US7095854B1 (en) | Systems and methods for secure transaction management and electronic rights protection | |
| US6195432B1 (en) | Software distribution system and software utilization scheme for improving security and user convenience | |
| US7124302B2 (en) | Systems and methods for secure transaction management and electronic rights protection | |
| US7133845B1 (en) | System and methods for secure transaction management and electronic rights protection | |
| KR101219819B1 (ko) | 디지털 어플리케이션을 라이센싱하기 위한 유연한 라이센싱 아키텍처 | |
| US20030191719A1 (en) | Systems and methods for secure transaction management and electronic rights protection | |
| US20020019814A1 (en) | Specifying rights in a digital rights license according to events | |
| US20030028489A1 (en) | Method and apparatus for legitimate sharing of electronic content | |
| JPH1028115A (ja) | デジタル情報再生方法および装置 | |
| KR20060015797A (ko) | 피디에이용 무선 콘텐츠의 디지털 저작권 관리 시스템 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20050921 |
|
| A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20050921 |
|
| A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070918 |
|
| A601 | Written request for extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A601 Effective date: 20071218 |
|
| A602 | Written permission of extension of time |
Free format text: JAPANESE INTERMEDIATE CODE: A602 Effective date: 20071226 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20080318 |
|
| A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20080818 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20081212 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090121 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20090209 |
|
| A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A712 Effective date: 20090209 |
|
| A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A821 Effective date: 20090209 |
|
| A911 | Transfer to examiner for re-examination before appeal (zenchi) |
Free format text: JAPANESE INTERMEDIATE CODE: A911 Effective date: 20090310 |
|
| TRDD | Decision of grant or rejection written | ||
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20090406 |
|
| A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
| A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20090507 |
|
| R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120515 Year of fee payment: 3 |
|
| FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130515 Year of fee payment: 4 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| R360 | Written notification for declining of transfer of rights |
Free format text: JAPANESE INTERMEDIATE CODE: R360 |
|
| R371 | Transfer withdrawn |
Free format text: JAPANESE INTERMEDIATE CODE: R371 |
|
| S111 | Request for change of ownership or part of ownership |
Free format text: JAPANESE INTERMEDIATE CODE: R313113 |
|
| R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |
|
| R250 | Receipt of annual fees |
Free format text: JAPANESE INTERMEDIATE CODE: R250 |
|
| LAPS | Cancellation because of no payment of annual fees |