IP Library Granted Patent US 7,328,352
Granted Patent B2
US 7,328,352 · App. 10/266,323 · Granted Feb 5, 2008

Apparatus and method for reading or writing user data

Assignee: Koninklijke Philips Electronics N.V.
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,328,352
App. No.
10/266,323
Granted
Feb 5, 2008
Kind
B2
Abstract

An apparatus for reading or writing user data stored block-wise in encrypted form on a storage medium. The apparatus includes a command interface for receiving and interpreting a read (or write) command. The read command includes a user data information specifying which user data are to be read. A reader reads the user data and a related encryption indicator from a block of the storage medium. The encryption indicator indicates if said user data is encrypted or not. The reader further reads a related key data identifier specifying which key data to use for decrypting the user data if said encryption indicator indicates that said user data are encrypted. A decryptor decrypts the user data using the key data.

Claims (49)

1. An apparatus for reading user data comprising files stored block-wise on a storage medium, the storage of which is divided into blocks, and for storing a plurality of keys associated with said files, said apparatus comprising:

a command interface for receiving and interpreting a read command, said read command including a user data information specifying which file of said files is to be read,

reading means for reading said file and a related encryption indicator from a block of said storage medium, said encryption indicator indicating if said file is encrypted or not, said reading means being further adapted for reading a related key data identifier specifying which key data of said plurality of keys to use for decrypting said file if said encryption indicator indicates that said file is encrypted, wherein the key data identifier is stored next to the block from which the user data are to be read,

decryption means for decrypting said user data using said key data, and

output means for outputting said decrypted user data.

2. The apparatus according to claim 1 ,

wherein said key data are stored in encrypted form on said storage medium,

wherein said reading means are adapted for reading said key data to be used for decrypting said user data, and

wherein said decryption means are further adapted for decrypting said encrypted key data.

3. The apparatus according to claim 1 ,

wherein said read command includes a re-encryption key data information specifying which re-encryption key data to use for re-encrypting said decrypted user data before outputting it, and

wherein said apparatus further comprises re-encryption means for re-encrypting said decrypted user data before outputting it by said output means.

4. The apparatus according to claim 1 , wherein said key data identifier is stored in the header or sub-header of a block storing user data encrypted by use of the key data specified by said key data identifier.

5. The apparatus according to claim 1 , wherein said key data identifier is stored in a sub-channel of a main data channel that includes the user data.

6. The apparatus according to claim 1 , wherein an initialization vector is stored in the header or sub-header of a block storing related user data in encrypted form.

7. The apparatus according to claim 1 , wherein said key data identifier further specifies additional information, in particular rights information, associated with the user data stored in the accessed block.

8. The apparatus according to claim 1 , wherein said plurality of keys are stored in a table on said storage medium.

9. The apparatus according to claim 1 , wherein said plurality of keys are stored in a look-up table on said storage medium, said look-up table storing different key data for different blocks.

10. A method of reading user data comprising files stored block-wise on a storage medium, the storage of which is divided into blocks, and for reading a plurality of keys stored on said storage medium and associated with said files, said method comprising the acts of;

receiving and interpreting a read command, said read command including a user data information specifying which file of said files is to be read,

reading said file and a related encryption indicator from a block of said storage medium, said encryption indicator indicating if said file is encrypted or not, said reading means being further adapted for reading a related key data identifier specifying which key data of said plurality of keys to use for decrypting said user data if said encryption indicator indicates that said file is encrypted, wherein the key data identifier is stored next to the block from which the user data are to be read,

decrypting said user data using said key data, and

outputting said decrypted user data.

11. A computer program product stored on a computer readable storage medium, the computer program product comprising computer program code means if or causing a computer to perform the acts of the method as claimed in claim 10 when said computer program is run on a computer.

12. The method according to claim 10 , wherein said plurality of keys are stored in a table on said storage medium.

13. The method according to claim 10 , wherein said plurality of keys are stored in a look-up table on said storage medium, said look-up table storing different key data for different blocks.

14. An apparatus for writing user data comprising files block-wise onto a storage medium, the storage of which is divided into blocks, and for writing a plurality of keys associated with said files, comprising:

a command interface for receiving and interpreting a write command, said write command including a user data information specifying which file of said files is to be written and a related encryption indicator indicating if said file shall be written in encrypted form or not,

encryption means for encrypting said file using key data of said plurality of keys, and

writing means for writing said file, said encryption indicator and, if said user data are encrypted, a key data identifier specifying which key data of said plurality of keys to use for encrypting said file, wherein the key data identifier is stored next to a block from which the user data are to be read.

15. The apparatus according to claim 14 ,

wherein said write command includes the key data to be used for encrypting said user data, said key data being included in encrypted form, and

wherein said apparatus further comprises key decryption means for decrypting said encrypted key data.

16. The apparatus according to claim 14 ,

wherein said key data are stored in encrypted form on said storage medium,

wherein said write command includes said key data identifier identifying the key data to be read from said storage medium and to be used for encrypting said user data,

wherein said apparatus further comprises:

reading means for reading said identified key data from said storage medium, and

key decryption means for decrypting said encrypted key data.

17. The apparatus according to claim 14 , wherein said plurality of keys are stored in a table on said storage medium.

18. The apparatus according to claim 14 , wherein said plurality of keys are stored in a look-up table on said storage medium, said look-up table storing different key data for different blocks.

19. A method of writing user data comprising files block-wise onto a storage medium, the storage of which is divided into blocks, and for writing a plurality of keys on said storage medium and associated with said files, said method comprising the acts of:

receiving and interpreting a write command, said write command including a user data information specifying which of said file is to be written and a related encryption indicator indicating if said file shall be written in encrypted form or not,

encrypting said file using key data of said plurality of keys and writing said file, said encryption indicator and, if said user data are encrypted, a key data identifier specifying which key data of said plurality of keys to use for encrypting said file, wherein the key data identifier is stored next to a block from which the user data are to be read.

20. The method according to claim 19 , wherein said plurality of keys are stored in a table on said storage medium.

21. The method according to claim 19 , wherein said plurality of keys are stored in a look-up table on said storage medium, said look-up table storing different key data for different blocks.

22. A storage medium storing files in blocks and storing a plurality of keys associated with said files, said files being selectively stored in encrypted or unencrypted form, further storing in each block an encryption indicator indicating if a tile of said files stored in said block is encrypted or not and a key identifier specifying which key of the plurality of keys is used for encrypting said file if said file is encrypted, wherein the key data identifier is stored next to the block from which the user data are to be read.

23. The storage medium according to claim 22 , wherein said plurality of keys are stored in a table on said storage medium.

24. The storage medium according to claim 22 , wherein said plurality of keys are stored in a look-up table on said storage medium, said look-up table storing different keys for different blocks.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 21, 2003
From: FONTIJN, WILHELMUS FRANSISCUS; STARING, ANTONIUS ADRIAAN MARIA; SINITSYN, ALEXANDRE
To: KONINKLIJKE PHILIPS ELECTRONICS N.V.
Reel/Frame 013685/0639 →
Priority Claims (1)
EP 01203907 · Oct 12, 2001 · regional
Continuity (1)
Related Publication 20030091186A1 · May 15, 2003