IP Library Granted Patent US 7,206,748
Granted Patent B1
US 7,206,748 · App. 09/209,440 · Granted Apr 17, 2007

Multimedia player toolkit for electronic content delivery

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 7,206,748
App. No.
09/209,440
Granted
Apr 17, 2007
Kind
B1
Abstract

A method provides a collection of data structures and subroutines in a software toolkit, for developing an application for playing digital content data. The method comprises steps of receiving previously encrypted content data encrypted with an encrypted key from an external source; storing the previously encrypted content data in a library; selecting one or more encrypted content data from the library to play; and decrypting each content data selected to be played with its unique encryption key, wherein the decrypting is performed in a tamper-resistant subroutine for deterring unauthorized access to the instructions for decrypting the content data and for deterring unauthorized access to the encryption key.

Claims (73)

1. A computer readable medium containing program instructions for a software toolkit containing a collection of data structures and subroutines for developing an application for playing digital content data, the program instructions comprising instructions for:

receiving previously encrypted content data encrypted with an encryption key from an external source;

decrypting the received previously encrypted content data;

reencrypting the decrypted received content data with a local encrypting key wherein the local encrypting key is a type of encryption key which enables streaming playback of the encrypted content while the encrypted content is being decrypted and without the need to first decrypt the entire encrypted content;

storing the previously encrypted content data in a library;

selecting one or more encrypted content data from the library to play; and

decrypting each content data selected to bc played with its unique decryption key,

wherein the decrypting is performed in a tamper-resistant subroutine for deterring unauthorized access to the instructions for decrypting the content data and for deterring unauthorized access to the decryption key; and;

wherein the decrypting and reencrypting instructions are performed in the tamper resistance subroutine.

2. The computer readable medium according to claim 1 , wherein the step of:

reencrypting the decrypted received content data with a local encrypting key includes encrypting with a SEAL algorithm.

3. The computer readable medium according to claim 1 , wherein the instruction for reencrypting the decrypted received content data utilizes a unique local decrypting key for each content data prior to storage in the library.

4. The computer readable medium according to claim 3 , further comprising instruction for:

reencrypting each unique local decrypting key with a common local encryption key.

5. The computer readable medium according to claim 4 , further including instructions for:

storing the unique local decrypting key in several distinct parts throughout an information processing system.

6. The computer readable medium according to claim 4 , further including instructions for:

storing the common local decrypting key in several distinct parts throughout an information processing system.

7. The computer readable medium according to claim 1 , further including instructions for:

creating play-lists for playing one or more content data and

playing the content data in each play list.

8. The computer readable medium according to claim 7 , further including instructions for:

naming each play-list created; and

storing the named play list for playing the content data in each play list at a later time.

9. The computer readable medium according to claim 7 , further including instructions for:

sorting each play-list in response to a user request.

10. The computer readable medium according to claim 1 , further including instructions for:

playing each content data selected to be played; and

displaying the metadata associated with the content data.

11. A method for providing a collection of data structures and subroutines for developing an application for playing digital content data, the method comprising the steps of:

receiving previously encrypted content data encrypted with an encrypted key from an external source;

decrypting the received previously encrypted content data;

reencrypting the decrypted received content data with a local encrypting key wherein the local encrypting key is a type of encryption key which enables streaming playback of the encrypted content while the encrypted content is being decrypted and without the need to first decrypt the entire encrypted content;

storing the previously encrypted content data in a library;

selecting one or more encrypted content data from the library to play; and

decrypting each content data selected to be played with its unique decrypting key;

wherein the decrypting is performed in a tamper-resistant subroutine for deterring unauthorized access to the instructions for decrypting the content data and for deterring unauthorized access to the decrypting key; and

wherein the decrypting and reencrypting instructions are performed in the tamper resistance subroutine.

12. The method according to claim 11 , further comprising the step of:

decrypting the received previously encrypted content data prior to storage in the library;

reencrypting the decrypted received content data with a local encrypting key includes encrypting with a SEAL algorithm.

13. The method according to claim 12 , wherein the step for reencrypting the decrypted received content data utilizes a unique local decrypting key for each content data prior to storage in the library.

14. The method according to claim 12 , further comprising the step of:

reencrypting each unique local encryption key with a common local encryption key.

15. The method according to claim 13 , further comprising the step of:

storing the unique local encryption key in several distinct parts throughout an information processing system.

16. The method according to claim 12 , further comprising the step of:

storing the common local encryption key in several distinct parts throughout an information processing system.

17. The method according to claim 11 , further comprising the steps of:

creating play-lists for playing one or more content data and

playing the content data in each play list.

18. The method according to claim 17 , further comprising the steps of:

naming each play-list created; and

storing the named play list for playing the content data in each play list at a later time.

19. The method according to claim 17 , further comprising the step of

sorting each play-list in response to a user request.

20. The method according to claim 14 , further comprising the steps of:

playing each content data selected to be played; and

displaying the metadata associated with the content data.

21. An end user device for rendering encrypted content comprising:

an interface to a computer readable medium for receiving previously encrypted content data encrypted with an encrypted with a key from an external source;

an interface to a library for storage of the content;

a software application for

decrypting the received previously encrypted content;

reencrypting the decrypted received content data with a local encrypting key wherein the local encrypting key is a type of encryption key which enables streaming playback of the encrypted content while the encrypted content is being decrypted and without the need to first decrypt the entire encrypted content; and

storing the previously encrypted content data in the library;

a user interface for selecting one or more encrypted content data from the library to play; and

a tamper resistant environment which deterring unauthorized access to the instructions for decrypting the content data and for deterring unauthorized access to the decrypting key, whereby inside the tamper resistant environment each content data selected to be played is decrypted with its unique decrypting key; and

wherein the decrypting and reencrypting instructions are performed in the tamper resistance environment.

22. The end user device according to claim 21 , wherein the local encrypting key includes a SEAL algorithm.

23. The end user device according to claim 21 , wherein the local encrypting key includes a unique local encryption key for each content data prior to storage in the library.

24. The end user device according to claim 23 , wherein the software application stores the unique local encryption key in several distinct parts throughout an information processing system.

25. The end user device according to claim 22 , wherein the software application stores the common local encryption key in several distinct parts throughout an information processing system.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2024
From: LEVEL 3 COMMUNICATIONS, LLC
To: SANDPIPER CDN, LLC
Reel/Frame 067244/0690 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 19, 2007
From: INTERNATIONAL BUSINESS MACHINES CORPORATION
To: LEVEL 3 COMMUNICATIONS, LLC
Reel/Frame 020403/0487 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 10, 1998
From: DORAK, JOHN J. JR.; GRUSE, GEORGE G.; MILSTED, KENNETH LOUIS
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 009644/0800 →