JP2008193724A - 暗号化された素材の動的な変換の方法とシステム - Google Patents

暗号化された素材の動的な変換の方法とシステム Download PDF

Info

Publication number
JP2008193724A
JP2008193724A JP2008070026A JP2008070026A JP2008193724A JP 2008193724 A JP2008193724 A JP 2008193724A JP 2008070026 A JP2008070026 A JP 2008070026A JP 2008070026 A JP2008070026 A JP 2008070026A JP 2008193724 A JP2008193724 A JP 2008193724A
Authority
JP
Japan
Prior art keywords
encrypted
software
unique
computer
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.)
Granted
Application number
JP2008070026A
Other languages
English (en)
Other versions
JP4658156B2 (ja
Inventor
Zheng Jia
ツェン イア
Ji Shen
イー シェン
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Aegisoft Corp
Original Assignee
Aegisoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Aegisoft Corp filed Critical Aegisoft Corp
Publication of JP2008193724A publication Critical patent/JP2008193724A/ja
Application granted granted Critical
Publication of JP4658156B2 publication Critical patent/JP4658156B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/10Protecting distributed programs or content, e.g. vending or licensing of copyrighted material ; Digital rights management [DRM]
    • G06F21/12Protecting executable software
    • G06F21/121Restricting unauthorised execution of programs
    • G06F21/125Restricting unauthorised execution of programs by manipulating the program code, e.g. source code, compiled code, interpreted code, machine code
    • G06F21/126Interacting with the operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2135Metering

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)
  • Mobile Radio Communication Systems (AREA)
  • Stored Programmes (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)
  • Analysing Materials By The Use Of Radiation (AREA)
  • Graft Or Block Polymers (AREA)
  • Detergent Compositions (AREA)
  • Table Devices Or Equipment (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Reduction Or Emphasis Of Bandwidth Of Signals (AREA)

Abstract

【課題】一時保存媒体への転送を行うことなく即時に暗号化された素材の動的な復号化を可能にする。
【解決手段】ソフトウエア製品の使用を絶えず管理し計測し課金するために変換フィルタ(104)を採用してソフトウエアオンデマンド及びソフトウエア購読サービスを可能にする。変換フィルタはオペレーティングシステムの仮想的組込部分として構築され、入出力デバイス(106)に出入りする全ての読み込む、書き込む、開く/実行するアクセスを監視し濾過する。保護素材がアクセスされていると、変換フィルタはそれ自体を、ファイルシステム及びアプリケーション層を通して素材を読み込むのに必要な経路中に位置する。素材は暗号化状態で変換フィルタに入りそこを通過すると即時に復号化される。素材はその後使用者アクセスの要求を実行するために、オペレーティングシステムの構成要素(107/108)に引き渡される。
【選択図】図1

Description

本発明は、電子的デジタル形式で存在しているコンピュータ・ソフトウエアおよび他の知的所有物件の、計測されての使用に関する。本発明の最終結果は、ソフトウエア・オン・デマンドやソフトウエア購読などのサービスを可能にする。
本発明はまた、コンピュータ・ソフトウエアおよび他の知的所有物件の海賊行為防止に対しても適用することができる。
現行の消費者市場にあっては、デジタル形式で存在するコンピュータ・ソフトウエアおよび他の知的所有物件は、その他の消費用ハード物品と同様の販売が主としてなされている。しかしビデオ・テープおよび他のハード物品が日常的に賃貸される反面、ソフトウエア製品は、一般的にはまだなお購入を基準にしてしか入手することができない。その結果、少なくとも2つの有用なサービス、即ち、ソフトウエア・オン・デマンドとソフトウエア購読が概して用いられていない。
ソフトウエア・オン・デマンドは、使用者が使用回数を基準にしてソフトウエア製品の支払いを行えばよいというサービスである。ソフトウエア購読は、月に1度といったような定期的予約購読を基準にして、1以上のソフトウエア製品を使用者が入手可能であるというサービスである。
これらのサービスが明らかに有用であるにもかかわらず、ソフトウエア製品に内在する性質の故に、技術提供業を可能にすることへの効果的な技術的挑戦が躊躇されてきた。これらのサービスを首尾よく支援するには、その可能にする技術は以下の範疇に合致しなければならない。
I.機密保護。
ソフトウエア・オン・デマンドおよび購読形式で入手できるソフトウエア製品は、完全に機密保護対策がとられた方法で保護され、また管理されなければならない。可能にする技術は、もっとも熟練し、また果敢なるハッカ連中からソフトウエアを防衛しなければならない。とりわけ、熟練したシステムレベルでのハッカ連中は簡単にドアを開けてしまうので、ソフトウエアがそのオリジナルの状態で中間保存媒体にそのまま長くは存在し得ない。また可能性としてだが、誰にとってもアクセスが可能であるようなそんな中間保存媒体を利用できるようになるユーティリティがあるかも知れない。
II.非被侵入性。
可能にする技術は、保護および計測された使用のためにソース・コードの変更を必要としてはならない。対照的に、侵入技術はそれ自身をソフトウエア製品のソース・コード中に埋設し、そのソフトウエアの再編集を必要とさせる。これに取り組むことは、余分なコーディング実施とリソースの試験実施との点で、保護プロセスにおける大変な費用負担を発生し、また、非常にエラーを発生しやすい。
III.最小限のシステム費用負担。
可能にする技術は、ソフトウエア製品の使用を保護し、起動し、および計測する間に、著しい費用負担を賦課してはならない。可能にする技術によって生じる一般的な費用負担は、追加のRAMとハードディスクの記憶スペースが必要であること、保護されたソフトウエアを復号化する前に保護を行うプロセスを起動すること、および使用を監視する間でのCPUなどの別のシステム・リソースにとっての競合が含まれる。
IV.システム・クロック再設定に対する耐性。
コンピュータ・システムのクロック設定を変更することによって、ソフトウエア製品の使用者は、許諾されている使用期間を著しく延長することができ、その結果、ソフトウエア・オン・デマンドおよびソフトウエア購読のサービスの有効性を損なってしまう。可能にする技術は、システム・クロック再設定に対する防衛を可能にし、対策行為をとることが可能であるものでなくてはならない。
V.絶えず保護を行い計測を行うこと。
ソフトウエア発行者が、一旦、ソフトウエアを可能にする技術の保護と管理との下においたならば、それは絶えず保護されまた管理されなければならない。その後、複製をしたり再導入をしたりしても、その保護と管理とを駄目なものにしてはならない。
VI.使用者が使いやすいものであること。
可能にする技術は、使用者にとって著しい、システム設定上の変化をもたらすやり方でコンピュータ使用者の環境を変化させてはならない。使用者インターフェイスは完全に直感的なものであり、容易に使用できるものでなくてはならない。
入手することのできる、従来技術での保護技術は、「ラッパー」および「リディレクション」技術とに基づいている。「ラッパー」は、しばしばオペレーティング・システム・シェル・プログラムまたは保護されたソフトウエアの変更された起動コード部の形式をとる。その機能は、保護されたソフトウエアに対する直接のアクセスを遮蔽するものである。保護されたソフトウエアが使用者によってアクセスされた場合、「ラッパー」が最初に実行される。暗号化された状態にある保護されたソフトウエアはその後復号化され、オリジナルの状態で一時保存媒体上に再保存される。「ラッパー」はその後、アクセスを一時保存媒体上の再保存されたソフトウエアに転送する。
カリフォルニャ州サンタ・クララのテストドライブ・コーポレーションによって開発されたシステムは、購入前試行ソフトウエア評価サービスを提供する。このシステムは、ソフトウエアのオリジナル版を、限定された期間もしくは評価期間だけしか使用することができない無効版に変換する。もしソフトウエアの購入を希望するならば、そのソフトウエアをオリジナルの状態に変換する解錠コードを購入することができる。好ましい実施態様にあっては、この従来技術でのシステムは、例えばコンピュータ・プログラムのような、選択された素材に適用され、また、その素材の一部分はオリジナルの素材からは分離される。この方法にあっては、素材の分離された部分と素材の残りの部分とを含むオリジナル素材の変質された版がつくられる。試用期間中、その素材の変質された版は一時保存媒体中におかれるが、分離された部分のみはシステム使用者によってたやすくアクセスされる。さらに、素材の分離された部分は、変形された部分に置き換えられ得る、例えば、素材のアクセスされる回数である数字を限定する目的でカウンタが含まれ得るし、オリジナルの素材に対して、例えば、音声信号における警告音や映像信号における遮蔽物のような妨害素材が加えられ得る。
これら「ラッパー」および「リディレクション」技術を基準にしたシステムにおける幾らかの欠点は明白である。
I.機密保護の欠陥。
「ラッパー」および「リディレクション」技術は、再保存されたソフトウエアの全てもしくはオリジナルの状態におけるそのソフトウエアの残りの部分を物理的に受け入れるのに、一時保存媒体を必要とするので、まさしくその、システム使用者によるアクセスが可能である、オリジナル状態での素材の存在が、システムをハッカの攻撃に対して弱いものにしている。オペレーティング・システムの専門家にとって、オリジナルの状態にある素材へのアクセスを入手し、素材の海賊版を再販売することは可能である。ユーティリティ・ソフトウエア・プログラムもまた、この海賊行為を繰り返して成し遂げるために、ことによると開発され得たかも知れないし、可能なサービスの有効性を損なうためにパブリック・ドメインで入手できるようにされているかも知れない。「ラッパー」と「リディレクション」技術は、初心者からの攻撃に対してソフトウエアを保護することができるものの、専門家に対しては、高度に機密保護をするものではない。
II.システムの負担。
「ラッパー」プログラムを起動すること、そのオリジナルの状態で再保存されたソフトウエアを物理的に保存すること、および、一時保存媒体を創出し管理すること、これら全ては、使用者が必要とするソフトウエアを起動するに先立っての遅れを負わせる。これらの行為はまた、オペレーティングシステムが走らせる別のプロセスを有する別のシステム・リソースと競合する。
III.スペースの負担。
オリジナルの状態でランダム・アクセス・メモリ(RAM)中に再保存されたソフトウエアの保存領域は、保護されたソフトウエアが通常必要とするRAMスペースの100%以上を余分に必要とする。多重の保護されたソフトウエアを同時に実行することのできる多重処理オペレーティングシステムにおいては、この負担は倍化され、またシステムの動作性能に顕著に影響を与える。
IV.好まれざる邪魔物。
コンピュータ・システム中に一時保存媒体、例えば仮想的デバイスのような、を創出することは、コンピュータ・システム使用者にとって通常好まれることのない、異質の人工遺物である。したがって、使用者は、ラッパーやリディレクション技術で発生させられた邪魔物や人工遺物を除去するため、結局はオリジナルの素材を完全な姿で購入しようと望むことであろう。従って、これらの技術は、絶え間なく使用を計測し保護を行うサービス提供には向いていない。
現在のところ、復号化された素材を一時媒体上に転送をしたり保存したりすることなく、暗号化されたソフトウエアおよび他の電子的素材のリアルタイムの復号化を提供できる高度に機密保護を行う方法は知られていない。
本発明は、ソフトウエア・オン・デマンドおよびソフトウエア購読のサービスを可能にする、ダイナミック変換フィルタ技術に基づいた方法とシステムを提供する。本発明はまた、その他の電子的素材の販売においても有用である。本発明において利用される装置は、本技術の保護下にある復号化された素材にとって如何なる中間保存領域をもつくらない。そのかわりに、本装置は、オペレーティング・システムの仮想的組込部分として構築され、例えばハード・ドライブのような入出力デバイスに出入りする「読み出し」、「書き込み」、および「開く」/「実行する」全てのアクセスを監視し「濾過」する。保護された素材が「読み込み」、「書き出し」、もしくは「開く」/「実行する」アクセスを受けたならば、変換フィルタはそれ自身を、素材を低レベルのファイル・システム層を通って高レベルのアプリケーション層に読み込みをするのに必要とされるクリティカルパスに位置づける。素材は暗号化された状態で、その変換フィルタに入る。変換フィルタは素材が通過するときにそれを復号化し、オリジナルの状態にあるその素材を、アクセス要求を実行するために高位のレベルにあるオペレーティング・システム構成要素に引き渡す。中間保存領域の必要性が除去されたので、そのオリジナルの状態で復号化された素材は、オペレーティング・システム構成要素の組込部分にとってのみ見えるものであり他のシステム使用者は見えない。結果として、従来技術でのシステムを上回って機密保護が格段に改善される。
変換フィルタは、完全に異なった目的用にオペレーティング・システムが提供するプログラム可能なサービスを、「濾過する」機密保護および管理システムへと変換することによって形成される。このプログラム可能なサービスは、ウインドウズ95TMソフトウエアの場合には、仮想的デバイス・ドライバであり、また、ウインドウズNTTMの場合には、カーネル・モードのドライバであることが好ましい。
本発明は、保護された素材の内部に邪魔をしないように埋設された素材と一緒に作動することができる。そのことは、幾ばくかの簡単に追従できるステップを踏むだけで如何なる素材をも復号化するユーティリティを提供する。本発明は、アメリカ合衆国政府および民間企業から入手可能な標準データ暗号化の仕組みを採用する。しかし、本発明にある装置は、復号化された素材の機密保護をさらに保障する目的で、拡張されたキー管理機能を提供する。消費者のパソコン上に導入された全ての素材は、2つの暗号化プロセスを通過する。第2の暗号化プロセスは、そのコンピュータ使用者のユニークIDから生成される動的にユニークなキーを必要とする。そのキーの動的生成は、如何なる解読用のキーもハード・ディスク上に保存されたファイルから直接的に得ることができないことを保証する。
本発明は、変換フィルタが、デジタル形式で存在しているソフトウエア製品および他の知的所有物件の使用を絶えず管理し、計測し、課金することを可能にする。そのような素材はオン・デマンドで何回も注文することができるし、また同様に購読を基準にして入手することもできる。導入された素材を別のコンピュータに複製することは、単にその素材の暗号化された版をつくり出すに過ぎない。
しかし、復号化された素材の永久的複製は、その発行者の権限でおこなわれる。
本発明は、そのような素材の使用者にとって、モデム経由もしくは現存の民営ネットワークやインターネット接続を介して、交換所のサーバに接続することができるようにするシステムの構成要素を提供する。その交換所のサーバは、注文と課金用のカード番号との受領に基づき、引き換えに、素材の計測されての使用を可能にする許認可コードを生成する。現行の受入可能な課金用カードは通常のクレジット・カードとデビット・カードとを含んでいる。将来の支払方法は、実例的にはスマート・カードとデジタル・キャッシュとを含むことであろう。システムのこれら構成要素はまた、利用者の返還および交換の処理を可能にすることであろう。
本発明は、例えばインターネット上での電子的素材販売や、実際の店先で販売されるCD−ROMや、DVD,VCD,ケーブル・モデムおよびその他の放送チャネルのような、あらゆる可能なチャネル経由で販売される素材に適用することが可能である。
本発明はまた、ネットワーク・ファイル・システムにわたって、素材に対するアクセスがシステムによって等しく管理され計測されるネットワーク環境において作動する。
本発明のこれらおよび他の目的、特徴および利点は、以下の本発明の詳述からきわめて容易に理解されるであろう。
本発明は、マイクロソフトのウインドウズ95もしくはウインドウNTのようなオペレーティング・システムの内部に組込まれた方法と装置である。この方法と装置は一時保存媒体への転送を行うことなく即時に暗号化された素材の動的な復号化を可能にする。その結果、本発明は電子的形態にあるソフトウエア製品および他の素材が暗号化を通して保護され、また、管理され計測されての使用をするために利用できるようにする。
本発明の好ましい実施態様にあっては、変換フィルタは、多重処理オペレーティング・システム環境で動作しているカーネル・レベルのプログラムとして構築されており、また、暗号化された素材はアプリケーション・ソフトウエアである。しかし、本発明は同様に、べつの状況、例えば暗号化された形式にある音声や映像素材の販売にも適用することができる。
図1は、高レベルの基本設計概念図であり、オペレーティング・システム内部における変換フィルタの位置と機能とを示している。
高レベルのアプリケーション・プログラムは、ローカル・アプリケーションおよびネットワーク・アプリケーション101,102,103を含むが、「読み込み」、「書き込み」および「開く」/「実行する」行為を成就するため、システムの入出力デバイス106上に常駐しているソフトウエア素材へのアクセスを要求する。これらの要求は、OSのファイル・システム・マネージャ107もしくはネットワーク・サービス・プロバイダ108のようなオペレーティング・システム構成要素に対して提出されなければならず、また、ファイル・システム・ドライバ層もしくは同様にカーネル・レベル上にあるネットワーク・ファイル・システム・ドライバ層105に中継されなければならない。本発明によると、変換フィルタ104は、アプリケーション101,102,103とファイル・システム・ドライバ層105との間に位置される。実例として、ウインドウズ95TMソフトウエアの状況にあっては、変換フィルタは仮想的デバイス・ドライバとして構築され、またウインドウズNTTMの場合には、カーネル・モードのドライバとして構築される。
もし、ローカルおよび/またはネットワークのアプリケーションから来ている、ファイル・システムに対するアクセス要求が「下流」に進んでいるものであると判断された場合、その後、オペレーティング・システムの上位層に対して入出力デバイスから読み出されている全てのデータは「上流」に進んでいるものであると判断される。下流(アプリケーションからファイル・システムに下る)および上流(ファイル・システムらアプリケーションへ)の両データは、以降本書類ではクリティカルパスと称する特定の経路を通過しなければならない。変換フィルタ104は、クリティカルパス中にある。
データが変換フィルタを上流方向に向けて通過するときは常に、変換フィルタは暗号化されたソフトウエアをそのオリジナルの状態に変換するという必要な変換を遂行する。そのオリジナルの状態に転位されてしまっているソフトウエアはその後、オペレーティング・システムの上位層に引き渡される。もしも要求がアプリケーション、例えば画像閲覧ソフトからのものでディスプレイ用にファイルを開くというものであった場合、変換されたソフトウエア素材が、最終的にはそのアプリケーションに引き渡される。要求を出しているアプリケーションの見地からすれば、この暗号化されたソフトウエア素材を開くことは、別のオリジナルのソフトウエア素材を開くことと何も変わることはない。変換プロセスは、要求を出しているソフトウエアに対して完全に透明なものである。もしも要求がファイルを実行することで(例えば、ファイル上でマウスのダブル・クリックがなされる)、オリジナルのソフトウエア素材が実行可能なプログラムである場合、変換されたソフトウエアは、メモリ内部で実行をするようにオペレーティング・システムの読み込み機能に引き渡される。このプロセスは、「濾過をすること」と考えられる。というのは、上流に移動している暗号化されたソフトウエアは、装置に入り、そして、あたかも濾過をするデバイスを通過したかのように、復号化された状態で出てくるからである。全ての「濾過をする」プロセスの間、復号化されたソフトウエアの如何なる中間保存領域もシステム使用者に対して露呈されることがない。すべての引渡と復号化のプロセスとは、高度に機密保護がとられている方法にある内部活動としてオペレーティング・システムの内部で行われる。
変換フィルタ104は、あたかもそれがオペレーティング・システムの組込部分であったかのように構築される。追加の機密保護策が変換フィルタ104内部に組込まれる。それで上流および下流のデータを「濾過をする」ことが可能であるのみならず、またオペレーティング・システムの中のハッキング行為を監視し、いかなるのであれ機密保護を破壊するものが生じてくるのを防止するための対策をとる。
図2は、ブロック図で、事前導入の暗号化されたステップへとオリジナルのソフトウエア素材を暗号化しているプロセスを示すものである。図2に示されるように、オリジナルのソフトウエア素材MO201は、暗号化プロセスPE203において変換関数fE202のアプリケーションによって暗号化される。暗号化のプロセスは、DESもしくはRSAのような標準の暗号化プロセスであることが好ましい。この暗号化プロセスの結果が、暗号化されたソフトウエアME204であり、CD−ROM、インターネットなどのような種々の販売チャネルを通じて機密保護状態で転送され得るものである。
第2のプロセスPB209の間、ソフトウエア使用の管理と計測とを首尾よく行うことの支援をする4つの別の構成要素がME204に追加される。これらの構成要素とは、使用許諾マネージャ205、利用者アプリケーション206、変換フィルタ207、および製品独自の署名データ208である。使用許諾マネージャ205は、ソフトウエア・プログラムであり、暗号化されたソフトウエアの使用に関するデータを含む使用許諾のデータベースを整備すること、暗号化されたソフトウエア素材MEの使用者との仲立ちをすること、および許認可された使用期間の終了に伴い暗号化されたソフトウエア素材の使用打ち切りを行うことに役割を果たす。利用者アプリケーション206は、ソフトウエア・プログラムであり、交換所のサーバから、暗号化されたソフトウエア素材MEを使用するための許認可を要求するのに、および交換所のサーバからの適切な許認可コードを受領するのに用いられる。この活動はまた電子的支払いの何らかの形式、例えばクレジットもしくはデビット・カードの番号提供のような、を伴うことができる。加えて、利用者アプリケーションはまた、料金徴収、販売促進とアップグレード情報、および追加ソフトウエアのダウンロードを行う能力を含むことができる。変換フィルタ207は、当のソフトウエアであり、暗号化されたソフトウエア素材MEへのアクセスを管理する。このソフトウエアの更なる詳細が、図1および4との関連で記述される。製品独自の署名データ208は、特定の暗号化されたソフトウエア・素材MEに対してユニークなコードである。
プロセス209の出力は、単一出力ファイルMI210であり、事前導入の暗号化されたソフトウエア素材であって、全ての入力構成要素204、205、206、207、208から構成される。プロセス209は、構成要素204、205、206、207、208を単一のソフトウエア製品へと単に結合させることが好ましい。他に、プロセス209はまた、追加の暗号化プロセスを伴うことができたはずである。
本発明の好ましい実施態様にあっては、出力ファイルMIは、オリジナルのソフトウエア素材の名称、アイコンおよびその他のプロパティを見かけ上そのまま引き継ぐ。従って、外部から見た限りでは、このファイルはオリジナルのソフトウエアと全く同じに見える。本実施態様は主として、ソフトウエア製品のパッケージを行うに際しての、ソフトウエア発行者にとっての余分なステップを削除するためのものである。
次に、ソフトウエア発行者は、あたかも図2の暗号化プロセスが決して起きたことがないかのように、自分たちのソフトウエアを正常な導入パッケージに入れ込むのに自分たちが気に入っている導入パッケージング・ユーティリティ、例えばインストール・シールドTMのような、を用いることができる。
図3はブロック図であり、使用者のパソコン上に暗号化されたソフトウエア素材を導入しているプロセスを示している。好ましい実施態様にあっては、出力ファイルMIはそれ自身の導入プロセス302を、使用者がソフトウエアの導入の通常手順を行った後に、正にあたかもそのソフトウエアは暗号化されたことなどなかったかのように起動する。導入プロセスPI302は、事前導入されたソフトウエア素材MI210/301のキーとなる構成要素を生み出す。最初、使用許諾マネージャ303、利用者アプリケーション304および変換フィルタ305が抽出されてシステム中の適当な隠れた場所に導入される。製品独自の署名データ306および暗号化されたソフトウエアMEが同様に持ってこられる。
同時に、DP307として表されている使用者特性データおよびオペレーティング・システム独自の情報がプロセスPU312中で変換関数f1308によって変換され、利用者にとってのユニークID313を生成する。ユニークIDを生成することでは、従来技術のどんな数であってもプロセス312で使用することができる。便利なように、ユニークID313の生成にあっては、我々はミリ秒で測定された精度、というのは2人の使用者が同じミリ秒において彼らのソフトウエアを導入する確率は事実上ゼロだから、の時刻印を使用するように設定する。ユニークID313は引き続き、システムのあらゆる局面および構成要素中で使用される。
製品独自の署名データ306、ユニークID313および暗号化されたソフトウエアMEは、プロセスPES309に供給される。プロセスPESは、変換関数fEの逆関数を用い、ソフトウエア素材を復号化し、それによってオリジナルの素材MOを再保存する。ここまでの復号化プロセスは周知である。その後、ユニークID313と製品独自の署名データ306とに基づいたユニーク暗号化キーで即座にMOを再度暗号化する。再び、例えばDESもしくはRSAのような標準暗号化プロセスが使用され得る。その結果が、ユニークに暗号化されたソフトウエア・素材MU310である。ソフトウエア・素材MUはその後、ドライバ層105の上方に導入される(図1を参照のこと)。
好ましい実施態様にあっては、本発明は、MUを生成するのに使用されたユニークな暗号化キーを絶対に保存しない。必要な場合には常に、このユニーク・キーは同じ入力(ユニークIDおよび製品独自の署名データ)とキー生成プロセスとを用いて動的に再生成することができる。このキー管理方策があるため、暗号化されたソフトウエア素材を損なおうとしても極めて困難なものにしている。キーのユニークさはまた、一旦ソフトウエアが導入されたならば、どんな2人をもってきても、それらの使用者のコンピュータ上に同一である暗号化されたソフトウエア素材は存在することがないということを保証する。
導入の最後に、図4との関連で以下に記述される使用管理や計測のプロセスを首尾よく実行するための、あらゆる使用許諾情報、使用のカウンタおよびその他の重要な情報を保持する使用許諾データベースDL311が生成される。使用許諾データベースは暗号化されたソフトウエアを「登録された」状態にあるもの、即ち、本発明のシステムの影響下にあるものとして識別する。このデータベースはまた、コンピュータ・システムに保存される。
図1を参照する。変換フィルタ104は、コンピュータ・システムに導入され、入出力デバイス106上に常駐しているソフトウエア・ファイルへのあらゆるアクセス要求を途中で捕捉する。ウインドウズ95TMオペレーティング・システムにあっては、このことは当の変換フィルタを仮想的デバイス・ドライバとして導入することで成し遂げられる。ウインドウズNTTMオペレーティング・システムにあっては、このことは当の変換フィルタをカーネル・モード・ドライバとして導入することで成し遂げられる。
ソフトウエア素材を読み出したり、書き込んだり、実行したりする、もしくは見るためにソフトウエア素材を開いたりする使用者行為は、オペレーティング・システムによって処理される。より高いレベルのオペレーティング・システム処理(例えば図1のローカルもしくはネットワーク・アプリケーション101、102、103)は、それら行為の要求を下流のドライバ層105に向かって変換フィルタ104を通過させていく役割を有する。
図4は変換フィルタの内部プロセスのフローが記述されたものを示している。ボックス416に示されるように、変換フィルタはあらゆる入出力要求にそなえて、オペレーティング・システムを絶えず監視している。そんな要求が変換フィルタに到着すると、それはソフトウエアと使用許諾情報を得るプロセス403を起動する。このプロセスは要求されたソフトウエアにとっての、そのソフトウエアの使用の最新の状態、使用許諾、許認可・コード、失効日、製品独自の署名データ208/306、を含む使用許諾情報(もしあるならば)をその他の関連する情報と併せて取得する。引き続き、2つの確認テストが適用される。即ち、ソフトウエアが登録されているかどうかのテスト(ステップ406)および使用許諾が有効であるかどうかのテスト(ステップ407)である。もし、要求されたソフトウエアが登録されていなかった場合、変換フィルタは、それ以上何のアクションもとらずに、単純に管理をオペレーティング・システムのステップ413における要求プロセスに移転して戻す。もし、ソフトウエアが登録されている場合、変換フィルタはステップ407において、有効である使用許諾が存在するかどうかをチェックする。有効な使用許諾がない場合、利用者アプリケーションがステップ414で導入され、使用者に更なる使用を注文するかまたはソフトウエアを購入するように促す。
注文入力プロセスは、システムの利用者アプリケーション構成要素によって取扱われる。利用者アプリケーションは使用者のコンピュータを交換所のサーバにモデム経由もしくは現行のインターネット接続を介して接続する。交換所のサーバは、有効であるクレジット・カードまたはデビット・カードの番号の受領に基づいて、引き換えに許認可コードを生成し、登録されていたソフトウエアの正当な使用ができるようにする。
もし、ソフトウエアにとっての有効な使用許諾が見られ、それを実行することが許認可された使用期間内である場合、変換フィルタは機密保護監視プロセス408を起動し、復号化された後変換フィルタを出て行くデータの乗っ取りをしようと試みているものと思われるあらゆる第3者のプロセスの走査を遂行する。オペレーティング・システム中に疑わしい行為が存在する場合、変換フィルタは潜在的脅威を除去するための対策をとる。
次いで、暗号化されたソフトウエアを復号化するのに使用されるべきユニーク・キーは、キー生成プロセス409において生成される。このキーは、ユニークID313と製品独自の署名データ306とから生成される。生成された復号化キーと暗号化プロセス309の逆関数とを用いて、変換フィルタはその後、即時に、復号化を行う変換プロセス410においてソフトウエアのあらゆる暗号化された部分を復号化する。オリジナルの状態に復号化されたソフトウエアはその後、ステップ413で要求プロセスに引き渡される。オペレーティング・システムはいまや、アクセスを要求したアプリケーションに対して復号化されたソフトウエア素材の実行即ち送り込みを首尾よく処理することができる。
復号化されたソフトウエアが要求しているプロセスに一旦引き渡されたならば、変換フィルタは、ステップ411で使用計測カウンタを起動する。使用カウンタが走っている間変換フィルタは、ステップ412で使用許諾期間違反がないかどうか、即ち使用許諾の満了がないかどうか、絶えず使用の量をテストする。ソフトウエアにとっての使用許諾期間の違反がある、即ち使用許諾が満了してしまっている場合、変換フィルタは、使用許諾マネージャを起動するプロセスをステップ415で起動する。使用許諾マネージャは使用許諾データベースを適切に整備し、最新日のものにし、種々の伝言で使用者を案内し、使用者から戻る要望を取り込むことで使用者と対話を行う役割を担う。必要なときは常に、使用許諾マネージャは、使用者に対して警告と応答に必要な妥当な時間を与えた後、登録されたソフトウエア素材の使用打ち切りを行う役割を担う。使用許諾マネージャは、使用許諾が満了したとき、使用者に更なる使用の注文を行うよう案内をするために管理を利用者アプリケーションに移転することができる。
本発明は、ソフトウエア素材の暗号化をすること、登録をすること、注文をすること、使用ができるようにすること、復号化をすること、使用を管理し計測をすること、の全てを可能にする。消費者に益をもたらすことになる業としてのサービスは、それらのみに限定するものではないものの、ソフトウエア・オン・デマンド、ソフトウエア賃貸、ソフトウエア購読、購入前試用を含んで、本発明の方法とシステムによって適切に支援され得る。
ソフトウエア提供における本発明の2つの適用例は、ソフトウエア・オン・デマンドおよびソフトウエア購読サービスである。
ソフトウエア・オン・デマンド・サービスの真髄は、消費者がソフトウエアを使いたいと思ったときにはいつでも自由にそのソフトウエアを入手できるようにすることである。このサービスを通して入手可能となったソフトウエア素材は、例えば会計用ソフトウエア、ゲーム、教育および娯楽用ソフトウエア、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.使用は、使用許諾マネージャ・アプリケーションによって計測および管理される。
ソフトウエア購読サービスは、ソフトウエア・オン・デマンド・サービスに類似のステップに従うが、サービスへの支払いが月ベースであるところが異なる。
使用者はまた通常多数の製品の使用を毎月自由に選択することができる。
本発明の適用のその他の例は、音声/映像もしくはテキストの素材販売におけるものである。そのような素材は、基本的にアプリケーション・ソフトウエアと同じやり方で暗号化され、準備され、そして販売され得る。使用者は、そこで、見たり聞いたりしたい素材を選択し、ソフトウエアを入手するのと同様のやり方でそれを入手する。但しこの場合、映像素材はディスプレイされるし音声素材はスピーカ・システムを駆動するのに使用される。
システムの構成要素、それらの相対的位置と相互依存関係およびデータの流れの方向を示している高レベルの基本設計概念図である。 オリジナルの素材を、保護された状態に暗号化しパッケージングするプロセスを示す。 ユニークIDの生成や使用者ユニーク・キーを用いた第2の暗号化を含んだ、使用者のコンピュータ上に保護された製品を導入するプロセスを示す。 変換フィルタの内部プロセスの流れを示すフローチャートである。
符号の説明
101、102 ローカル・アプリケーション
103 ネットワーク・アプリケーション
104 変換フィルタ
105 ファイル・システム・ドライバ層
106 入出力デバイス
107 OSファイル・システム・マネージャ
108 ネットワーク・サービス・プロバイダ

Claims (16)

  1. 暗号化された素材に対する全てのアクセス要求を監視するステップと、
    上記暗号化された素材に対するアクセス要求を受領すると、上記素材を取り出すステップと、
    上記素材の使用に使用許諾が存在するかどうかを調べるステップと、
    使用許諾が存在する場合には、上記暗号化された素材を即時に復号化するステップと
    上記復号化された素材が何度使用されたかを監視するステップと
    上記素材の使用が上記使用許諾に適合しているかどうかを判断するステップとからなり、
    上記暗号化された素材が、使用者にとってユニークな第1のキーと暗号化された上記素材にとってユニークな第2キーとを用いて暗号化されたものであることを特徴とする暗号化された素材が導入されたコンピュータを作動させる方法。
  2. 上記第1キーが時刻印を含むものであることを特徴とする請求項1記載の方法。
  3. 上記時刻印がミリ秒で計測された精度を有するものであることを特徴とする請求項2記載の方法。
  4. 上記暗号化された素材を復号化するのに使用する第3キーを、第1キーおよび第2キーから生成させるステップをさらに含むものであることを特徴とする請求項1記載の方法。
  5. 上記コンピュータ上に導入された上記暗号化された素材は、上記素材の最初の版を復号化して暗号化されていない版をつくり出すし、その後、使用者にとってユニークである第1キーと暗号化されている上記素材にとってユニークである第2キーとを用いて上記素材を再度暗号化したものであることを特徴とする請求項1記載の方法。
  6. 使用許諾が存在していないと判明した場合、上記素材を使用するために使用許諾を取得するステップをさらに有するものであることを特徴とする請求項1記載の方法。
  7. 上記暗号化された素材の復号化前に、上記コンピュータの機密保護点検を実施するステップをさらに有するものであることを特徴とする請求項1記載の方法。
  8. 上記暗号化された素材がコンピュータ・プログラムであることを特徴とする請求項1記載の方法。
  9. 請求項1記載の方法において、ソフトウエア・パッケージが上記コンピュータ上に導入され、上記ソフトウエア・パッケージが暗号化された部分と、ユニーク・コードと、上記暗号化された部分を復号化するための復号化プログラムとからなり、上記方法が、
    上記ソフトウエア・パッケージから、上記暗号化された部分と、上記ユニーク・コードと復号化を行うソフトウエアとを分離するステップと、
    暗号化された部分にアクセスする試みがなされた場合はいつでも呼び出されるように、復号化を行うソフトウエアを保存するステップと、
    特性データと暗号化演算規則とからユニークIDを生成させるステップと、
    暗号化されていない部分をつくり出すために、上記ソフトウエアの暗号化された部分の復号化を行うステップと、
    第2の暗号化された部分をつくり出すために、上記ユニークIDと上記ユニーク・コードとを用いて上記暗号化されていない部分を暗号化するステップと、
    上記コンピュータに上記第2の暗号化された部分を保存するステップ
    とからなるものであることを特徴とする請求項1記載の方法。
  10. ユニークIDが時刻印を含むものであることを特徴とする請求項9記載の方法。
  11. 上記時刻印がミリ秒で計測された精度を有するものであることを特徴とする請求項10記載の方法と。
  12. コンピュータ上にソフトウエアを導入する方法であって、上記ソフトウエアが、暗号化された部分と、ユニーク・コードと、上記暗号化された部分の復号化を行うための復号化ソフトウエアとからなり、上記方法が、
    上記ソフトウエアから、上記暗号化された部分と、上記ユニーク・コードと復号化ソフトウエアとを分離するステップと、
    暗号化された部分にアクセスする試みがなされた場合はいつでも呼び出されるように、復号化ソフトウエアを保存するステップと、
    特性データと暗号化演算規則とからユニークIDを生成させるステップと、
    暗号化されていない部分をつくり出すために、上記ソフトウエアの上記暗号化された部分の復号化を行うステップと、
    第2の暗号化された部分をつくり出すために、上記ユニークIDと上記ユニーク・コードとを用いて上記暗号化されていない部分を暗号化するステップと、
    上記コンピュータに上記第2の暗号化された部分を保存するステップ
    とからなるものであることを特徴とするもの。
  13. 上記暗号化された素材に対するアクセス要求をすべて監視するための手段と、
    上記素材へのアクセス要求を受領したら上記暗号化された素材を取り出す手段と、
    上記素材を使用するための使用許諾が存在するかどうかを判断する手段と、
    使用許諾が存在する場合には、上記暗号化された素材を即時に復号化する手段と、
    上記暗号化された素材がどれだけ使用されたかを監視する手段と、
    および、
    上記素材の上記使用が上記使用許諾に適合するのかどうかを決定する手段と
    からなるものであることを特徴とする暗号化された素材が保存されてしまっているコンピュータを作動させる装置。
  14. 上記暗号化された素材がコンピュータ・プログラムであることを特徴とする請求項13記載の装置。
  15. ウインドウズ95TMオペレーティング・システムにおける仮想デバイス・ドライバとして構築されるものであることを特徴とする請求項13記載の装置。
  16. ウインドウズNTTMオペレーティング・システムにおけるカーネル・モードのドライバとして構築されるものであることを特徴とする請求項13記載の装置。
JP2008070026A 1997-09-23 2008-03-18 暗号化された素材の動的な変換の方法とシステム Expired - Fee Related JP4658156B2 (ja)

Applications Claiming Priority (1)

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

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2000513380A Division JP4309042B2 (ja) 1997-09-23 1998-09-21 暗号化された素材の動的な変換の方法とシステム

Publications (2)

Publication Number Publication Date
JP2008193724A true JP2008193724A (ja) 2008-08-21
JP4658156B2 JP4658156B2 (ja) 2011-03-23

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 Before (1)

Application Number Title Priority Date Filing Date
JP2000513380A Expired - Fee Related JP4309042B2 (ja) 1997-09-23 1998-09-21 暗号化された素材の動的な変換の方法とシステム

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)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012004937A (ja) * 2010-06-18 2012-01-05 Takeshi Fujita コンテンツ利用装置及びプログラム

Families Citing this family (116)

* Cited by examiner, † Cited by third party
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
US6044471A (en) 1998-06-04 2000-03-28 Z4 Technologies, Inc. Method and apparatus for securing software to reduce unauthorized use
US6986063B2 (en) * 1998-06-04 2006-01-10 Z4 Technologies, Inc. Method for monitoring software using encryption including digital signatures/certificates
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
US20040107368A1 (en) * 1998-06-04 2004-06-03 Z4 Technologies, Inc. Method for digital rights management including self activating/self authentication software
US6799277B2 (en) 1998-06-04 2004-09-28 Z4 Technologies, Inc. System and method for monitoring 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
US20040117664A1 (en) * 1998-06-04 2004-06-17 Z4 Technologies, Inc. Apparatus for establishing a connectivity platform for digital rights management
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
US20040225894A1 (en) * 1998-06-04 2004-11-11 Z4 Technologies, Inc. Hardware based method for digital rights management including self activating/self authentication software
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
US6834346B1 (en) * 1998-07-30 2004-12-21 Sony Corporation Content processing system
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
US6594780B1 (en) 1999-10-19 2003-07-15 Inasoft, Inc. Operating system and data protection
US7337360B2 (en) 1999-10-19 2008-02-26 Idocrase Investments Llc Stored memory recovery system
US6885748B1 (en) * 1999-10-23 2005-04-26 Contentguard Holdings, Inc. System and method for protection of digital works
AU1943801A (en) * 1999-12-03 2001-06-12 Mario Kovac System and method for secure electronic digital rights management, secure transaction management and content distribution
US7047411B1 (en) 1999-12-17 2006-05-16 Microsoft Corporation Server for an electronic distribution system and method of operating same
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
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
WO2001084283A2 (en) 2000-04-28 2001-11-08 Moldflow Corporation Network enabled application software system and method
WO2001086372A2 (en) * 2000-05-12 2001-11-15 Xtreamlok Pty. Ltd. Information security method and system
US7158953B1 (en) * 2000-06-27 2007-01-02 Microsoft Corporation Method and system for limiting the use of user-specific software features
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
US7171692B1 (en) 2000-06-27 2007-01-30 Microsoft Corporation Asynchronous communication within a server arrangement
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
US7539875B1 (en) 2000-06-27 2009-05-26 Microsoft Corporation Secure repository with layers of tamper resistance and system and method for providing same
US6891953B1 (en) * 2000-06-27 2005-05-10 Microsoft Corporation Method and system for binding enhanced software features to a persona
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
WO2002031614A2 (en) * 2000-10-13 2002-04-18 Nds Limited 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
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
US7886291B1 (en) 2003-06-11 2011-02-08 Symantec Corporation Layer typed prioritizing application layered systems
US7461096B1 (en) 2003-06-11 2008-12-02 Symantec Corporation Weighted prioritizing layered computing system
US7542988B1 (en) * 2006-01-03 2009-06-02 Symantec Corporation File type associative application layered system
US7877413B1 (en) 2002-06-12 2011-01-25 Symantec Corporation Path variablizing layered 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
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
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
US7549164B2 (en) * 2003-06-11 2009-06-16 Symantec Corporation Intrustion protection system utilizing layers and triggers
US7620956B2 (en) * 2003-06-11 2009-11-17 Symantec Corporation Portable memory storage devices with application layers
US7165260B2 (en) * 2002-06-12 2007-01-16 Fsl, L.L.C. Layered computing systems and methods for insecure environments
US8010961B1 (en) 2003-06-11 2011-08-30 Symantec Corporation Data layer prioritization in an application layered system
AU2003243543A1 (en) * 2002-06-12 2003-12-31 Fslogic Inc. Layered computing systems and methods
US7970789B1 (en) 2003-06-11 2011-06-28 Symantec Corporation Sublayered application layered system
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
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
US8438196B1 (en) 2008-03-31 2013-05-07 Symantec Operating Corporation Finer grained data organization using data sublayers
US8639734B1 (en) 2008-03-31 2014-01-28 Symantec Operating Corporation Use of external information about a file to determine virtualization
US8688641B1 (en) 2008-03-31 2014-04-01 Symantec Operating Corporation Per user and per process layer visibility
WO2010065848A2 (en) * 2008-12-05 2010-06-10 Social Communications Company Realtime kernel
US8881140B1 (en) 2009-09-04 2014-11-04 Symantec Corporation Systems and methods for virtualizing software associated with external computer hardware devices
WO2012118917A2 (en) 2011-03-03 2012-09-07 Social Communications Company Realtime communications and network browsing client
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

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0350929A (ja) * 1989-07-19 1991-03-05 Fujitsu Ltd 業務形態に準じたidベースファイル暗号用鍵管理方式
JPH04245368A (ja) * 1991-01-31 1992-09-01 Fujitsu Ltd 電子ファイルキャビネットシステム
JPH06348576A (ja) * 1993-06-01 1994-12-22 Kanebo Ltd データ処理装置
JPH07219762A (ja) * 1994-01-31 1995-08-18 Matsushita Electric Ind Co Ltd ソフトウェア保護システム
JPH0816384A (ja) * 1994-07-04 1996-01-19 Matsushita Electric Ind Co Ltd ソフトウェア実行制御システム
JPH0844632A (ja) * 1994-07-28 1996-02-16 Nec Corp ファイル暗号装置
EP0715246A1 (en) * 1994-11-23 1996-06-05 Xerox Corporation System for controlling the distribution and use of composite digital works
JPH09190346A (ja) * 1996-01-12 1997-07-22 Hudson Soft Co Ltd ソフトウエアのネットワーク配信方法
JPH09218827A (ja) * 1996-02-14 1997-08-19 Fuji Xerox Co Ltd 電子文書管理装置

Family Cites Families (15)

* Cited by examiner, † Cited by third party
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
US5151938A (en) * 1990-03-13 1992-09-29 General Instrument Corporation Security enhancement in a data processor through use of dynamic parameter authentication
AU5014493A (en) * 1992-08-14 1994-03-15 Dtmf Television, Inc. A participatory television system
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
AU2666595A (en) * 1994-06-17 1996-01-15 Megalode Corporation Method for preventing use of software on an unauthorized computer
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
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

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH0350929A (ja) * 1989-07-19 1991-03-05 Fujitsu Ltd 業務形態に準じたidベースファイル暗号用鍵管理方式
JPH04245368A (ja) * 1991-01-31 1992-09-01 Fujitsu Ltd 電子ファイルキャビネットシステム
JPH06348576A (ja) * 1993-06-01 1994-12-22 Kanebo Ltd データ処理装置
JPH07219762A (ja) * 1994-01-31 1995-08-18 Matsushita Electric Ind Co Ltd ソフトウェア保護システム
JPH0816384A (ja) * 1994-07-04 1996-01-19 Matsushita Electric Ind Co Ltd ソフトウェア実行制御システム
JPH0844632A (ja) * 1994-07-28 1996-02-16 Nec Corp ファイル暗号装置
EP0715246A1 (en) * 1994-11-23 1996-06-05 Xerox Corporation System for controlling the distribution and use of composite digital works
JPH09190346A (ja) * 1996-01-12 1997-07-22 Hudson Soft Co Ltd ソフトウエアのネットワーク配信方法
JPH09218827A (ja) * 1996-02-14 1997-08-19 Fuji Xerox Co Ltd 電子文書管理装置

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012004937A (ja) * 2010-06-18 2012-01-05 Takeshi Fujita コンテンツ利用装置及びプログラム

Also Published As

Publication number Publication date
CA2303049A1 (en) 1999-04-01
AU750272B2 (en) 2002-07-11
PL342264A1 (en) 2001-06-04
KR20010024212A (ko) 2001-03-26
HUP0101023A2 (hu) 2001-07-30
IL135048A0 (en) 2001-05-20
JP4658156B2 (ja) 2011-03-23
CA2303049C (en) 2008-01-29
BR9812832A (pt) 2000-08-08
US5991402A (en) 1999-11-23
ATE450013T1 (de) 2009-12-15
BG104353A (en) 2001-02-28
BG65408B1 (bg) 2008-06-30
EP1018237A4 (en) 2004-09-15
ID24750A (id) 2000-08-03
DE69841319D1 (de) 2010-01-07
JP4309042B2 (ja) 2009-08-05
WO1999016205A1 (en) 1999-04-01
EP1018237A1 (en) 2000-07-12
EP1018237B1 (en) 2009-11-25
JP2001517845A (ja) 2001-10-09
KR100609598B1 (ko) 2006-08-09
AU9401198A (en) 1999-04-12
CN1306712A (zh) 2001-08-01
CN1282320C (zh) 2006-10-25

Similar Documents

Publication Publication Date Title
JP4658156B2 (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
JP4235691B2 (ja) 自己保護文書システム
KR101219819B1 (ko) 디지털 어플리케이션을 라이센싱하기 위한 유연한 라이센싱 아키텍처
JP4128902B2 (ja) 安全な取引管理方法
US6948070B1 (en) Systems and methods for secure transaction management and electronic rights protection
US20030191719A1 (en) Systems and methods for secure transaction management and electronic rights protection
US20070061594A1 (en) Systems and methods for secure transaction management and electronic rights protection
US20020019814A1 (en) Specifying rights in a digital rights license according to events
Nützel et al. How to increase the security of Digital Rights Management systems without affecting consumer’s security
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: 20080623

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090622

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20090918

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20090928

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20091222

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20100610

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101012

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20101109

A711 Notification of change in applicant

Free format text: JAPANESE INTERMEDIATE CODE: A712

Effective date: 20101109

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20101118

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: 20101209

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: 20101222

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

Free format text: PAYMENT UNTIL: 20140107

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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: 20140107

Year of fee payment: 3

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

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

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees