IP Library Granted Patent US 9,407,432
Granted Patent B2
US 9,407,432 · App. 14/219,962 · Granted Aug 2, 2016

System and method for efficient and secure distribution of digital content

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,407,432
App. No.
14/219,962
Granted
Aug 2, 2016
Kind
B2
Abstract

One embodiment provides a system for processing encrypted content. During operation, a client computing device determines a request for content based on the identity of the user or the client computing device. Content is received which has been encrypted using a master encryption, where the master encryption key is not known to the client computing device. The client computing device generates an interest packet that includes a request for a user-specific re-encryption key, and, based on the information in the interest packet, receives a content object that includes the user-specific re-encryption key. The client computing device decrypts the master-encrypted content by: re-encrypting the master-encrypted content, using the user-specific re-encryption key to transform the master-encrypted content to a user-specific encrypted content; and decrypting the transformed user-specific encrypted content using a user-specific key. This thereby facilitates the secure distribution of user-specific content without requiring a content source to distribute user-specific encrypted content.

Claims (89)

1. A computer-implemented method for processing encrypted content, the method comprising:

in response to a first interest packet for content based on a name included in the first interest packet, wherein the name is a hierarchically structured variable length identifier which comprises contiguous name components ordered from a most general level to a most specific level, receiving, by a client computing device, master-encrypted content which has been encrypted by a content producing device based on a master encryption key known only to the content producing device, wherein the client computing device and the content producing device communicate over a content centric network;

obtaining a user-specific re-encryption key that is generated for a user associated with the client computing device and is based on the name included in the first interest packet;

re-encrypting the master-encrypted content by using the user-specific re-encryption key to directly transform the master-encrypted content to user-specific encrypted content, which can only be decrypted by a user-specific decryption key; and

decrypting the transformed user-specific encrypted content by using the user-specific decryption key,

wherein receiving the master-encrypted content involves transmitting, by the content producing device or a source other than the content producing device, the master encrypted content.

2. The method of claim 1 , further comprising:

determining the first interest packet for content based on the identity of the user or the client computing device;

generating a second interest packet that includes a request for a user-specific re-encryption key; and

receiving a first content object packet that is responsive to the second interest packet and indicates the user-specific re-encryption key.

3. The method of claim 2 , wherein the second interest packet comprises one or more of:

a public key of the user; or

a name for the content corresponding to the requested user-specific re-encryption key.

4. The method of claim 2 , wherein the second interest packet comprises authentication information relating to the user.

5. The method of claim 2 , further comprising:

receiving, by the client computing device, a second content object packet that includes information relating to pricing and is based on the information in the second interest packet; and

generating a third interest packet that includes information relating to payment.

6. The method of claim 1 , wherein re-encrypting the master-encrypted content is performed by an intermediate storage device associated with one or more of:

an authorized distributor;

an authorized retailer;

a storage device selected specifically for a particular Internet Service Provider (ISP); or

any medium capable of caching the master-encrypted content and the corresponding user-specific re-encryption key.

7. The method of claim 1 , further comprising:

sending, by an intermediate storage device, the transformed user-specific encrypted content to a client computing device, thereby allowing the client computing device to decrypt the transformed user-specific encrypted content using the user-specific decryption key.

8. The method of claim 1 , wherein the received content is encrypted based on a symmetric key, and wherein the symmetric key is encrypted based on the master encryption key,

and wherein re-encrypting the received master-encrypted content further comprises:

re-encrypting the master-encrypted symmetric key, based on the user-specific re-encryption key, to a user-specific encrypted symmetric key;

decrypting the re-encrypted symmetric key based on the user-specific decryption key; and

decrypting the symmetric key-encrypted content based on the decrypted symmetric key.

9. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method, the method comprising:

in response to a first interest packet for content based on a name included in the first interest packet, wherein the name is a hierarchically structured variable length identifier which comprises contiguous name components ordered from a most general level to a most specific level, receiving, by a client computing device, master-encrypted content which has been encrypted by a content producing device based on a master encryption key known only to the content producing device, wherein the client computing device and the content producing device communicate over a content centric network;

obtaining a user-specific re-encryption key that is generated for a user associated with the client computing device and is based on the name included in the first interest packet;

re-encrypting the master-encrypted content by using the user-specific re-encryption key to directly transform the master-encrypted content to user-specific encrypted content, which can only be decrypted by a user-specific decryption key; and

decrypting the transformed user-specific encrypted content by using the user-specific decryption key,

wherein receiving the master-encrypted content involves transmitting, by the content producing device or a source other than the content producing device, the master encrypted content.

10. The storage medium of claim 9 , wherein the method further comprises:

determining the first interest packet for content based on the identity of the user or the client computing device;

generating a second interest packet that includes a request for a user-specific re-encryption key; and

receiving a first content object packet that is responsive to the second interest packet and indicates the user-specific re-encryption key.

11. The storage medium of claim 10 , wherein the second interest packet comprises one or more of:

a public key of the user; or

a name for the content corresponding to the requested user-specific re-encryption key.

12. The storage medium of claim 10 , wherein the second interest packet comprises authentication information relating to the user.

13. The storage medium of claim 10 , wherein the method further comprises:

receiving, by the client computing device, a second content object packet that includes information relating to pricing and is based on the information in the second interest packet; and

generating a third interest packet that includes information relating to payment.

14. The storage medium of claim 9 , wherein re-encrypting the master-encrypted content is performed by an intermediate storage device associated with one or more of:

an authorized distributor;

an authorized retailer;

a storage device selected specifically for a particular Internet Service Provider (ISP); or

any medium capable of caching the master-encrypted content and the corresponding user-specific re-encryption key.

15. The storage medium of claim 9 , wherein the method further comprises:

sending, by an intermediate storage device, the transformed user-specific encrypted content to a client computing device, thereby allowing the client computing device to decrypt the transformed user-specific encrypted content using the user-specific decryption key.

16. The storage medium of claim 9 , wherein the received content is encrypted based on a symmetric key, and wherein the symmetric key is encrypted based on the master encryption key,

and wherein transforming the received master-encrypted content further comprises:

re-encrypting the master-encrypted symmetric key, based on the user-specific re-encryption key, to a user-specific encrypted symmetric key;

decrypting the re-encrypted symmetric key based on the user-specific decryption key; and

decrypting the symmetric key-encrypted content based on the decrypted symmetric key.

17. A computer system for processing encrypted content, the system comprising:

a processor;

a storage device storing instructions that when executed by the processor cause the processor to perform a method, the method comprising:

in response to a first interest packet for content based on a name included in the first interest packet, wherein the name is a hierarchically structured variable length identifier which comprises contiguous name components ordered from a most general level to a most specific level, receiving, by a client computing device, master-encrypted content which has been encrypted by a content producing device based on a master encryption key known only to the content producing device, wherein the client computing device and the content producing device communicate over a content centric network;

obtaining a user-specific re-encryption key that is generated for a user associated with the client computing device and is based on the name included in the first interest packet;

re-encrypting the master-encrypted content by using the user-specific re-encryption key to directly transform the master-encrypted content to user-specific encrypted content, which can only be decrypted by a user-specific decryption key; and

decrypting the transformed user-specific encrypted content by using the user-specific decryption key,

wherein receiving the master-encrypted content involves transmitting, by the content producing device or a source other than the content producing device, the master encrypted content.

18. The computer system of claim 17 , wherein the method further comprises:

determining the first interest packet for content based on the identity of the user or the client computing device;

generating a second interest packet that includes a request for a user-specific re-encryption key; and

receiving a first content object packet that is responsive to the second interest packet and indicates the user-specific re-encryption key.

19. The computer system of claim 18 , wherein the second interest packet comprises one or more of:

a public key of the user; or

a name for the content corresponding to the requested user-specific re-encryption key.

20. The computer system of claim 18 , wherein the second interest packet comprises authentication information relating to the user.

21. The computer system of claim 18 , wherein the method further comprises:

receiving, by the client computing device, a second content object packet that includes information relating to pricing and is based on the information in the second interest packet; and

generating a third interest packet that includes information relating to payment.

22. The computer system of claim 17 , wherein re-encrypting of the master-encrypted content is performed by an intermediate storage device associated with one or more of:

an authorized distributor;

an authorized retailer;

a storage device selected specifically for a particular Internet Service Provider (ISP); or

any medium capable of caching the master-encrypted content and the corresponding user-specific re-encryption key.

23. The computer system of claim 17 , wherein the method further comprises:

sending, by an intermediate storage device, the transformed user-specific encrypted content to a client computing device, thereby allowing the client computing device to decrypt the transformed user-specific encrypted content using the user-specific decryption key.

24. The computer system of claim 17 , wherein the received content is encrypted based on a symmetric key, and wherein the symmetric key is encrypted based on the master encryption key,

and wherein re-encrypting the received master-encrypted content further comprises:

re-encrypting the master-encrypted symmetric key, based on the user-specific re-encryption key, to a user-specific encrypted symmetric key;

decrypting the re-encrypted symmetric key based on the user-specific decryption key; and

decrypting the symmetric key-encrypted content based on the decrypted symmetric key.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2017
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: CISCO SYSTEMS, INC.
Reel/Frame 041714/0373 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 14, 2017
From: CISCO SYSTEMS, INC.
To: CISCO TECHNOLOGY, INC.
Reel/Frame 041715/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2014
From: UZUN, ERSIN
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 032496/0468 →