IP Library Granted Patent US 8,543,836
Granted Patent B2
US 8,543,836 · App. 13/215,844 · Granted Sep 24, 2013

Lightweight document access control using access control lists in the cloud storage or on the local file system

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 8,543,836
App. No.
13/215,844
Granted
Sep 24, 2013
Kind
B2
Abstract

In a method for controlling access to an encrypted document, a request to access the encrypted document is received. The access request includes a user ID and a user password. A one-way hash function is performed on the user password to generate a hash value. An access control table is searched for the hash value which indicates an authorization for the user to access the encrypted document. The hash value corresponds to a document password encrypted with the user password. The document password is decrypted using the user password. The encrypted document is decrypted using the decrypted document password.

Claims (62)

1. A method for controlling access to an encrypted document, the method comprising the steps of:

receiving a request to access the encrypted document, wherein the access request comprises a user ID and a user password;

performing a one-way hash function on the user password to generate a hash value;

searching an access control table for the hash value which indicates an authorization for the user to access the encrypted document and corresponds to a document password encrypted with the user password;

decrypting the document password using the user password, wherein the document password comprises a decryption key for the encrypted document; and

decrypting the encrypted document using the decrypted document password.

2. The method of claim 1 , wherein the hash value also corresponds to an expiration date, and wherein the step of decrypting the encrypted document further comprises the steps of:

comparing, by one or more processors, the expiration date with a current date; and

decrypting the encrypted document in response to determining that the current date is before the expiration date.

3. The method of claim 1 , wherein the hash value corresponds to a plurality of user IDs.

4. The method of claim 1 , wherein an access to the access control table is provided as a service in a cloud environment.

5. The method of claim 1 , wherein the hash value corresponds to a security role and wherein the step of decrypting the encrypted document further comprises the computer decrypting the encrypted document in accordance with the security role.

6. The method of claim 1 , wherein the encrypted document has been encrypted using a symmetric encryption algorithm.

7. A computer program product for controlling access to an encrypted document, the computer program product comprising:

one or more computer-readable storage devices and program instructions stored on at least one of the one or more computer-readable storage devices, the program instructions comprising:

program instructions to receive a request to access the encrypted document, wherein the access request comprises a user ID and a user password;

program instructions to perform a one-way hash function on the user password to generate a hash value;

program instructions to search an access control table for the hash value which indicates an authorization for the user to access the encrypted document and corresponds to a document password encrypted with the user password;

program instructions to decrypt the document password using the user password, wherein the document password comprises a decryption key for the encrypted document; and

program instructions to decrypt the encrypted document using the decrypted document password.

8. The computer program product of claim 7 , wherein the hash value also corresponds to an expiration date and wherein the program instructions to decrypt the encrypted document further comprise:

program instructions to compare the expiration date with a current date; and

program instructions to decrypt the encrypted document if the current date is before the expiration date.

9. The computer program product of claim 7 , wherein the hash value corresponds to a plurality of user IDs.

10. The computer program product of claim 7 , wherein an access to the access control table is provided as a service in a cloud environment.

11. The computer program product of claim 7 , wherein the hash value corresponds to a security role and wherein the program instructions to decrypt the encrypted document further comprise program instructions to decrypt the encrypted document in accordance with the security role.

12. The computer program product of claim 7 , wherein the encrypted document has been encrypted using a symmetric encryption algorithm.

13. A method for controlling access to an encrypted web page, the method comprising the steps of:

receiving an email message, wherein the email message comprises a hyperlink to the encrypted web page and wherein a markup language document for the encrypted web page includes program code to request a user ID and password from a user of the computer and to determine whether the user is authorized to access the web page, and if so, to decrypt the web page;

receiving an access control table as an attachment to the email message;

invoking the program code, in response to a user request to display the encrypted web page, to determine that the user is authorized to access the web page by searching the access control table; and

invoking the program code to decrypt the web page and to display the web page, in response to the determination of authorization of the user to access the web page.

14. The method of claim 13 , wherein the program code, when executed by the computer, further performs the steps of:

receiving a request to access the encrypted web page, and in response, requesting the user ID and the password from the user;

performing a one-way hash function on the user password to generate a hash value;

searching the access control table for the hash value which indicates an authorization for the user to access the encrypted web page and corresponds to a document password encrypted with the user password;

decrypting the document password using the user password; and

decrypting the encrypted web page using the decrypted document password.

15. The method of claim 14 , wherein the hash value also corresponds to an expiration date, and wherein the step of decrypting the encrypted web page further comprises the steps of:

comparing, by one or more processors, the expiration date with a current date; and

decrypting the encrypted web page in response to determining that the current date is before the expiration date.

16. The method of claim 14 , wherein the hash value corresponds to a plurality of user IDs.

17. The method of claim 14 , wherein an access to the access control table is provided as a service in a cloud environment.

18. The method of claim 14 , wherein the hash value corresponds to a security role and wherein the step of decrypting the encrypted web page further comprises decrypting the encrypted web page in accordance with the security role.

19. A computer program product for controlling access to an encrypted web page, the computer program product comprising:

one or more computer-readable storage devices and program instructions stored on at least one of the one or more computer-readable storage devices, the program instructions comprising:

program instructions to receive an email message, wherein the email message comprises a hyperlink to the encrypted web page and wherein a markup language document for the encrypted web page includes program code to request a user ID and password from a user of the computer and wherein the markup language document for the encrypted web page includes program code to determine whether the user is authorized to access the web page, and if so, to decrypt the web page;

program instructions to receive an access control table as an attachment to the email message;

program instructions to invoke the program code, in response to a user request to display the encrypted web page to determine that the user is authorized to access the web page by searching the access control table; and

program instructions to invoke the program code to decrypt the web page and to display the web page at the computer, in response to the determination of authorization of the user to access the web page.

20. The computer program product of claim 19 , wherein the program code further comprises:

program instructions to receive a request to access the encrypted web page, and in response, to request the user ID and the password from the user;

program instructions to perform a one-way hash function on the user password to generate a hash value;

program instructions to search the access control table for the hash value which indicates an authorization for the user to access the encrypted web page and corresponds to a document password encrypted with the user password;

program instructions to decrypt the document password using the user password; and

program instructions to decrypt the encrypted web page using the decrypted document password.

21. The computer program product of claim 20 , wherein the hash value also corresponds to an expiration date and wherein the program instructions to decrypt the encrypted web page further comprise:

program instructions to compare the expiration date with a current date; and

program instructions to decrypt the encrypted web page if the current date is before the expiration date.

22. The computer program product of claim 20 , wherein the hash value corresponds to a plurality of user IDs.

23. The computer program product of claim 20 , wherein an access to the access control table is provided as a service in a cloud environment.

24. The computer program product of claim 20 , wherein the hash value corresponds to a security role and wherein the program instructions to decrypt the encrypted web page further comprise program instructions to decrypt the encrypted web page in accordance with the security role.

Assignments (7)
RELEASE OF SECURITY INTEREST Recorded Dec 13, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069635/0332 →
RELEASE OF SECURITY INTEREST Recorded Dec 12, 2024
From: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
To: DROPBOX, INC.
Reel/Frame 069613/0744 →
SECURITY INTEREST Recorded Dec 12, 2024
From: DROPBOX, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 069604/0611 →
PATENT SECURITY AGREEMENT Recorded Mar 10, 2021
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 055670/0219 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2017
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: DROPBOX, INC.
Reel/Frame 043938/0489 →
SECURITY INTEREST Recorded Apr 14, 2017
From: DROPBOX, INC.
To: JPMORGAN CHASE BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 042254/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2011
From: BROWN, DOUGLAS S.; KELLEY, JOHN F.; SEAGER, TODD; TORRES, ROBERT J.
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 026793/0431 →