EP1417834B1

Encoding and decoding methods for secure scalable streaming and related systems

Abstract

This record has no abstract on file.

EP1417834B1, drawing sheet 1
Sheet 1 of 29

Term

Term ended

Expired 3 May 2022, 4.4 years ago.

  1. Priority
  2. Filed
  3. Granted
  4. Expired
  5. Today

30 claims: 4 independent, 26 dependent

  1. 1
    A method for securely and scalably encoding data, said method comprising the steps of :a) receiving (602) data;b) segmenting (604) said data into corresponding regions (1002 - 1032);c) scalably encoding (606) at least one of said regions into scalable data, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of the at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region;d) progressively encrypting (608) said scalable data to generate progressively encrypted scalable data, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later portion of said scalable data is encrypted based on earlier portions of the scalable data to obtain a later block of progressively encrypted data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data ;and e) packetizing (610) said progressively encrypted scalable data (2004).
  2. 2
    The method for securely and scalably encoding data as recited in Claim 1, wherein said step a) comprises:receiving video frame data.
  3. 3
    The method for securely and scalably encoding data as recited in Claim 1, wherein said step a) comprises:receiving prediction error data generated by a video prediction unit.
  4. 4
    The method for securely and scalably encoding data as recited in Claim 1, wherein said step c) further comprises:scalably encoding said at least one of said regions into said scalable data and into header data (2002), wherein said header data provides information corresponding to said scalable data.
  5. 5
    The method for securely and scalably encoding data as recited in Claim 4, in which the step of scalably encoding is performed such that the header data (2002) include information usable for performing transcoding decisions.
  6. 6
    The method for securely and scalably encoding data as recited in Claim 4 or 5, in which the step of scalably encoding is performed such that the header data (2002) include a specification of truncation points or information, from which the transcoding points can be derived.
  7. 7
    The method for securely and scalably encoding data as recited in Claim 4, wherein said step d) further comprises:dl) encrypting said header data (2002) to provide encrypted header data.
  8. 8
    The method for securely and scalably encoding data as recited in Claim 4, wherein said step e) further comprises:packetizing said progressively encrypted scalable data and said header data.
  9. 9
    The method for securely and scalably encoding data as recited in Claim 5, wherein said step e) further comprises:packetizing said progressively encrypted scalable data and said encrypted header data.
  10. 10
    The method for securely and scalably encoding data as recited in Claim 7, wherein said data is selected from the group comprising:video data, audio data, image data, graphic data, and web page data.
  11. 11
    The method for securely and scalably encoding data as recited in Claim 1, wherein said step b) comprises:segmenting said data into corresponding rectangular regions.
  12. 12
    The method for securely and scalably encoding data as recited in Claim 1, wherein said step b) comprises:segmenting said data into corresponding non-rectangular regions.
  13. 13
    The method for securely and scalably encoding data as recited in Claim 1, wherein said step b) comprises:segmenting said data into corresponding overlapping regions.
  14. 14
    The method for securely and scalably encoding data as recited in Claim 1 comprises performing steps b) through e) for only a portion of said data received at step a).
  15. 15
    The method for securely and scalably encoding data as recited in Claim 1, in which the step of progressively encrypting uses a cipher block chain or a stream cipher.
  16. 16
    The method for securely and scalably encoding data as recited in Claim 1 or 14, in which, in the step of progressively encrypting, later portions of said scalable data are encrypted such that they depend on the plaintext from earlier portions.
  17. 17
    The method for securely and scalably encoding data as recited in Claim 1 or 14, in which, in the step of progressively encrypting, later portions of said scalable data are encrypted by feeding encrypted data of earlier portions into the encryption.
  18. 18
    A method for decoding encrypted scalable data which has been securely and scalably encoded, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of an at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later portion of said scalable data is encrypted based on earlier portions of the scalable data to obtain a later block of progressively encrypted data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data, said method comprising the steps of:a) receiving (1102) a packet (2000, 2100) containing progressively encrypted and scalably encoded data (2004, 2104);b) decrypting (1104) said packet containing said progressively encrypted and scalably encoded data to generate scalably encoded regions, wherein the first block is decrypted without requiring information from the remainder of the scalable data, and wherein a later block is decrypted using data from earlier but not later portions of the scalable data;c) decoding (1106) said scalably encoded regions to provide decoded regions;and d) assembling (1108) said decoded regions to provide data.
  19. 19
    The method for decoding data which has been securely and scalably encoded, as recited in Claim 18, wherein said step a) comprises:receiving said packet containing said progressively encrypted and scalably encoded data, said packet also including header data (2002), wherein said header data provides information corresponding to said scalably encoded data.
  20. 20
    The method for decoding data which has been securely and scalably encoded, as recited in Claim 18, wherein said step a) further comprises:receiving said packet containing said progressively encrypted and scalably encoded data, said packet also including encrypted, header data (2002), wherein said encrypted header data provides information corresponding to said scalably encoded data.
  21. 21
    The method for decoding data which has been securely and scalably encoded, as recited in Claim 20, wherein step b) further comprises:decrypting said encrypted header data.
  22. 22
    The method for decoding data which has been securely and scalably encoded, as recited in Claim 18, wherein step d) further comprises:assembling said decoded regions to provide video frame data.
  23. 23
    The method for decoding data which has been securely, and scalably encoded, as recited in Claim 18, wherein step d) further comprises:assembling said decoded regions to provide prediction error video data for use by a video prediction unit.
  24. 24
    A method for securely and scalably encoding data and for transcoding a stream of data packets, each data packet having media data, the media data being progressively encrypted scalable data, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of the at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later portion of said scalable data is encrypted based on earlier portions of the scalable data to obtain a later block of progressively encrypted data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data, comprising:a method for securely and scalably encoding data in accordance with claim 1;receiving (1910) the stream of data packets;configuring (1920) the data packets according to attributes of a downstream receiving node without decrypting the progressively encrypted media data by truncating (1924) data packets or by eliminating (1922) data packets to obtain transcoded data;and sending (1930) the transcoded data to the receiving node.
  25. 25
    An apparatus for securely and scalably encoding data, said method comprising:means for receiving (602) data;means for segmenting (604) said data into corresponding regions (1002 - 1032);means for scalably encoding (606) at least one of said regions into scalable data, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of the at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region;means for progressively encrypting (608) said scalable data to generate progressively encrypted scalable data, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later portion of said scalable data is encrypted based on earlier portions of the scalable data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data;and means for packetizing (610) said progressively encrypted scalable data (2004).
  26. 26
    An apparatus for decoding encrypted scalable data which has been securely and scalably encoded, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of an at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later portion of said scalable data is encrypted based on earlier portions of the scalable data to obtain a later block of progressively encrypted data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data, comprising:means for receiving (1102) a packet (2000, 2100) containing progressively encrypted and scalably encoded data (2004, 2104);means for decrypting (1104) said packet containing said progressively encrypted and scalably encoded data to generate scalably encoded regions, wherein the first block is decrypted without requiring information from the remainder of the scalable data, and wherein a later block is decrypted using data from earlier but not later portions of the scalable data;means for decoding (1106) said scalably encoded regions to provide decoded regions;and means for assembling (1108) said decoded regions to provide data.
  27. 27
    A system comprising:an apparatus for securely and scalably encoding data in accordance with claim 25;and an apparatus for transcoding a stream of data packets, each data packet having media data, the media data being progressively encrypted scalable data, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of the at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later block of said scalable data is encrypted based on earlier portions of the scalable data to obtain a later block of progressively encrypted data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data, the apparatus for transcoding comprising: means for receiving (1910) the stream of data packets;means for configuring (1920) the data packets according to attributes of a downstream receiving node the means for configuring being operative to not perform decrypting the media data but to perform truncating (1924) data packets or eliminating (1922) data packets to obtain transcoded data;and means for sending (1930) the transcoded data to the receiving node.
  28. 28
    A method for transcoding a stream of data packets and for decoding the transcoded data, each data packet having media data, the media data being progressively encrypted scalable data, the scalable data having a first portion being decodable for obtaining a baseline quality reconstruction of the at least one region without requiring information from a remainder of the scalable data, and having progressively larger portions being decodable for obtaining improved reconstructions of the at least one region, wherein the first portion of said scalable data is encrypted to obtain a first block of progressively encrypted scalable data, which is independently decryptable without requiring information from the remainder of the scalable data, and a later portion of said scalable data is encrypted based on earlier portions of the scalable data to obtain a later block of progressively encrypted data so that decryption of the later block of progressively encrypted data requires data from earlier but not later portions of the scalable data, comprising:receiving (1910) the stream of data packets;configuring (1920) the data packets according to attributes of a downstream receiving node without decrypting the progressively encrypted media data by truncating (1924) data packets or by eliminating (1922) data packets to obtain transcoded data;sending (1930) the transcoded data to the receiving node;and a method of decoding in accordance with claim 18 in the receiving node.
Independent claims28