Informatica 40 (2016) 63–70 63 A Novel Video Steganography Algorithm Based on Trailing Coefficients for H.264/AVC Yingnan Zhang, Minqing Zhang, Xu An Wang, Ke Niu and Jia Liu Key Laboratory of Network and Information Security of CAPF, Electronic Department Engineering University of the CAPF, Xi’an, Shaanxi, 710086, P. R. China E-mail: zyn583@163.com, wangxazjd@163.com Keywords: information security, video, steganography, trailing coefficients Received: December 22, 2015 With the development of high-speed networks, life is more convenient than ever. However, the information security issue of high-speed networks is still a big problem. As an important branch of information secu- rity, steganography is a useful method to protect confidential information. In this paper, by combining the trailing coefficient produced in the process of the quantization ofthe H.264 encoding standard with the cur- rent video steganographic algorithms, we implement a new kind of algorithm based on trailing coefficients. The algorithm firstly conducts a DCT transform on the frame, and then it obtains the trailing coefficient for each quantized DCT block;lastly, the secret information bit is embedded into the video. The experi- mental result indicates that this algorithm has little influence on video quality and has a large capacity of steganography;also, it has a strong anti-steganalysis capability and high robustness. Povzetek: Opisan je nov algoritem za video steganografijo. 1 Introduction Currently, people are enjoying a high standard life due to the continuing growth of network bandwidth. In the past, people were unable to easily upload or share large digi- tal content because of the bandwidth restrictions on net- works. With the advancement of various technologies such as 4G/5G, the network speed has substantially increased, allowing people to share almost whatever they want. In this paper, we explore the concept of high bandwidth to design new video steganographic algorithms. As an im- portant branch of information security, information hiding, also called steganography, has provided an efficient method to protect the security of sensitive information. Steganography is a technique that can be used to trans- mit secret information publicly via digital media, while achieving covert communication [1]. There has been much advancement made in image steganography algorithms. However, because of the limited capacity of digital images, the capacity of secret information that can be embedded in the image is also restricted. Compared with a digital image, video has more advantages regarding steganogra- phy, such as it can support a larger capacity and there is more redundancy, a high communication quality, robust- ness, etc. As a new standard, H.264 has more advantages over the previous ones. There is a better compression of digital TV broadcasting, video real-time communication, network video streaming and multimedia messaging. Some of its biggest features are high reliability and high compres- sion efficiency [2]. As a result, the study of steganographic methods based on video for H.264/AVC has become a pop- ular research topic[3-8]. In the past, when video was transmitted on a network, it was transmitted by frames, like pictures, and an attacker would be able to observe the network’s package transmit- ting. When an attacker would find many video frames in the network, he/she would pay attention to them; this situ- ation,shown in Figure 1, is not an ideal situation for video steganography. Now, since there are very high-speed net- work and supported techniques [9-13], people can transmit video content easily. This does not gain the attacker’s at- tention, as shown in Figure 2. It also satisfied the original intention of steganography-to hide the existence of secret information-so our algorithm can achieve a high security standard in networks when protecting sensitive informa- tion. SENDER ATTACKER RECEVIER NETWORK IN THE PAST VIDEO SEQUENCE VIDEO SEQUENCE Figure 1: Transmitting video sequence in a network with low bandwidth. When embedding secrets in the spatial domain, we found that it is easy to be detected by many steganalysis algo- rithms, so we chose to embed secrets in DCT coefficients. Furthermore, we believe that using the characteristic of the H.264 coding standard is a better choice because we can 64 Informatica 40 (2016) 63–70 Y. Zhang et al. SENDER ATTACKER CURRENT NETWORK VIDEO SEQUENCE VIDEO SEQUENCE RECEVIER Figure 2: Transmitting video sequence in a current net- work. embed secrets during the compression process. We save the time that being cost in embedding procession, thus re- ducing the complexity of our algorithm. Hua et al. proposed a video steganography algorithm based on H.264/AVC [14]. The algorithm can be imple- mented to achieve good embedding and extracting, but the algorithm is weak when it is under attack. Langelaar pro- posed a mechanism for the compressed video stream [15]. The advantage of this algorithm is that it only needs part of the coding stream. As a result, this algorithm can achieve a higher data embedding capacity, but the algorithm is weak regarding anti-steganalysis detection. Ma proposed a novel algorithm based on H.264 [16],and it improves the visual quality, but the embedding efficiency and embedding ca- pacity needs improvement. He also proposed a new method based on a motion vector [17], but the capacity of em- bedding is also limited. Zhang proposed a robust video watermarking algorithm for H.264/AVC based on texture features [18], it has little impact on the video quality and bit rate, but it can only achieve little capacity for embed- ding. Liu proposed a method based on macro-block seg- mentation [19], but the bit rate increase is very low, and it has weak anti-steganalysis detection. Ultimately, almost all of the steganography algorithms based on video for H.264/AVC exist some problems such as negative impacts on video quality, high complexity in embedding, and less capacity of embedding. In this paper, we present a new video steganography al- gorithm by modifying trailing coefficients through certain rules to embed secret information. Experimental results showed that this algorithm has better visual invisibility, while improving the steganographic capacity, strong anti- steganalysis ability, and high robustness. Our algorithm’s sketch is shown in Figure 3. 2 Trailing coefficients Trailing coefficients are produced from CAVLC. By sim- ply denoting, the trailing coefficient can be a number in the range of 0-3 and the amplitude can be 1. When the num- ber of coefficients satisfying this condition is more than 3, Original video sequence Additional data Data hiding key Video sequence containing embedded data Data hider Receiver Data extraction with algorithm’s rules Extracted bits Video sequence Data embedding Figure 3: Sketch of proposed scheme. we only choose the last three trailing coefficients; the other coefficients are considered normal non-zero coefficients. Here is an example below: 3, 2, 1, 0, 2, -1, 1, -1, 0, 1, -1, 0, 0, 0, 0, 0, where the number of the trailing coefficients is 3, the value is -1, 1, -1 (8th, 10th, and 11ththat were zigzag scanned), and the other coefficients (3rd, 6th, and 7th that were zigzag scanned) are normal non-zero coefficients. 3 Proposed scheme 3.1 Trailing coefficients’ application in steganography Generally speaking, there are 15 kinds of trailing coeffi- cients in DCT blocks, as shown in Table 1. As can be seen Table 1: 15 kinds of trailing coefficients. 1 none 6 -11 11 -111 2 1 7 -1-1 12 1-1-1 3 -1 8 111 13 -11-1 4 11 9 11-1 14 -1-11 5 1-1 10 1-11 15 -1-1-1 from the table, the trailing coefficients’ distribution follows certain regularity. As a result of entropy coding, trailing co- efficients will not be affected by the compression. There- fore, there is an advantage of selecting trailing coefficients as points in information hiding. 3.2 Embedding algorithm – Step 1. Pretreatment: use K to generate a pseudo- random sequence, p, and preprocess it as the following formula: fi = mi ⊕ pi (1) where mi is the original secret information and fi is the sequence of post-processing. The purpose is to re- duce the correlation of secret information and improve safety. This method can achieve real-time processing; – Step 2. Perform a DCT transform on frames, then traverse all the DCT trailing coefficients and arrange the blocks in order; A Novel Video Steganography Algorithm. . . Informatica 40 (2016) 63–70 65 Embedding algorithm begin Perform DCT on frames Judge the block is odd or even Odd Even Judge the trailing coefficients belong to which kind Embedding by the rules Judge the nearest odd block before it use which kind of rules to embedding Correcting the even block by rule Judge whether embedding all the secret information or not Embedding all Not yet Embedding algorithm finish Figure 4: Flow of embedding algorithm. – Step 3. Use the odd-numbered blocks as embed- ding blocks and the even-numbered blocks as correct- ing blocks. Simply speaking, if the current block is embedding secret information, the following block is a correcting block; – Step 4. Embedding process. Determining whether the summary value of trailing coefficients is positive or negative is the key point to our algorithm. We want the value to be negative when the secret information bit is 0, and the value should be positive when the se- cret information bit is 1. The embedding rules are as follows: 1. The embedding rules of the odd blocks. When the secret information bit is 0, the rule is as shown in Table 2. When secret information bit is 1, the rule is shown in Table 3. Table 2: The embedding rules when the secret information bit is 0. 1→ -1 -1-1→ -1-1 1-1-1→ 1-1-1 -1→ -1 111→ 1-1-1 -11-1→ -11-1 11→ -1-1 11-1→ 1-1-1 −1− 11→ -1-11 1-1→ -1-1 1-11→ 1-1-1 −1− 1− 1→ -1-1-1 -11→ -1-1 -111→ -11-1 0→ -1 As can be seen from the above tables, when modifying the DCT coefficients, the max num- Table 3: The embedding rules when the secret information bit is 0. 1→ 1 -1-1→ 11 1− 1− 1→ 1-11 -1→ 1 111→ 111 −11− 1→ -111 11→ 11 11-1→ 111 −1− 11→ -111 1-1→ 11 1-11→ 111 −1− 1− 1→ -111 -11→ 11 -111→ -111 0→ 1 ber that can be modified is 2. When modifying 0, we choose the first 0 scanned by zigzag af- ter the last non-zero numbers; the rest situations in Table 2 and Table 3 are only modified a num- ber or without modification, so the algorithm can achieve better security. 2. The rules of even blocks for correcting. When an odd block has been modified, we will use the next even block to correct. If we change -1 to 1 to embed the secret, then we change the last 1 of a correction block to -1. If there is no ex- isting1 in the correcting block, we change the first 0 bit which after the last non-zero numbers to -1. In the odd block, if we change 1 to -1, then we change the last -1 in the correcting block to 1; if there is no existing -1 in the correction block, change the first 0 bit which after the last non-zero numbers to 1.If we change 0 to 1 in odd block to hide the secret information, then the last 1 in the corrected block is changed to 0; if there is no existing 1, nothing is modified; if we change 0 to -1 in the modified block to hide the secret information, the last -1 in corrected block is changed to 0; if there is no existing -1, nothing is modified; the purpose of this correc- tion is to hold the histogram between stego-DCT coefficients’ and cover-DCT coefficients’; – Step 5. Repeating Step 4, until all the secret informa- tion is embedded. The flow of the embedding algo- rithm is show in Figure 4. 3.3 Extraction algorithm – Step 1. Perform a DCT transformation on frames, and traverse all the DCT trailing coefficients, then arrange the blocks in order; – Step 2. Follow the rules of extracting, based on the following Formula: mi = { 0, if S(j) < 0 and j mod 2 = 1 1, if S(j) > 0 and j mod 2 = 1 (2) Where mi is the secret information bit, j is the order of the DCT block based on Step 1, and S(j) is the sum-value ofthe trailing coefficients; 66 Informatica 40 (2016) 63–70 Y. Zhang et al. Extracting algorithm begin Perform DCT on frames Judge the block is odd or even Judge the sum value of the trailing coefficients Odd Even Secret is 1 Bigger than 0 Secret is 0 Smaller than 0 Judge whether extracting all the secret information or not Extracting all Extracting algorithm finish Not yet Figure 5: Flow of the extracting algorithm. – Step 3. Repeat Step 2 until all the secret information is extracted; – Step 4. Inverse pretreatment; the rules are shown in the following Formula: mi = fi ⊕ pi (3) Where mi is the original secret information and fi is the sequence of extracting information. The flow of the extracting algorithm is shown in Figure 5. 4 Experimental results and analysis Our experimental environment is based on X.264, VC++ 2008, and Matlab2008. The video sequences are down- loaded from the website, "media.xiph.org". Each sequence is 15 frames/s, the bit rate is 396kbit/s, and the format is QCIF (News, Mobile), CIF (Container, Carphone). The se- cret information is the image "lena.bmp." 4.1 Theoretical analysis The probability that changes the coefficient -1 to 1 can be expressed as follows: P ((−1)→ (1)) = p(m(i) = 1){p((−1)→ (1)) + p((1,−1)→ (1, 1)) + p((−1, 1)→ (1, 1)) + 2p((−1,−1)→ (1, 1)) + p((1,−1,−1)→ (1,−1, 1)) + p((−1, 1,−1)→ (−1, 1, 1)) + p((1,−1, 1)→ (−1, 1, 1)) + 2p((−1,−1,−1)→ (−1, 1, 1)) + p((0)→ (1))} + p(m(i) = 0){0} (4) The probability that changes the coefficient 1 to -1 can be expressed as follows: P ((1)→ (−1)) = p(m(i) = 0){p((1)→ (−1)) + p((1,−1)→ (−1,−1)) + p((−1, 1)→ (−1,−1)) + 2p((1, 1)→ (−1,−1)) + 2p((1, 1, 1)→ (1,−1,−1)) + p((1, 1,−1)→ (1,−1,−1)) + p((1,−1, 1)→ (1,−1,−1)) + p((−1, 1, 1)→ (−1, 1,−1))} + p(m(i) = 1){0} (5) Since the secret information is encrypted, the probability of 0 and 1 remains the same, as shown below: p(m(i) = 1) = p(m(i) = 0) (6) We can conclude from formula (4),formula (5), and for- mula (6), that we can obtain the probability p((1) → (−1)) = p((−1) → (1)). Therefore, this method can achieve high security. 4.2 Analysis of invisibility 4.2.1 Subjective analysis of visibility The original and embedded frames of test sequences are shown in Figure 6. As can be seen, there is no significant difference between them. So, we can conclude that our algorithm is better in terms of visibility. 4.2.2 Objective analysis of visibility The PSNR value is the key to judging the visibility. Ac- cording to the HVS,when the PSNR value is above 30dB, the sequence is clear and fluent. The PSNR value of the test sequence has been shown in Table 4, and the results show that the decrease is low after embedding, and the average decline of the PSNR value is about 1.156dB. Since the Carphone sequence is rich in texture blocks, and there are also many smoothing blocks, we calculate out pre-30 frames’ PSNR value of it. Figure 7 shows the PSNR A Novel Video Steganography Algorithm. . . Informatica 40 (2016) 63–70 67 (a) News original image (b) News image after being embedded (c) Mobile original image (d) Mobile image after being embedded (e) Container original image (f) Container image after being embedded (g) Carphone original image (h) Carphone image after being embedded Figure 6: Comparison on the original and embedded frames of test sequences. Table 4: Comparison of PSNR values before and after em- bedding. Test Original PSNR value Decrease sequence PSNR after /dB value/dB embedding/dB News 36.743 35.945 0.798 Mobile 35.376 34.347 1.029 Container 36.232 35.089 1.143 Carphone 35.798 34.141 1.657 value of the pre-30 frames of Carphone after embedding secret information. As can be seen, the impact of the first frame is about 2.27dB, and the impact of the No.16 frame is about 1.89dB; the other frames are not affected much. Figure 7: Video image and extraction of the secret infor- mation image after attack. 4.3 Steganographic capacity Reference [16] proposed a steganographic algorithm based on modifying the DCT coefficients, and reference [19] also proposed an algorithm based on modifying the DCT co- efficients for hiding, so we use these two references to be compared with our algorithm. As can be seen from Figure 8, our algorithm’s capacity has been improved.Because of our algorithm embedding secret information in half of the DCT blocks, it can achieve an improved capacity. 4.4 Robustness testing The main goal of the robustness test of the steganographic algorithm is to detect anti-attack capability. For this test, we use salt and pepper noise and Gaussian low-pass filter- ing. In the experiment, we add salt and pepper noise to the video sequence, and the intensity is 0.05; Figure 9 shows 68 Informatica 40 (2016) 63–70 Y. Zhang et al. Figure 8: Video image and extraction of the secret infor- mation after attack. the effect it has on News and the secret information image we extract. Figure 9: Video image and extraction of the secret infor- mation image after attack. Figure 10 represents the experiment after a 3 × 3 Gaus- sian low-pass filter, the effect on Mobile, and the secret information image we extract. Figure 10: Video image and extraction of the secret infor- mation after attack. Table 5 is the SIM value between the secret information after attack and the original one. The formula of SIM is as follows: SIM(X,Y ) = ∑ iX(i)Y (i)√∑ iX(i) 2 √∑ i Y (i) 2 (7) In the formula, X(i) and Y (i) represent the original image and the stego-image to be evaluated in the one- dimensional sequence of pixel values respectively; SIM ∈ (0, 1] takes the value of 1 only when the images we com- pared are exactly the same. Table 5: The SIM value of extracting secret information after attack. Video Add salt Add Gaussian sequence and pepper low-pass noise filtering News 0.827 0.899 Mobile 0.846 0.943 Container 0.813 0.921 Carphone 0.790 0.906 Figure 9, Figure 10, and Table 5 indicate that the algo- rithm has high robustness and anti-attack capability. 4.5 Steganalysis detection Heidari has proposed a steganalysis algorithm [20], and it has a high detection rate for the steganography algorithm based on modifying the DCT coefficients. Therefore, our video sequence would be extracted for each frame, and we then we test the detection rate of every frame. A false positive (FP) represents classifying the non-stego frames as stego frames. A false negative (FN) indicates classifying the stego framesas non-stego frames [21]. The results can be shown in Table 6: Table 6: The results of using Heidari’s algorithm. Video FP (%) FN (%) Error rate(%) News 53.45 48.12 50.79 Mobile 46.51 45.08 45.80 Container 52.67 49.59 51.13 Carphone 47.75 40.64 44.20 Generally, the higher the FN and FP is, the better the steganographic algorithm is. As can be seen from Table 6, when detecting our algorithm,FP and FN are high. 5 Conclusion and discussion In the past, transmitting a huge video sequence would take a great amount of time, so the video sequence is not com- mon in steganography.Usually,the image is used as the cover carrier, but it also limits the information bit that is to be hidden. However, a high speed network offers a plat- form to transmit large multimedia, so we can use it to hide more information than before. This paper proposed a video steganography algorithm based on trailing coefficients in a high speed network, and we modified the value of trailing coefficients to make sure that when the secret information bit is 0, the sum A Novel Video Steganography Algorithm. . . Informatica 40 (2016) 63–70 69 value is negative, and when the secret information bit is 1, the sum value is positive. In order to ensure that the DCT coefficients of the cover video after embedding have been changed, the algorithm used the method that modified the odd-numbered blocks to hide and modified the even- numbered blocks to correct. The experimental results indi- cated that our algorithm has little impact on the video’s vi- sual invisibility, the capacity of steganography is improved, and it has high robustness. Therefore, our research has bet- ter performance compared to previous algorithms. Although this paper has proposed a scheme to protect the security of a high-speed network, and our algorithm can achieve some good features as mentioned before, some problems should also be discussed.For example, if we hide secret information in images or videos, no method to com- pletely recover the hidden media has been found. In future studies, there will be a focus on revising the process of hid- ing information. The next inadequacy of our method is that we did not use the protocol of a high-speed network; if we hide informa- tion in it, we will raise the capacity greatly and increase the cost of bandwidth. In future studies, the goal will be to find a method of hiding information in the protocol of networks, but without greatly increasing the cost of bandwidth. Acknowledgment The authors would like to thank the anonymous review- ers for the constructive comments. This work was sup- ported by the National Science Foundation of China: The- ory research on extracting and optimizing feature of im- age steganalysis (Grant No.61379152). And it was also supported by the National Science Foundation of China: Cross-Domain Human Action Recognition by Knowledge Transfer (Grant No.61403417). References [1] H. G. Zhang, R. Y. Du, J. M. Fu, B. Zhao, L. N. Wang. (2014) Information security: an independent disci- pline a new subject. Information and Communication Security, no.5 (in Chinese). [2] H. J. Bi (2005). A New Generation of Video Compres- sion Standard—H.264/AVC. Beijing: Posts & Tele- com Press, pp. 110-111 (in Chinese). [3] R. J. Mstafa, K. M.Elleithy (2014). A Highly Se- cure Video Steganography using Hamming Code (7, 4). 2014 IEEE Long Island Systems, Applications and Technology Conference (LISAT), pp.1 - 6. [4] M. M. Sadek, A. S.Khalifa, M. G. M.Mostafa (2014). Video steganography: a comprehensive review. Mul- timedia Tools & Applications, vol.74, pp.1-32. [5] J. Ridgway, M. Stannett (2014). Developing a Video Steganography Toolkit. Eprint Arxiv. [6] K. P. Divya, K. Mahesh (2014). Random Image Em- bedded in Videos using LSB Insertion Algorithm. In- ternational Journal of Engineering Trends & Technol- ogy, vol. 13, no.8, pp.381-385. [7] K. Churin, J. Preechasuk, C. Chantrapornchai (2013). Exploring Video Steganography for Hiding Images Based on Similar Lifting Wavelet Coefficients. Ad- vances in Information Technology. Springer Interna- tional Publishing, vol. 409, pp.35-46. [8] H. Gupta, S. Chaturvedi (2014). Video Steganography through LSB Based Hybrid Approach. International Journal of Computer Science and Network Security (IJCSNS), vol.14, no.3, pp. 99-106. [9] Y. Shen, Q. Pei, Q. Xu, Z, Zhang (2012). The mul- timedia service session handoff method in heteroge- neous wireless networks. International Journal of Grid and Utility Computing, vol. 3, no. 1, pp. 68-77. [10] D. V. Bernardo, D. B. Hoang (2012). Multi-layer security analysis and experimentation of high speed protocol data transfer for GRID. International Jour- nal of Grid and Utility Computing, vol. 3, no. 2/3, pp. 81-88. [11] Y. Wang; J. Du; X. Cheng; Z. Liu; K. Lin (2016). Degradation and encryption for outsourced PNG im- ages in cloud storage. International Journal of Grid and Utility Computing, vol. 7, no. 1, pp. 22-28. [12] J. Kolodziej, F. Xhafa (2011). Supporting situated computing with intelligent multi-agent systems. Inter- national Journal of Space-Based and Situated Com- puting, vol. 1, no. 1, pp. 30-42. [13] R. Pereira, E. G. Pereira (2016). Future internet: trends and challenges. International Journal of Space- Based and Situated Computing, vol. 5, no. 3, pp. 159- 167. [14] G. L. Hua, Z. B. Li, B. Feng (2013). Low frequency steganography algorithm for H.264/AVC. Journal on Communications, vol. 34, no. Z2, pp. 47-50. [15] G. C. Langelaar, R. R. Lagendijk (2001). Optimal dif- ferential energy watermarking of DCT encode images and video. IEEE Transactions on Image Processing, vol. 10, no.1, pp. 148-158. [16] X. J. Ma (2010). The Research on Video Data Hid- ing Algorithms Based on H.264/AVC. Huazhong Uni- vercity of Science and Technology (in Chinese). [17] X. S. He, Z. Luo (2008). A Novel Steganographic Al- gorithm Based on the Motion Vector Phase. Interna- tional Conference on Computer Science and Software Engineering CSSE, Wuhan, China, pp. 822-825. 70 Informatica 40 (2016) 63–70 Y. Zhang et al. [18] W. W. Zhang, R. Zhang, Y. J. Liu , et al (2012). Ro- bust Video Watermarking Algorithm for H.264/AVC Based on Texture Feature. . Journal on Communica- tions, vol. 33, no.3, pp. 82-89 (in Chinese). [19] C. H. Liu, O. T. Chen (2008). Data Hiding in Intra Prediction Modes of H.264/AVC. IEEE International Symposium on Circuits and Systems, pp.3025-3028. [20] Heidari, Mortaza, G.Shahrokh (2013). Universal im- age steganalysisusing singular values of DCT coef- ficients. 10th International ISC Conference on In- formation Security and Cryptology (ISCISC), Yazd, Iran, pp.1-5. [21] T. Filler, J. Judas, J. Fridrich (2011). Minimizing ad- ditive distortion in steganography using syndrome- trellis codes. IEEE Transactions on Information Forensics and Security, vol. 6, no.3, pp. 920-935.