Patent US5991402A successfully refreshed from Google Patents.
← Back to Patent Explorer
US5991402A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and system of dynamic transformation of encrypted material

Assignee: Intel Corp
•
Filing: 1997-09-23
•
Granted: 1999-11-23
•
Expires: 2017-09-23
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract The present invention provides a method and system that enables software-on-demand and software subscription services based on a dynamic transformation filter technology. The invention is also useful in the distribution of other electronic material. The apparatus utilized in this invention does not create any intermediate storage of decrypted material that is under the protection of this technology. Instead, the apparatus is implemented as a virtually integral part of the operating system that monitors and "filters" all read, write, and open/execute access to and from the I/O devices, such as a hard drive. As the protected material is being accessed for read, write or open/execute, the transformation filter positions itself in the critical path which is required for loading the material through the low level file system layer to the high level application layer. The material enters the transformation filter in its encrypted state. The transformation filter decrypts the material in real-time as it goes through, and hands over the material in its original state to the upper level operating system component to fulfill the access requests. Because the need for intermediate storage is eliminated, the decrypted material in its original state is only visible to integral parts of the operating system components and not to other system users. As a result, security is significantly improved over prior art systems.

Inventors

  • 👤 Zheng Jia
  • 👤 Ji Shen

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-04 16:42
CPC Classifications
H; H04; H04L; H04L9/00; G; G06; G06F; G06F21/00; G06F21/10; G06F21/12; G06F21/121; G06F21/125; G06F21/126; H04L63/00; H04L63/04; H04L63/0428; H04L63/10; G06F2221/00; G06F2221/21; G06F2221/2107; G06F2221/2135

Claims Analysis

Total Claims: 25
Claim 1
Independent Claim 92 words
A method of operating a virtual device driver or kernel mode driver to control the usage of encrypted material that has been installed on a computer comprising the steps of: monitoring all requests for access to the encrypted material; upon receiving a request for access to the encrypted material, obtaining the encrypted material; determining if a license exists to use the material; if a license exists, decoding the encrypted material in real-time; monitoring how much the decoded material is used; and determining if the usage of the material complies with the license.
Claim 2
Independent Claim 92 words
A method of operating a virtual device driver or kernel mode driver to control the usage of encrypted material that has been installed on a computer comprising the steps of: monitoring all requests for access to the encrypted material; upon receiving a request for access to the encrypted material, obtaining the encrypted material; determining if a license exists to use the material; if a license exists, decoding the encrypted material in real-time; monitoring how much the decoded material is used; and determining if the usage of the material complies with the license.
Claim 3
Dependent Claim 34 words
The method of claim 1 wherein the encrypted material is encrypted using a first key that is unique to a user and a second key that is unique to the material that is encrypted.
Claim 4
Dependent Claim 13 words
The method of claim 2 wherein the first key includes a time stamp.
Claim 5
Dependent Claim 15 words
The method of claim 3 wherein the time stamp has a precision measured in milliseconds.
Claim 6
Dependent Claim 29 words
The method of claim 2 further comprising the step of generating from the first key and the second key a third key for use in decoding the encrypted material.
Claim 7
Dependent Claim 56 words
The method of claim 1 wherein the encrypted material installed on the computer is encrypted by decrypting a first version of the material to produce an unencrypted version and then re-encrypting the material using a first key that is unique to a user and a second key that is unique to the material that is encrypted.
Claim 8
Dependent Claim 27 words
The method of claim 1 further comprising the step of obtaining a license to use the material if it is found that a license does not exist.
Claim 9
Dependent Claim 22 words
The method of claim 1 further comprising the step of performing a security check of the computer before decrypting the encrypted material.
Claim 10
Dependent Claim 13 words
The method of claim 1 wherein the encrypted material is a computer program.
Claim 11
Dependent Claim 123 words
The method of claim 1 wherein a software package is installed on the computer, said software package comprising an encrypted portion, a unique code, and decrypting software for decrypting the encrypted portion, said method further comprising the steps of: separating from the software package the encrypted portion, the unique code and the decryption software; storing said decryption software so that it is invoked whenever an attempt is made to access the encrypted portion; generating a unique ID from profile data and an encryption algorithm; decrypting the encrypted portion of the software to produce an unencrypted portion; encrypting the unencrypted portion using the unique ID and the unique code to produce a second encrypted portion; and storing said second encrypted portion in said computer.
Claim 12
Dependent Claim 13 words
The method of claim 10 wherein the unique ID includes a time stamp.
Claim 13
Dependent Claim 15 words
The method of claim 11 wherein the time stamp has a precision measured in milliseconds.
Claim 14
Independent Claim 113 words
A method for installing software on a computer, said software comprising an encrypted portion, a unique code, and decrypting software for decrypting the encrypted portion, said method comprising the steps of: separating from the software the encrypted portion, the unique code and the decryption software; storing said decryption software so that it is invoked whenever an attempt is made to access the encrypted portion; generating a unique ID from profile data and an encryption algorithm; decrypting the encrypted portion of the software to produce an unencrypted portion; encrypting the unencrypted portion using the unique ID and the unique code to produce a second encrypted portion; storing the second encrypted portion in said computer.
Claim 15
Independent Claim 113 words
A method for installing software on a computer, said software comprising an encrypted portion, a unique code, and decrypting software for decrypting the encrypted portion, said method comprising the steps of: separating from the software the encrypted portion, the unique code and the decryption software; storing said decryption software so that it is invoked whenever an attempt is made to access the encrypted portion; generating a unique ID from profile data and an encryption algorithm; decrypting the encrypted portion of the software to produce an unencrypted portion; encrypting the unencrypted portion using the unique ID and the unique code to produce a second encrypted portion; storing the second encrypted portion in said computer.
Claim 16
Dependent Claim 98 words
Apparatus as implemented in a virtual device driver in a computer operating system for operating a computer on which encrypted material has been stored comprising: means for monitoring all requests for access to the encrypted material; means for obtaining the encrypted material upon receiving a request for access to said material; means for determining if a license exists to use the material; means for decoding the encrypted material in real-time if a license exists; means for monitoring how much the encrypted material is used; and means for determining if the usage of the material complies with the license.
Claim 17
Dependent Claim 98 words
Apparatus as implemented in a virtual device driver in a computer operating system for operating a computer on which encrypted material has been stored comprising: means for monitoring all requests for access to the encrypted material; means for obtaining the encrypted material upon receiving a request for access to said material; means for determining if a license exists to use the material; means for decoding the encrypted material in real-time if a license exists; means for monitoring how much the encrypted material is used; and means for determining if the usage of the material complies with the license.
Claim 18
Dependent Claim 13 words
The apparatus of claim 14 wherein the encrypted material is a computer program.
Claim 19
Independent Claim 199 words
A method of operating a computer comprising the steps of: installing on the computer a software package, said software package comprising an encrypted portion, a unique code, and decrypting software for decrypting the encrypted portion, said step comprising the steps of: separating from the software package the encrypted portion, the unique code and the decryption software; storing said decryption software so that it is invoked whenever an attempt is made to access the encrypted portion; generating a unique ID from the profile data and an encryption algorithm; decrypting the encrypted portion of the software to produce an unencrypted portion; encrypting the unencrypted portion using the unique ID and the unique code to produce a second encrypted portion; and storing the second encrypted portion in said computer; and after the software package has been installed, monitoring all requests for access to the second encrypted portion; upon receiving a request for access to the second encrypted portion. obtaining said portion; determining if a license exists to use said portion; if a license exists, decoding the second encrypted portion in real-time; monitoring how much the decoded portion is used; and determining if the usage of the decoded portion complies with the license.
Claim 20
Independent Claim 199 words
A method of operating a computer comprising the steps of: installing on the computer a software package, said software package comprising an encrypted portion, a unique code, and decrypting software for decrypting the encrypted portion, said step comprising the steps of: separating from the software package the encrypted portion, the unique code and the decryption software; storing said decryption software so that it is invoked whenever an attempt is made to access the encrypted portion; generating a unique ID from the profile data and an encryption algorithm; decrypting the encrypted portion of the software to produce an unencrypted portion; encrypting the unencrypted portion using the unique ID and the unique code to produce a second encrypted portion; and storing the second encrypted portion in said computer; and after the software package has been installed, monitoring all requests for access to the second encrypted portion; upon receiving a request for access to the second encrypted portion. obtaining said portion; determining if a license exists to use said portion; if a license exists, decoding the second encrypted portion in real-time; monitoring how much the decoded portion is used; and determining if the usage of the decoded portion complies with the license.
Claim 21
Dependent Claim 13 words
The method of claim 13 wherein the unique ID includes a time stamp.
Claim 22
Dependent Claim 15 words
The method of claim 17 wherein the time stamp has a precision measured in milliseconds.
Claim 23
Dependent Claim 99 words
Apparatus as implemented in a kernel mode driver in a computer operating system for operating a computer on which encrypted material has been stored comprising: means for monitoring all requests for access to the encrypted material; means for obtaining the encrypted material upon receiving a requests for access to the encrypted material; means for determining if a license exists to use the material; means for decoding the encrypted material in real-time if a license exists; means for monitoring how much the encrypted material is used; and means for determining if the usage of the material complies with the license.
Claim 24
Dependent Claim 99 words
Apparatus as implemented in a kernel mode driver in a computer operating system for operating a computer on which encrypted material has been stored comprising: means for monitoring all requests for access to the encrypted material; means for obtaining the encrypted material upon receiving a requests for access to the encrypted material; means for determining if a license exists to use the material; means for decoding the encrypted material in real-time if a license exists; means for monitoring how much the encrypted material is used; and means for determining if the usage of the material complies with the license.
Claim 25
Dependent Claim 13 words
The apparatus of claim 19 wherein the encrypted material is a computer program.

References Cited (Backward Citations)

US5410598A Cited
US5388211A Cited
US5151938A Cited
US5537143A Cited
US5764762A Cited
US5717756A Cited
US5825883A Cited
US5708709A Cited
US5826011A Cited
US5758069A Cited
US5790663A Cited
US5805706A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2002-11-22 2003-05-24 2003-11-23 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2006-11-22 2007-05-24 2007-11-23 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2010-11-22 2011-05-24 2011-11-23 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag