Optimization of video steganography with additional compression and encryption

,


Introduction
Nowadays the development of communication network technology is very fast which makes information exchange very easy.Information is the wealth of an organization that must be sent safely through an unsecured communication network.Steganography serves to guard from extracting confidential information by unauthorized parties.Steganography is the art of hiding confidential information into cover media where the unauthorized party is very difficult to detect the existence of confidential information .Recently, many data hiding algorithms have been developed on FLV [1,2,5,6].Data hiding is very important in identification, authentication, and copyright protection of digital media [1].Sometimes confidential information has a size that larger than the cover media, cause distortion in the cover media.This can cause suspicion by unauthorized parties to the existence of confidential information.These problems can be minimized by compression.
Compression is the conversion of input data streams into other data streams that have a smaller size [29].Stream can be a file, buffer in memory, or individual bits sent.Compression on confidential information can reduce file size [8, 12-14, 17, 19, 23, 24, 26, 27].So that confidential information is much safer, encryption needs to be done [7-9, 11, 13-16,18, 20-22, 24, 25, 28].Encryption is an algorithm that performs various substitutions and transforms the plaintext [30].The original information is called plainteks while the encrypted form is called chipertext.Original information that has become a chiperteks has a high level of security [9].Chipertext is divided and distributed at the end of each video tag evenly so that it has a layered security level.
The structure of FLV file consists of a short header, followed by a meta tag and then alternates between the audio tag and the video tag as shown in Figure 1 [1,5,6].The header consists of 4 parts, the signature with the hex value "46 4c 56" which is translate to "FLV" in the hex string value; version with hex values "01"; flags with hex values "04" (audio), "01" (video), or "05" (audio + video); and offset the hex value "00 00 00 09".Meta tags, audio tags, and video tags have the same 6 parts namely type, body length, timestamp, timestampextended, streamed, and body (actual data).Type tags are 0x08 (audio), 0x09 (video), and 0x12 (meta).(4) distributing the stego file among all of the video tags.Each method has its corresponding strengths and weaknesses, and the stego FLVs created using the proposed techniques were analyzed qualitatively by using auditory-visual perception tests and quantitatively by using video tags evolution graphs and histograms and RGB averaging analysis.
The methods of hiding the stego file at the end of a video tag and distributing the stego file among all of the video tags of a carrier are recommended as the most effective steganographic methods for hiding information inside an FLV carrier for the following reasons: (1) no noticeable distortions can be observed in the video and audio quality of the stego FLV, making it looks like a typical FLV out in the open; (2) the stego file is hidden inside the FLV and not at the EOF or header, making it less prone to suspicion or attack; (3) the stego file cannot be altered even if the stego FLV is converted to a different file format and when its header or metadata is changed or removed; (4) checking for suspicious content (the video tags evolutions and histograms) via software, such as automated FLV analysis software, is difficult for a typical third party or observer who obtains the stego FLV.
Mozo et al. [2] presented his experiments on how FLV file structures can be manipulated to store confidential data.The FLV file characteristics can store all of data types in it and extract the same hidden information.Embedding data is safer at the end of the video tag.Very promising results include lossless compression, perfect original images and sound quality when modified FLV is transferred via the internet.The application has been applied to medical privacy records.Chang et al. [3] presented a data hiding algorithm using the (Discrete Sine Transform) DCT and (Discrete Cosine Transform) DST method in High-Efficiency Video Coding (HEVC).HEVC intra coded frame is used to hide data without spreading errors from neighboring blocks.Blocks from the quantized DCT (QDCT) and DST coefficients are selected to hide confidential data using specific intra prediction mode.The combination modes from neighboring blocks will produce three patterns of error distribution direction from data hiding consisting of vertical, horizontal, and diagonal.Each error distribution pattern has a range of intra prediction modes that protect a group of pixels in a particular direction.Range starts at 0 and ends 34.
Ma et al. [4] presented a data hiding algorithm using the QDCT (Quantized Discrete Cosine Transform) method in H.264/advanced video coding (AVC).To maintain the spread of distortion, the author has developed three conditions to determine the direction of intraframe prediction modes.Several paired coefficients from the 4x4 DCCT block to accumulate embedding that cause distortion.The proposed method can achieve low visual distortion.However, this method has the disadvantage of low insertion capacity because data hiding is

Proposed Algorithm
The proposed algorithm is the development of the previous algorithm [1].The algorithm previously [1] said that the distribution of secret data at the end of the video tags is the best steganography algorithm in FLV.The proposed algorithm adds a compression and encryption algorithm to secret data before being distributed.There are 2 proposed algorithms, embedding and extracting algorithms.Embedding algorithm is an algorithm that embeds secret data into the cover video so that it produces stego video.Extracting algorithm is an algorithm that extracts secret data from stego video.Design of embedding algorithm as shown in Figure 2. The algorithm process is explained as follows: -Determine secret data and cover FLV.
-Split the cover FLV so that it produces frames (video tags) and audio tags.
-Compress secret data using ZIP algorithm.
-Encrypt secret data that has been compressed using AES algorithm.
-Embed secret data that has been compressed and encrypted at the end of the frame evenly -Merge between non stego frames, stego frames, and audio tags so as to produce stego FLV.-Split cover FLV and stego FLV to produce frames (video tags) and audio tags.
-Subtract frames between stego FLV with cover FLV generating secret data that has been compressed and encrypted.-Decrypt secret data that has been compressed and encrypted using the AES algorithm to produce secret data that has been compressed.-Decompress secret data that has been compressed using the ZIP algorithm to generate secret data.
Figure 3. Design of extracting algorithm

Results and Analysis
Several trials were conducted to prove the video quality of the proposed algorithm compared to the previous algorithm [1].Quality measurement is very difficult to use the naked eye.Two commonly used quality measurements are MSE and PSNR [7-10, 12, 14, 16, 18, 20, 22-25, 27].Other quality measurements are playback and histogram of the video tag evolution.PSNR is a comparison between the maximum value of a signal measured by the amount of noise that affects the signal.PSNR is usually measured in decibels (dB).PSNR is used to find out the FLV cover quality comparison with FLV stego.To determine the PSNR, the MSE value (Mean Square Error) must first be determined as given in (2).MSE is the error value of the average square between FLV cover and FLV stego as given in (1).
where, M is the row while N is the column.C (i, j) is the pixel value of FLV cover in row i and column j. S (i, j) is the pixel value of FLV stego in row i and column j.

Based on MSE and PSNR
The proposed algorithm has better quality than the previous algorithm [1] as shown in Table 2.The proposed algorithm has a smaller MSE value.The proposed algorithm also has a greater PSNR value.The smaller the MSE value means the better the quality.The greater the value of the PSNR means the better the quality.

Based on Histogram of The Video Tag Evolution
The proposed algorithm has better quality with the previous algorithm [1] as shown in Figure 4. Figure 4 (a) is a comparison of the histogram evolution of video tags from cover FLV (1.flv), stego FLV from proposed algorithm, and stego FLV from previous algorithm [1]. Figure 4 (b) is a comparison of histogram evolution of video tags from cover FLV (2.flv), stego FLV from proposed algorithm, and stego FLV from previous algorithm [1]. Figure 4 (c) is a comparison of histogram evolution tag video from cover FLV (3.flv), stego FLV from proposed algorithm, and stego FLV from previous algorithm [1].The x axis is the order of the video tag while the y axis is the number of data (bytes) of the video tag.The proposed algorithm has a smaller evolution of video tags means the better the quality.

3.3.Based on Playback
The proposed algorithm has the same good quality as the previous algorithm [1] as shown in Figure 5. Figure 5 (a) is a screenshot of cover FLV (1.flv).Figure 5 (b) is a FLV stego screenshot from the previous algorithm [1]. Figure 5 (c) is a FLV stego screenshot of the proposed algorithm.If we look at the naked eye at 10 th second, there is no distortion seen from either the previous algorithm [1] or the proposed algorithm.The proposed algorithm has has better quality than the previous algorithm [1] as shown in Figure 6. Figure 6 (a) is a screenshot of cover FLV (2.flv).Figure 6 (b) is a FLV stego screenshot from the previous algorithm [1]. Figure 6 (c) is a FLV stego screenshot of the proposed algorithm.If we look at the naked eye at 3 th second, there is no distortion seen from the proposed algorithm while the previous algorithm [1] looks distortion.The proposed algorithm has has better quality than the previous algorithm [1] as shown in Figure 7. Figure 7 (a) is a screenshot of cover FLV (3.flv).Figure 7 (b) is a FLV stego screenshot from the previous algorithm [1]. Figure 7 (c) is a FLV stego screenshot of the proposed algorithm.If we look at the naked eye at 9th second, there is no distortion seen from the proposed algorithm while the previous algorithm [1] looks distortion.

Conclusion
The proposed algorithm has better quality both in terms of security and video quality.In terms of security, the proposed algorithm encrypts confidential data using the AES algorithm.In terms of video quality, FLV stego from the proposed algorithm has a smaller MSE, a larger PSNR, smaller histogram evolution of video tags, and plays videos without distortion.For the next research, the process of embedding secret data is done randomly so that secret data is more secure.

Figure 1 .
Figure 1.Structure of FLV file

Figure 2 .
Figure 2. Design of embedding algorithm

Table 1 .
The specifications of the cover FLV include duration, width, height, frame rate, video codec, audio codec, size, number of video tag, number of audio tag, and average body length of video tag as shown in Table1.Cover FLV are used 1.flv, 2.flv, and 3.flv.Cover FLV is obtained from the internet.Specification of Cover FLV TELKOMNIKA ISSN: 1693-6930  Optimization of video steganography with additional compression and encryption (Dwi Arraziqi)

Table 2 .
Comparison of Proposed Algorithm with Previous Algorithm