IP Library Granted Patent US 6,981,141
Granted Patent B1
US 6,981,141 · App. 09/259,991 · Granted Dec 27, 2005

Transparent encryption and decryption with algorithm independent cryptographic engine that allows for containerization of encrypted files

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 6,981,141
App. No.
09/259,991
Granted
Dec 27, 2005
Kind
B1
Abstract

An encryption method that is largely transparent to a user is accomplished by intercepting a change document or open document command, carrying out an encryption or decryption process, and then completing the command on an encrypted or decrypted file. The encryption method can be used in a wide variety of environments, such as an individual computer program, a database or electronic messaging over the Internet. The encryption method can select from a plurality of encryption algorithms. The encryption method can also allow just a portion of a document to be encrypted, placed in a container, and then be represented by an object linking and embedding (“OLE”) container object or other representation supported by the file.

Claims (86)

1. A method of encrypting an electronic file in an application program running in a suitable environment for operating the program, comprising the steps of:

a) issuing a change document command to act upon the file;

b) intercepting the change document command;

c) acquiring an encryption key value;

d) encrypting the file using the encryption key value to create an encrypted file;

e) completing the change document command by performing the change document command upon the encrypted file instead of the file; and

f) invoking an option to initiate a virus scan program;

wherein steps c) and d) further comprise the steps of:

selecting an algorithm to use with the file from one of a plurality of encryption algorithms;

selecting an encryption key with a key value;

generating a file identifier from the encryption key, an algorithm identifier associated with the selected algorithm and a data identifier associated with the file;

adding the file identifier to the file; and

using the key value and the selected algorithm to encrypt the file.

2. The method as recited in claim 1 , comprising the further step of running a virus scan program on the file before it is encrypted.

3. The method as recited in claim 1 , comprising the further steps of selecting the file from within the contents of a second file that is larger than the file.

4. The method as recited in claim 3 , comprising the further steps of creating a third file from the second file wherein the third file contains the encrypted file and the portion of the second file that does not include the file.

5. The method as recited in claim 4 , wherein the encrypted file is located in a container.

6. The method as recited in claim 1 , wherein the algorithm is selected from the plurality of algorithms according to a pre-selected criteria.

7. The method as recited in claim 1 , wherein the algorithm is selected from the plurality of algorithms according to a pre-selected algorithm.

8. The method as recited in claim 1 , wherein the file identifier is inserted into the file according to a pre-selected criteria.

9. The method as recited in claim 1 , wherein the file identifier is inserted into the file according to a pre-selected algorithm.

10. The method as recited in claim 1 , wherein there are plural encryption key values and at least one encryption key value is associated with the user.

11. The method as recited in claim 10 , comprising the further steps of:

requiring the user to submit to an access authentication step; and

if the access authentication step does not authenticate the user, then skipping steps c) and d), but if the access authentication step does authenticate the user, then retrieving the encryption key value associated with the encryption key name and the user.

12. A method of decrypting an electronic file that is to be opened in an application program running in a suitable environment for operating the program, comprising the steps of:

a) issuing an open document command to act upon the file;

b) intercepting the open document command;

c) retrieving a decryption key value;

d) decrypting the file using the decryption key value to create an unencrypted file; and

e) completing the open document command by performing the open document command upon the unencrypted file instead of the file; and

wherein steps c) and d) further comprise the steps of:

selecting an algorithm to use with the file from one of a plurality of algorithms;

selecting an encryption key with a key value;

inputting a decryption key with a key value;

validating the decryption key value with the key value associated with a file identifier;

using the key value and the selected algorithm to decrypt the file; and

invoking an option to initiate a virus scan program.

13. The method as recited in claim 12 , comprising the further step of running a virus scan program on the decrypted file.

14. A method of encrypting and decrypting a file with one of a plurality of algorithms, comprising the steps of:

selecting an algorithm to use with the file from the plurality of algorithms;

selecting an encryption key with a key value;

generating a file identifier from the encryption key, an algorithm identifier associated with the selected algorithm and a data identifier associated with the file;

adding the file identifier to the file;

using the key value and the selected algorithm to encrypt the file and generate an encrypted file;

uniquely identifying the encrypted file with an encrypted data identifier during encryption;

inputting a decryption key with a decryption key value;

validating the decryption key value with the key value associated with the file identifier;

using the key value and the selected algorithm to decrypt the file; and

testing the encrypted data identifier after decryption by regenerating the encrypted data identifier and ascertaining that they are the same.

15. The method as recited in claim 14 , comprising the further step of selecting the file from within the contents of a second file that is larger than the file.

16. The method as recited in claim 15 , wherein the encrypted file is placed in a container.

17. A method of encrypting and decrypting a file with one of a plurality of algorithms, comprising the steps of:

selecting an algorithm to use with the file from the plurality of algorithms

selecting an encryption key with a key value

generating a file identifier from the encryption key, an algorithm identifier associated with the selected algorithm and a data identifier associated with the file

adding the file identifier to the file

using the key value and the selected algorithm to encrypt the file and generate an encrypted file

uniquely identifying the encrypted file with an encrypted data identifier during encryption

inputting a decryption key with a decryption key value

validating the decryption key value with the key value associated with the file identifier

using the key value and the selected algorithm to decrypt the file

testing the encrypted data identifier after decryption by regenerating the encrypted data identifier and ascertaining that they are the same

selecting the file from within the contents of a second file that is larger than the file

creating a third file from the second file wherein the third file contains the encrypted file and the portion of the second file that does not include the file

wherein the encrypted file is placed in a container.

18. The method as recited in claim 17 , wherein the container is represented in the third file.

19. The method as recited in claim 18 , wherein the decryption is initiated with whatever method is appropriate to the way the file is represented in the third file.

20. The method as recited in claim 18 , wherein the second file is recreated from the third file after the file is decrypted.

21. The method as recited in claim 20 , comprising the further step of running a virus scan program on the second file after it is recreated.

22. A method of encrypting and decrypting a file with one of a plurality of algorithms, comprising the steps of:

selecting an algorithm to use with the file from the plurality of algorithms;

selecting an encryption key with a key value;

generating a file identifier from the encryption key, an algorithm identifier associated with the selected algorithm and a data identifier associated with the file;

adding the file identifier to the file;

using the key value and the selected algorithm to encrypt the file and generate an encrypted file;

inputting a decryption key with a decryption key value;

validating the decryption key value with the key value associated with the file identifier;

using the key value and the selected algorithm to decrypt the file;

invoking an option to initiate a virus scan program.

23. A method of decrypting an encrypted file with one of a plurality of algorithms, comprising the steps of:

selecting an algorithm to use with the encrypted file from the plurality of algorithms;

inputting an decryption key with a decryption key value;

validating the decryption key value with the key value associated with a file identifier that was added to a file during an encryption process that created the encrypted file;

using the key value and the selected algorithm to decrypt the file;

testing the encrypted data identifier that is used to uniquely identify the encrypted file during the encryption process by regenerating the encrypted data identifier and ascertaining that they are the same.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2017
From: MAZ ENCRYPTION TECHNOLOGIES LLC
To: RPX CORPORATION
Reel/Frame 044442/0049 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 15, 2013
From: EMPIRE IP LLC
To: MAZ ENCRYPTION TECHNOLOGIES LLC
Reel/Frame 029818/0383 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 29, 2012
From: MAZ TECHNOLOGIES, INC.
To: EMPIRE IP LLC
Reel/Frame 029203/0882 →