JPEG2000 syntax-compliant encryption with full scalability
First Claim
1. A method performed by a computing device for encrypting media data, the media data and the encrypted media data being a JPEG2000 compliant image, the method comprising:
- providing a global initialization vector for the media data;
adding the generated global initialization vector to a header of the media data;
identifying independent encryption segments of the media data, the independent encryption segments being codeword segments from code-blocks of the media data; and
for each identified independent encryption segment,generating by the computing device an initialization vector for the independent encryption segment that is derived from the global initialization vector and from a unique identifier of the independent encryption segment; and
encrypting by the computing device the data of the independent encryption segment using the generated initialization vector for the independent encryption segment, the encrypted data being syntax-compliant with JPEG2000,wherein the header with the global initialization vector and the encrypted data of each independent encryption segment without the initialization vector for each independent encryption segment form an encrypted JPEG2000 compliant image that can be truncated without having to decrypt the encrypted data of the independent encryption segments.
3 Assignments
0 Petitions
Accused Products
Abstract
A method and system is provided for encrypting an image compressed with a JPEG2000-based compression with minimal overhead so that the encrypted codestream is compliant with the syntax of the JPEG2000-based compression and can be scaled without decrypting. The encryption system generates, for each independent encryption segment of a codestream for an image, a unique initialization vector from a global initialization vector in such a way that the initialization vectors can be generated during decryption from the global initialization vector, even after truncation. The encryption system encrypts each independent encryption segment using its unique initialization vector. The encryption system ensures that the encrypted codestream is compliant with the syntax of the JPEG2000-based compression both as originally generated and as truncated by an encryption-unaware device.
31 Citations
15 Claims
-
1. A method performed by a computing device for encrypting media data, the media data and the encrypted media data being a JPEG2000 compliant image, the method comprising:
-
providing a global initialization vector for the media data;
adding the generated global initialization vector to a header of the media data;identifying independent encryption segments of the media data, the independent encryption segments being codeword segments from code-blocks of the media data; and for each identified independent encryption segment, generating by the computing device an initialization vector for the independent encryption segment that is derived from the global initialization vector and from a unique identifier of the independent encryption segment; and encrypting by the computing device the data of the independent encryption segment using the generated initialization vector for the independent encryption segment, the encrypted data being syntax-compliant with JPEG2000, wherein the header with the global initialization vector and the encrypted data of each independent encryption segment without the initialization vector for each independent encryption segment form an encrypted JPEG2000 compliant image that can be truncated without having to decrypt the encrypted data of the independent encryption segments. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A system for encrypting media data so that it is compliant with a JPEG2000-based compression, comprising:
-
a memory storing computer-executable instructions of; a component that identifies a global initialization vector for the media data; a component that identifies code-blocks of the media data; a component that identifies codeword segments of the code-blocks; a component that identifies independent encryption segments from the codeword segments; a component that generates an initialization vector for each independent encryption segment that is derived from the global initialization vector and from a unique identifier of the independent encryption segment; a component that independently encrypts data of each independent encryption segment using the generated initialization vector for the independent encryption segment so that each encrypted independent encryption segment is JPEG2000-syntax compliant by iteratively encrypting the data of each independent encryption segment until the encrypted independent encryption segment is JPEG2000-syntax compliant; a component that partitions code-blocks into code-block contributions to a packet so that when a bitstream is terminated at a code-block contribution to a packet, the remaining code-block contributions to a packet are JPEG2000-syntax compliant and can be decrypted; and a component that generates a codestream that includes the identified global initialization vector; and a processor for executing the computer-executable instructions stored in the memory. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A computer-readable medium containing a syntax-compliant encryption of data that is compressed using a JPEG2000-based compression, the syntax-compliant encryption being generated by a method comprising:
-
identifying a global initialization vector for the data;
identifying code-blocks of the data;identifying codeword segments of the code-blocks;
identifying independent encryption segments from the code-blocks;
for each identified independent encryption segment, generating an initialization vector for the independent encryption segment that is derived from the global initialization vector and from a unique identifier of the independent encryption segment; andencrypting the data in the encryption segment using the generated initialization vector to generate ciphertext that is compliant with the syntax of a JPEG2000-based compression; and generating a codestream that includes the identified global initialization vector and the encrypted data, wherein each independent encryption segment is encrypted independently so that when an independent encryption segment is truncated from the data without decrypting the data, the non-truncated data is JPEG2000-syntax compliant and can be decrypted. - View Dependent Claims (15)
-
Specification