IP Library Granted Patent US 9,961,049
Granted Patent B2
US 9,961,049 · App. 15/232,088 · Granted May 1, 2018

Protecting documents using policies and encryption

Inventors: Keng Lim (Atherton, CA); Poon Fung (Cupertino, CA); Andrew Han (San Francisco, CA)
Assignee: NextLabs, Inc.
H04L63/0428G06F21/602G06F21/606G06F21/6218H04L9/083H04L9/0822H04L51/08H04L63/0457H04L63/06H04L63/107H04L63/20H04L67/42H04L2209/60
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 9,961,049
App. No.
15/232,088
Granted
May 1, 2018
Kind
B2
Abstract

A system protects documents at rest and in motion using declarative policies and encryption. A document at rest includes documents on a device such as the hard drive of a computer. A document in motion is a document that is passing through a policy enforcement point. The policy enforcement point can be a server (e.g., mail server, instant messenger server, file server, or network connection server).

Claims (51)

1. A method comprising:

providing a document management system managing a plurality of documents wherein the document management system comprises clients and servers;

at a first client, executing a first interceptor code component;

at the first client, intercepting by the first interceptor code component a request by an e-mail application, executed at the first client, to send an e-mail with a document attachment, managed by the document management system, to a second client;

by the first interceptor code component, transferring handling of the intercepted request to a first policy enforcer program;

using the first policy enforcer program, evaluating at least one policy associated with the document attachment;

as a result of the evaluating, determining that the send request is allowed, but before allowing the e-mail application to send the document attachment, encrypting the document attachment;

allowing the e-mail application to send the encrypted document attachment to the second client;

receiving the encrypted document attachment at the second client;

at a second interceptor code component, detecting an attempt to open the encrypted document attachment at the second client;

by the second interceptor code component, transferring handling of the detected attempt to open request to a second policy enforcer program;

at the second policy enforcer program, evaluating at least one policy associated with encrypted document attachment;

as a result of the evaluating, determining that the open operation is allowed;

at an encryption module executing on the second client, determining the encrypted document attachment is encrypted;

at the encryption module, attempting to obtain a key for the encrypted document attachment by sending a key request to the second policy enforcer program including information comprising a process identifiers;

at the encryption service, identifying the application program attempting to access the encrypted document at the second client;

from the encryption service, sending identification information on the application program to a policy enforcer component, executing on the computing device;

controlling access to the unencrypted content based on the first policy comprising:

identifying a first application process identifier assigned by an operating system executing on the computing device for the application program, wherein the application program is attempting access to the encrypted document;

receiving a decryption key based on the first application process identifier at the encryption service;

using the encryption service to decrypt the encrypted document to produce the unencrypted content;

providing the unencrypted content to the application program; and

allowing the first system level operation to execute.

2. The method of claim 1 comprising:

at the second policy enforcer program, receiving the key request from the encryption module and evaluating the request based on the information comprising a process identifier; and

when the process identifier matches a previously saved process identifier, at the second policy enforcer program, sending a request to a key server of the document management system.

3. The method of claim 1 comprising:

after receiving a key at the second client, passing the key to the encryption module; and

at the encryption module, using the received key in unencrypting of the encrypted document attachment to obtain the unencrypted document attachment.

4. The method of claim 1 wherein the at the first policy enforcer program, evaluating at least one policy associated with the document attachment comprises selecting the at least one policy from a plurality of policies.

5. The method of claim 1 wherein the key for the encrypted document attachment is a shared key.

6. The method of claim 1 wherein the encrypting the document attachment comprises:

accessing a shared encryption key ring at the first policy enforcer program, wherein the first shared key ring is accessible to the second policy enforcer program;

selecting a first encryption key of the shared encryption key ring; and

encrypting the document attachment with the first encryption key.

7. The method of claim 6 wherein the shared encryption key ring is stored at a key management server.

8. The method of claim 7 wherein the evaluated at least one policy at the second policy enforcer program comprises a key ring identifier.

9. The method of claim 8 wherein the at least one policy at the first client is stored separately from the key management server.

10. The method of claim 1 wherein the at least one policy at the second client comprises an encryption key identifier.

11. The method of claim 1 wherein the determining that the send request is allowed, but before allowing the e-mail application to send the document attachment, encrypting the document attachment further comprises:

removing the document attachment from the e-mail; and

attaching the encrypted document attachment to the e-mail.

12. The method of claim 11 wherein the attaching the encrypted document attachment to the e-mail comprises attaching with the first policy enforcer program.

13. The method of claim 1 wherein the at least one policy evaluated at the second policy enforcer is different than the at least one policy evaluated at the first policy enforcer.

14. The method of claim 1 wherein the document attachment is associated with a first file extension and the encrypted document attachment is associated with a second document extension, different than the first document extension.

15. The method of claim 1 further comprising:

as a result of the evaluating, determining that the send request is denied; and

when the send request is denied, preventing the send request by the first policy enforcer program.

16. The method of claim 1 wherein the document attachment is unencrypted before being encrypted.

17. The method of claim 1 wherein the document attachment is encrypted by a first client encryption module executing on the first client, and the first client encryption module is separate from the first interceptor code component.

18. The method of claim 1 wherein the at least one policy associated with document attachment is stored at the first client.

Assignments (1)
SECURITY AGREEMENT Recorded Jun 30, 2020
From: NEXTLABS, INC
To: ROSEBUD CAPITAL, LLC
Reel/Frame 053095/0330 →
Continuity (4)
Continuation 14748115 · Jun 23, 2015
Continuation 13193588 · Jul 28, 2011
Provisional Application 61368408 · Jul 28, 2010
Related Publication 20160352694A1 · Dec 1, 2016