ALPHIN J THOTTUPATTU CB.EN.P2CSP14001 DATA HIDING IN ENCRYPTED H.264/AVC VIDEO STREAMS BY CODEWORD SUBSTITUTION
ALPHIN J THOTTUPATTU
CB.EN.P2CSP14001
DATA HIDING IN ENCRYPTED H.264/AVC VIDEOSTREAMS BY CODEWORD SUBSTITUTION
INTRODUCTION
H.264/AVC -most widely deployed video coding standard
Data hiding directly in compressed and encrypted bitstream
Technique to preserve file-size and maintaining the video quality while hiding data
Needs
Avoid the leakage of video content
Cloud server can embed the additional information Eg. : medical videos or surveillance videos
Authentication
Provision of protection of intellectual property rights
Indication of content manipulation
Comparison with other techniques
Walsh-Hadamard transform based imagewatermarking Encryption by using bit-XOR operation
A low cost fragile watermarking scheme in H.264/AVCcompressed domain content-based H.264/AVC authentication
Joint data-hiding and encryption approaches Combined scheme of encryption and watermarking
Difficulties to transplant the existing data hiding algorithms to the encrypted domain
Challenges for direct data hiding…
Determine where and how the bitstream can be modified
Insure high visual fidelity
maintain the file size
Hidden data can be extracted either from the Encrypted or decrypted video stream
THE PROPOSED SCHEME EXCELLENT PERFORMANCE IN
The data hiding is performed directly
Ensure format compliance
Strict file size preservation
Extracting the hidden data either from theencrypted or decrypted video
PROPOSED SCHEME
H.264/AVC video encryption-standard stream ciphers with
encryption keys data embedding
-codeword substituting data extraction
Encryption of H.264/AVC Video Stream
Encrypt code words of1. IPM2. residual data3. motion information (MVD)
Security, efficiency, and format compliance
Encrypted bit stream is still H.264/AVC compliant can be decoded
Intra-Prediction Mode (IPM) Encryption
Intra-coded blocks can now be predicted from neighbouring blocks
Only the difference between the predicted and coded block needs to be encoded
Encrypt IPM codeword without modifying the CBP
keep the codeword’s length unchanged
Intra_4 × 4 luminance block
Intra_16 × 16 block
Motion Vector Difference (MVD) Encryption
Protect both texture information and motion information
Exp-Golomb entropy coding - as[M zeros] [1] [INFO]
every frame of the video needs to be coded independently as a new image
Residual Data Encryption
residual data in both I-frames and P-frames should be encrypted
Encrypting based on the characteristics of codeword
CAVLC entropy coding -{Coef f token, Sign of TrailingOnes, Level, Total
zeros, Run bef ore} modifying the code words of Sign_of_TrailingOnes
and Level
Data Embedding
Since the sign of Levels are encrypted, data hiding should not affect the sign of Levels
Must remain syntax compliance so that it can be decoded
by standard decoder.
Keep the bit-rate unchanged should have the same size as the
original codeword.
Data hiding does cause visual degradation Embedded data after video decryption has
to be invisible to a human observer
Data hiding
Code words of Levels 2 and 3 within P-frames are used for data hiding
Steps Step1. The additional data is encrypted
with the chaotic pseudo-random sequence
Step2. The codewords of Levels are obtained by parsing the encrypted H.264/AVC bitstream
Data hiding
Step3 .
Step4. Choose the next codeword and then go to Step3 for data hiding.
Data extraction
Fast and simple
Scheme 1-Encrypted Domain Extraction
Step1: The code words of Levels are firstly identified by parsing the encrypted bit stream.
Step2: If the codeword belongs to code space C0, the
extracted data bit is “0” If the codeword belongs to code space C1, the
extracted data bit is “1”.
Step3: extracted bit sequence could be decrypted
Data extraction
Scheme 2-Decrypted Domain Extraction Step1: Generate encryption streams
Step2: The code words are identified by parsing the encrypted bit stream.
Step3: XOR operation Step4:
If the codeword belongs to code space C0, the extracted data bit is “0”
If the codeword belongs to code space C1, the extracted data bit is “1”
Step3: extracted bit sequence could be decrypted
Scheme 1-Encrypted Domain Extraction Scheme 2-Decrypted Domain Extraction
EXPERIMENTAL RESULTS
Security of Encryption Algorithm Secure stream cipher encrypt the bit
stream and chaotic pseudo-random sequence for additional data-Cryptographic security
Encrypts IPM, MVD and residual coefficients- Perceptual security
Visual Quality of Stego Video
visual quality of the decrypted video containing hidden data is very close to that of the original video
only the code words of Levels within P-frames are modified for data hiding
Results to evaluate the perceptual quality
Embedding Capacity
Data hiding payload can be assessed in kilobits per
second (kbits/s)
Embedding capacity determined by the no. of qualified
code words
Bit Rate Variation
BR_em -bit rate generated by encryption and data
embedding encoder
BR_orig -bit rate generated by the original encoder.
The bit rate of the encrypted and stego video remains unchanged.
Applications
cloud computing
a database manager may embed the personal information into medical videos or surveillancevideos
video notation, or authentication data
protection of intellectual property rights
Indication of content manipulation
Forensic analysis
CONCLUSION
embed additional data in encrypted H.264/AVC format encryption, data embedding & data extraction phases
can preserve the bit-rate exactly even after encryption
data hiding entirely in the encrypted domain & data extraction either in encrypted or decrypted domain
preserve file-size and only small degradation invideo quality
References
[1] W. J. Lu, A. Varna, and M. Wu, “Secure video processing: Problems andchallenges,” in Proc. IEEE Int. Conf. Acoust., Speech, Signal Processing,Prague, Czech Republic, May 2011, pp. 5856–5859.[2] B. Zhao, W. D. Kou, and H. Li, “Effective watermarking scheme inthe encrypted domain for buyer-seller watermarking protocol,” Inf. Sci.,vol. 180, no. 23, pp. 4672–4684, 2010.[3] P. J. Zheng and J. W. Huang, “Walsh-Hadamard transform in the
homomorphicencrypted domain and its application in image watermarking,”in Proc. 14th Inf. Hiding Conf., Berkeley, CA, USA, 2012, pp. 1–15.[4] W. Puech, M. Chaumont, and O. Strauss, “A reversible datahiding method for encrypted images,” Proc. SPIE, vol. 6819,pp. 68191E-1–68191E-9, Jan. 2008.[5] X. P. Zhang, “Reversible data hiding in encrypted image,” IEEE SignalProcess. Lett., vol. 18, no. 4, pp. 255–258, Apr. 2011.
References
[6] W. Hong, T. S. Chen, and H. Y. Wu, “An improved reversible datahiding in encrypted images using side match,” IEEE Signal Process.Lett., vol. 19, no. 4, pp. 199–202, Apr. 2012.[7] X. P. Zhang, “Separable reversible data hiding in encryptedimage,” IEEE Trans. Inf. Forensics Security, vol. 7, no. 2,pp. 826–832, Apr. 2012.[8] K. D. Ma, W. M. Zhang, X. F. Zhao, N. Yu, and F. Li, “Reversible datahiding in encrypted images by reserving room before encryption,” IEEETrans. Inf. Forensics Security, vol. 8, no. 3, pp. 553–562, Mar. 2013.[9] A. V. Subramanyam, S. Emmanuel, and M. S. Kankanhalli, “Robustwatermarking of compressed and encrypted JPEG2000 images,” IEEETrans. Multimedia, vol. 14, no. 3, pp. 703–716, Jun. 2012.[10] S. G. Lian, Z. X. Liu, and Z. Ren, “Commutative encryption andwatermarking in video compression,” IEEE Trans. Circuits Syst. VideoTechnol., vol. 17, no. 6, pp. 774–778, Jun. 2007.
A video coding format[1] (or sometimes video compression format) is a content representation format for storage or transmission of digital video content (such as in a data file or bitstream). Examples of video coding formats include MPEG-2 Part 2, MPEG-4 Part 2, H.264 (MPEG-4 Part 10), HEVC, Theora, Dirac, RealVideo RV40, VP8, and VP9. A specific software or hardware implementation capable of video compression and/or decompression to/from a specific video coding format is called a video codec; an example of a video codec is Xvid, which is one of several different codecs which implements encoding and decoding videos in the MPEG-4 Part 2 video coding format in software
A video coding format does not dictate all algorithms used by a codec implementing the format. For example, a large part of how a video compression typically works is by finding similarities between video frames (block-matching), and then achieving compression by copying previously-coded similar subimages (e.g., macroblocks) and adding small differences when necessary. Finding optimal combinations of such predictors and differences is an NP-complete problem,[2] meaning that it is practically impossible to find an optimal solution.
One subclass of relatively simple video coding formats are the intra-frame video formats, in which compression can only be done to each picture in the video-stream in isolation, and no attempt is made to take advantage of correlations between successive pictures over time for better compression.
A level is a restriction on parameters such as maximum resolution and data rates
In the field of video compression a video frame is compressed using different algorithms with different advantages and disadvantages, centered mainly around amount of data compression. These different algorithms for video frames are called picture types or frame types. The three major picture types used in the different video algorithms are I, P and B. They are different in the following characteristics:I‑frames are the least compressible but don't require other video frames to decode.P‑frames can use data from previous frames to decompress and are more compressible than I‑frames.B‑frames can use both previous and forward frames for data reference to get the highest amount of data compression.An I‑frame is an 'Intra-coded picture', in effect a fully specified picture, like a conventional static image file. P‑frames and B‑frames hold only part of the image information, so they need less space to store than an I‑frame and thus improve video compression rates.A P‑frame ('Predicted picture') holds only the changes in the image from the previous frame. For example, in a scene where a car moves across a stationary background, only the car's movements need to be encoded. The encoder does not need to store the unchanging background pixels in the P‑frame, thus saving space. P‑frames are also known as delta‑frames.
Intra coded frames/slices (I‑frames/slices or Key frames)See also: Key frame (animation) and Intra-frameI-frames are coded without reference to any frame except themselves.May be generated by an encoder to create a random access point (to allow a decoder to start decoding properly from scratch at that picture location).May also be generated when differentiating image details prohibit generation of effective P or B-frames.Typically require more bits to encode than other frame types.Often, I‑frames are used for random access and are used as references for the decoding of other pictures. Intra refresh periods of a half-second are common on such applications as digital television broadcast and DVD storage. Longer refresh periods may be used in some environments. For example, in videoconferencing systems it is common to send I-frames very infrequently.Predicted frames/slices (P-frames/slices)Require the prior decoding of some other picture(s) in order to be decoded.May contain both image data and motion vector displacements and combinations of the two.Can reference previous pictures in decoding order.Older standard designs (such as MPEG-2) use only one previously decoded picture as a reference during decoding, and require that picture to also precede the P picture in display order.In H.264, can use multiple previously decoded pictures as references during decoding, and can have any arbitrary display-order relationship relative to the picture(s) used for its prediction.Typically require fewer bits for encoding than I pictures do.
An I-frame is a compressed version of a single uncompressed (raw) frame. It takes advantage of spatial redundancy and of the inability of the eye to detect certain changes in the image. Unlike P-frames and B-frames, I-frames do not depend on data in the preceding or the following frames. Briefly, the raw frame is divided into 8 pixel by 8 pixel blocks. The data in each block is transformed by the discrete cosine transform (DCT).