A video steganography method and system

By providing a video steganography method and system that supports multiple video compression standards, the problem of insufficient flexibility in existing technologies is solved. This achieves flexibility and security under different video compression standards, making it suitable for copyright protection and covert communication in high-definition network video applications.

CN116132695BActive Publication Date: 2026-04-03ZHENGZHOU NORMAL UNIV
View PDF 4 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-02-09
Publication Date
2026-04-03

AI Technical Summary

Technical Problem

Existing video steganography methods are not very flexible in application and cannot be smoothly applied to different video compression standards, resulting in poor flexibility in production services.

Method used

This invention provides a video steganography method and system that can select target video steganography algorithms suitable for different video compression standards according to user requests, and realize the embedding and extraction of private information. It includes a secret information embedding module and a secret information extraction module, and supports H.264 and H.265 video compression standards.

Benefits of technology

It achieves flexibility and security under different video compression standards, and is suitable for copyright protection, covert communication and source tracing in the field of network high-definition video applications, improving the compatibility and security of video steganography technology.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN116132695B_ABST
    Figure CN116132695B_ABST
Patent Text Reader

Abstract

This invention provides a video steganography method and system, belonging to the field of video processing technology. The system includes: responding to a user's request to embed private information, determining a target video steganography algorithm from multiple video steganography algorithms based on a user-preset target video compression standard, and using the target video steganography algorithm to embed preset private information into a target video to generate a carrier video; responding to a user's request to extract private information, determining the target video steganography algorithm based on the steganography algorithm attributes of the carrier video, and extracting the preset private information from the carrier video. The video steganography method and system provided by this invention can implement the video steganography process according to a user request-response mechanism, making it more flexible; and it can be applied to different video compression standards, overcoming the limitation that traditional video steganography algorithms are often only applicable to a specific video compression standard.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to the field of video processing technology, and in particular to a video steganography method and system. Background Technology

[0002] With the rapid development of video compression technology, the security issues of video applications based on different video compression standards (such as H.264 / AVC and H.265 / HEVC) have received increasing attention. Among numerous video security processing technologies, video steganography is widely used in the fields of covert communication and copyright protection, especially in online videos, due to its advantages of security, convenience, high stability, and imperceptibility. Furthermore, with the increasing number of online video applications such as online classrooms and live streaming, and the explosive growth of online video, online video security has become increasingly important. In an era where security issues such as online video mashup, reprocessing, and piracy are becoming increasingly rampant, video steganography is undoubtedly an important security protection and feedback technology for protecting the copyright ownership of online videos and tracing the source of mashup videos. Video steganography not only protects the legitimate copyright information and originality of online video owners but is also an important technical measure for tracing the source of mashup videos.

[0003] Current video steganography methods are generally designed for specific video compression standards (such as H.264 / AVC, H.265 / HEVC, MPEG series, etc.), and are mostly concentrated in experimental environments. In terms of specific implementation, the designed algorithm program is run through command line or script to realize the embedding and extraction process. That is, it cannot be smoothly and effectively integrated into production services, and the flexibility is poor. Summary of the Invention

[0004] This invention provides a video steganography method and system to address the shortcomings of existing video steganography techniques in terms of poor application flexibility.

[0005] In a first aspect, the present invention also provides a video steganography method, comprising:

[0006] In response to a user's request to embed private information, a target video steganography algorithm is determined from multiple video steganography algorithms based on the user's preset target video compression standard, and the preset private information is embedded into the target video using the target video steganography algorithm to generate a carrier video.

[0007] In response to a user's request to extract private information, the target video steganography algorithm is determined based on the steganography algorithm attributes of the carrier video in order to extract the preset private information from the carrier video.

[0008] Each of the video steganography algorithms is applicable to the corresponding video compression standard; the steganography algorithm attribute is used to indicate the target video steganography algorithm used when generating the carrier video.

[0009] According to a video steganography method provided by the present invention, in response to a user's request to embed private information, a target video steganography algorithm is determined from multiple video steganography algorithms based on a user-preset target video compression standard, and the preset private information is embedded into a target video using the target video steganography algorithm to generate a carrier video. Specifically, the method includes: acquiring the user-selected target video, preset private information, and target video compression standard, and generating the private information embedding request; in response to the private information embedding request, decapsulating the target video into an intermediate video file in a preset format corresponding to the target video compression standard; calling an embedding application of the target video steganography algorithm corresponding to the target video compression standard to embed the preset private information into the intermediate video file, generating a steganography-containing video stream file; and encapsulating the steganography-containing video stream file into the carrier video.

[0010] According to a video steganography method provided by the present invention, the step of responding to a user's private information extraction request and determining the target video steganography algorithm based on the steganography algorithm attributes of the carrier video to extract the preset private information from the carrier video includes: acquiring a carrier video selected by the user and generating the private information extraction request; responding to the private information extraction request and, based on the steganography algorithm attributes, decapsulating the carrier video into a steganography-containing video stream file corresponding to the target video steganography algorithm; and calling the extraction application of the target video steganography algorithm to extract the preset private information from the steganography-containing video stream file.

[0011] According to a video steganography method provided by the present invention, the method further includes: displaying visual effects to a user by playing the target video and the carrier video corresponding to the target video; and obtaining relevant video stream information of the target video and the carrier video.

[0012] According to a video steganography method provided by the present invention, the preset private information is the private information of the target video after encryption processing.

[0013] According to a video steganography method provided by the present invention, the plurality of video steganography algorithms include a first video steganography algorithm and a second video steganography algorithm; wherein, the first video steganography algorithm is designed based on the H.264 video compression coding standard, and the second video steganography algorithm is designed based on the H.265 video compression coding standard.

[0014] Secondly, the present invention provides a video steganography system, comprising: a secret information embedding module and a secret information extraction module; the secret information embedding module is used to respond to a user's private information embedding request, determine a target video steganography algorithm from multiple video steganography algorithms according to a user-preset target video compression standard, and use the target video steganography algorithm to embed the preset private information into the target video to generate a carrier video; the secret information extraction module is used to respond to a user's private information extraction request, determine the target video steganography algorithm according to the steganography algorithm attributes of the carrier video, and extract the preset private information from the carrier video; wherein, each video steganography algorithm is applicable to a corresponding video compression standard; the steganography algorithm attribute is used to indicate the target video steganography algorithm used when generating the carrier video.

[0015] According to a video steganography system provided by the present invention, the secret information embedding module includes a first human-computer interaction unit, a first video decapsulation unit, an embedding unit, and a first video encapsulation unit; the first human-computer interaction unit is used to acquire a target video selected by a user, preset private information, and a target video compression standard, and generate a private information embedding request; the first video decapsulation unit is used to decapsulate the target video into an intermediate video file in a preset format corresponding to the target video compression standard in response to the private information embedding request; the embedding unit is used to call an embedding application of the target video steganography algorithm corresponding to the target video compression standard to embed the preset private information into the intermediate video file, generating a steganographic video stream file; the first video encapsulation unit is used to encapsulate the steganographic video stream file into the carrier video.

[0016] According to a video steganography system provided by the present invention, the secret information extraction module includes a second human-computer interaction unit, a second video decapsulation unit, and an extraction unit; the second human-computer interaction unit is used to acquire a carrier video selected by a user and generate the secret information extraction request; the second video decapsulation unit is used to, in response to the secret information extraction request, decapsulate the carrier video into a steganography-containing video stream file corresponding to the target video steganography algorithm according to the steganography algorithm attributes; the extraction unit is used to call the extraction application of the target video steganography algorithm to extract preset secret information from the steganography-containing video stream file.

[0017] According to a video steganography system provided by the present invention, the system further includes: a comparison analysis module; the comparison analysis module is used to display visual effects to a user by playing the target video and the carrier video corresponding to the target video; and is also used to obtain relevant video stream information of the target video and the carrier video.

[0018] Thirdly, the present invention also provides a non-transitory computer-readable storage medium having a computer program stored thereon, which, when executed by a processor, implements the steps of any of the video steganography methods described above.

[0019] The video steganography method and system provided by this invention can realize the video steganography process according to the user's request and response, which is more flexible; and it can be applied to different video compression standards, overcoming the limitation of traditional video steganography algorithms, which are often only applicable to a specific video compression standard; it has unparalleled advantages in terms of flexibility, security, and compatibility. It has technical guidance value and application promotion for copyright protection, covert communication, and source tracing in the current field of high-definition network video applications. Attached Figure Description

[0020] To more clearly illustrate the technical solutions in this invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, the drawings described below are some embodiments of this invention. For those skilled in the art, other drawings can be obtained from these drawings without creative effort.

[0021] Figure 1 This is a schematic diagram of the embedding process of the video steganography method provided by the present invention;

[0022] Figure 2 This is a schematic diagram of the target video adaptive selection process provided by the present invention;

[0023] Figure 3 This is a schematic diagram of the H.264 / AVC-based video steganography algorithm without intra-frame distortion drift provided by the present invention;

[0024] Figure 4 This is a schematic diagram of the candidate embedding blocks of the H.265 / HEVC transform block adaptive segmentation video steganography algorithm provided by the present invention;

[0025] Figure 5 This is a schematic diagram of the extraction process of the video steganography method provided by the present invention;

[0026] Figure 6 This is a schematic diagram of the structure of the electronic device provided by the present invention. Detailed Implementation

[0027] To make the objectives, technical solutions, and advantages of this invention clearer, the technical solutions of this invention will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some, not all, of the embodiments of this invention. All other embodiments obtained by those skilled in the art based on the embodiments of this invention without creative effort are within the scope of protection of this invention.

[0028] It should be noted that, in the description of the embodiments of the present invention, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. Without further limitations, an element defined by the phrase "comprising one..." does not exclude the presence of other identical elements in the process, method, article, or apparatus that includes said element.

[0029] The terms "first," "second," etc., used in this application are used to distinguish similar objects and not to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that embodiments of this application can be implemented in orders other than those illustrated or described herein, and the objects distinguished by "first," "second," etc., are generally of the same class, without limiting the number of objects; for example, a first object can be one or more. Furthermore, "and / or" indicates at least one of the connected objects, and the character " / " generally indicates that the preceding and following objects have an "or" relationship.

[0030] The following is combined Figures 1-6 This invention describes the video steganography method and system provided in embodiments of the present invention.

[0031] The video steganography method provided by this invention mainly includes an embedding method and an extraction method. The embedding method includes: responding to a user's request to embed private information, determining a target video steganography algorithm from multiple video steganography algorithms according to a user-preset target video compression standard, and using the target video steganography algorithm to embed the preset private information into the target video to generate a carrier video.

[0032] Each of the video steganography algorithms is applicable to a corresponding video compression standard. Optionally, the plurality of video steganography algorithms includes a first video steganography algorithm and a second video steganography algorithm, wherein the first video steganography algorithm is designed based on the H.264 video compression coding standard, and the second video steganography algorithm is designed based on the H.265 video compression coding standard.

[0033] As an optional embodiment, the above embedding method specifically includes:

[0034] Step 101: Obtain the target video selected by the user, preset private information and target video compression standard, and generate the private information embedding request.

[0035] Step 102: In response to the private information embedding request, decapsulate the target video into an intermediate video file in a preset format corresponding to the target video compression standard;

[0036] Step 103: Call the embedding application of the target video steganography algorithm corresponding to the target video compression standard to embed the preset private information into the intermediate video file and generate a steganized video stream file;

[0037] Step 104: Encapsulate the encrypted video stream file into the carrier video.

[0038] Figure 1 This is a schematic diagram of the embedding process of the video steganography method provided by the present invention. The following is in conjunction with... Figure 1 The above specific steps explain the process of the embedding method.

[0039] Step 101: Obtain the target video selected by the user, preset private information and target video compression standard, and generate the private information embedding request.

[0040] The target video can be a standard test video or a local video. This invention allows for target video selection via a client. The standard test video can be commonly used standard test videos such as those from container, news, BasketballPass, and Kristen And Sara, with resolutions ranging from 176×144 to 1280×720. These can be used to test the performance and effectiveness of video steganography on videos with different dynamic texture features and sizes.

[0041] Figure 2 This is a schematic diagram of the target video adaptive selection process provided by the present invention, such as... Figure 2 As shown, since the standard test video mentioned above has no audio stream, it needs to be repackaged into a common video format such as MP4 for display on the client side for user selection. Local videos also need to be video files in common packaging formats. Local videos need to be transmitted to the server over the network before video steganography can be performed, which is relatively time-consuming. This invention allows users to input private information (i.e., preset private information) in plaintext on the client side. Preferably, after the private information is input, encryption can be performed on the client side to ensure the security of the secret information.

[0042] Specifically, the standard test video is processed. The standard test video is stored on the server side. Since it is generally a raw YUV sequence, it needs to be encapsulated on the server side. During the encapsulation process, the audio stream is ignored, and the final video is formatted into a common video format for display on the user's client.

[0043] Local video selection. The local video is a video file selected by the user to be uploaded. Subsequent embedding can only proceed after the local video has finished uploading. It's important to note that local videos often contain audio streams, therefore the actual embedding process will differ from that of standard test videos.

[0044] Transmission of confidential information. Preset confidential information can be set via the client; to ensure the security of the transmission of the preset confidential information, this invention can also perform encryption operations on the client side. Common encryption algorithms can be used, including RSA encryption.

[0045] It should be noted that the target video compression standard can also be selected and set through the client. This step 101 is mainly for the preparation of embedding. After the preparation is completed, a private information embedding request can be sent to the server to realize the embedding of private information.

[0046] Step 102: In response to the private information embedding request, the target video is decapsulated into an intermediate video file in a preset format corresponding to the target video compression standard. The intermediate video file can be a .264 bitstream file or a YUV raw video file, used as input for the video steganography algorithm.

[0047] The main purposes of video decapsulation are twofold: firstly, to ensure compatibility with both H.264 / AVC video steganography algorithms without intra-frame distortion drift and H.265 / HEVC transform block adaptive segmentation video steganography algorithms. Since the input to these two video steganography algorithms is either a .264 bitstream file or a raw YUV video file, it is necessary to decapsulate common video containers such as MP4.

[0048] On the other hand, in order to separate the audio stream that may be contained in the video, after the secret information is embedded, the video stream containing the secret information is re-encapsulated into a video file in the original video format through the video encapsulation process described later, so as to ensure the security of video steganography.

[0049] Video decapsulation and processing mainly includes three parts: building a video model, converting to a .264 bitstream file, and converting to a YUV raw video file. These will be explained in detail below.

[0050] Step 1021: Construct the video model.

[0051] The construction of the video model is mainly used to determine which video content is used for database storage, which content is used for video encapsulation and decapsulation processing, and which content is used for video steganography. A typical video model construction is shown in Equation 1. In this model, except for the encrypted secret information, all other attributes are stored in the database, which can be a MongoDB database, for server-side video content lookup, video processing, and steganography.

[0052] The value of the steganography method depends on the user's client selection.

[0053]

[0054] For example, if the user selects the H.264 video compression standard, the steganography method can be the first video steganography algorithm (such as a video steganography algorithm based on H.264 / AVC without intra-frame distortion drift); if the user selects the H.265 video compression standard, the steganography method can be the second video steganography algorithm (such as a video steganography algorithm based on H.265 / HEVC transform block adaptive segmentation).

[0055] Step 1022: Depackage into a .264 bitstream file.

[0056] The .264 bitstream file is the video input format specified by the H.264 standard reference software JM. Therefore, before calling the H.264 / AVC-based video steganography algorithm without intra-frame distortion drift, this invention needs to decapsulate the embedded MP4 or other encapsulated video (i.e., the target video) transmitted from the user terminal into a .264 bitstream file using the ffmpeg module. The decapsulation process consists of two iterations: the first is used to generate the .264 video bitstream file, and the second is used to generate any audio stream files that may be included. Each iteration uses Equation 2 for generation:

[0057]

[0058] The child_process.spwanSync creates a new child process in the current Express server. src refers to the passed-in encapsulated video file, code indicates whether to ignore the video or audio stream, -an or -vn indicates that the generated file does not contain the audio or video stream, and des is the name of the generated .264 video file or corresponding audio file.

[0059] During the decapsulation process into a .264 bitstream file, this invention also needs to obtain attribute information such as the encoding, resolution, bitrate, duration, and stream format of the currently encapsulated video file. This attribute information is captured using the ffprobe module in ffmpeg. The video attribute information obtained by ffprobe consists of two sets: the first set is the video stream information, and the second set is possibly the audio stream information. Equation 3 below provides an example of obtaining the video stream encoding format and video bitrate information.

[0060]

[0061] Here, src is the currently passed-in encapsulated video file, and data is the collection of video attribute information obtained by ffprobe.

[0062] Step 1023: Depackage and convert to a raw YUV video file.

[0063] The raw YUV video file is the video input format specified by the H.265 standard reference software HM. Therefore, before calling the H.265 / HEVC transform block adaptive segmentation video steganography algorithm, we need to depackage the encapsulated video (such as MP4) embedded from the user terminal into a raw YUV video file using the ffmpeg module. The decapsulation process first decodes the video file to generate a YUV video file with the specified sampling format of 4:2:0, and then decapsulates any possible audio streams to generate an audio stream file corresponding to the video. The overall process can be performed according to equation (4):

[0064]

[0065] In this context, `src` refers to the passed-in encapsulated video file, `-c:v` specifies the generated video encoding format, `-pix_fmt` specifies the pixel sampling format of the generated file, `-ss` represents the start time of the audio file, `-t` specifies the duration of the audio file, and the `run` method indicates the decapsulation operation. Similarly, during the decapsulation into a YUV stream file, this invention also needs to obtain the encoding, resolution, bitrate, duration, and stream format of the current encapsulated video file. This attribute information is also captured using the `ffprobe` module in ffmpeg, and the capture process is performed according to Equation 3.

[0066] Step 103: Call the embedding application of the target video steganography algorithm corresponding to the target video compression standard to embed the preset private information into the intermediate video file and generate a steganized video stream file.

[0067] As can be seen from the above embodiments, since the intermediate video file can be a .264 bitstream file or a YUV raw video file, embedding preset private information into the corresponding intermediate video file can generate a encrypted video bitstream file.

[0068] As an optional embodiment, the present invention describes step 103 in several parts: configuring video steganography embedding parameters, introducing the H.264 / AVC video steganography algorithm without intra-frame distortion drift, introducing the H.265 / HEVC transform block adaptive segmentation video steganography algorithm, and adaptively calling the H.264 and H.265 transform block adaptive segmentation video steganography algorithms to achieve embedding. Specifically:

[0069] Step 1031: Configure video steganography embedding parameters.

[0070] The actual video steganography process involves two steps: using the reference software JM8.6 to implement H.264 / AVC-based video steganography without intra-frame distortion drift; and using the reference software HM16.0 to implement H.265 / HEVC-based adaptive segmentation video steganography. Therefore, before embedding the steganography, it is necessary to configure the video input / output format, bitrate, resolution, reconstructed file, and secret information content accordingly.

[0071] For the reference software JM8.6, the video steganography algorithm based on H.264 / AVC without intra-frame distortion drift, the video steganography embedding parameters that need to be configured in this invention mainly include the contents specified in Equation 5.

[0072]

[0073] The specific configuration can be achieved by replacing content using regular expressions, where both input and output files are in .264 compressed bitstream format.

[0074] For the reference software HM16.0, based on the H.265 / HEVC transform block adaptive segmentation video steganography algorithm, the video steganography embedding parameters that need to be configured in this invention mainly include the contents specified in Equation 6:

[0075]

[0076] The specific configuration also uses regular expressions to replace content. The input original file and the output reconstructed file are both in .yuv video format, and the output bitstream file is a .bin compressed bitstream file. The video width and height are in pixels.

[0077] Step 1032: Introduction to video steganography algorithm based on H.264 / AVC without intra-frame distortion drift.

[0078] This H.264 / AVC-based video steganography algorithm, which eliminates intra-frame distortion drift, is an existing algorithm proposed by the inventors. Detailed technical information can be found in the paper "A reversible data hiding method for H.264 with shamir". This algorithm effectively reduces the propagation of embedding errors caused by embedding secret information through the prediction mechanism, thus significantly improving the embedding performance and imperceptibility of video steganography.

[0079] Figure 3 This is a schematic diagram of the H.264 / AVC-based video steganography algorithm without intra-frame distortion drift provided by the present invention. The following is in conjunction with... Figure 3 The core principles of the algorithm are explained.

[0080] like Figure 3 As shown, if the prediction mode of the current 4×4 block surrounding the block belongs to condition 1, that is, the intra-prediction mode of the right neighbor block is a 4×4 luma block of 0, 3, 7, then the intra-block error caused by embedding information in the 4×4 luma block will not be passed to its right neighbor block through the rightmost pixel value. If the embedding error at the bottom of the current block is made to be 0 by using the coupling coefficient to HS, the purpose of no intra-frame distortion drift can be achieved.

[0081] Similarly, if the prediction mode of the current 4×4 block surrounding the block belongs to condition 2, that is, the intra-prediction mode of the lower left neighboring block is a 4×4 luma block of 0, 1, 2, 4, 5, 6, 8, and the intra-prediction mode of the lower neighboring block is a 4×4 luma block of 0, 8, then the intra-block error caused by the embedding information in this block will not be passed to its lower left and lower neighboring blocks through the bottommost pixel value, because the pixel value of this row is not used as a reference pixel. If the embedding error of the rightmost block in the current block is made to be 0 by the coupling coefficient to VS, then intra-frame distortion drift can be completely blocked.

[0082] Equations 7 and 8 below give the definitions of coupling coefficients HS and VS:

[0083]

[0084]

[0085] in and This represents the coefficient value at coordinates i,j in the current 4×4 block. As mentioned earlier, the coupling coefficients for VS and HS analyze the relationship between the embedding distortion and the position of the embedding DCT coefficients for the key pixel values ​​(i.e., the rightmost column and the bottom row of pixels) located at the edge of the 4×4 lumen residual block. This allows the embedding error of the rightmost column of pixels and the embedding error of the bottom row of pixels to be zeroed, thus achieving video steganography without intra-frame distortion drift.

[0086] Step 1033: Introduction to the adaptive video steganography algorithm based on H.2 65 / HEVC transform blocks.

[0087] The H.265 / HEVC transform block adaptive segmentation video steganography algorithm is an existing algorithm already proposed by the inventor. Detailed technical information can be found in the patent "A Video Steganography Method with Adaptive Block Size". This algorithm mainly utilizes syntactic elements segmented from 8×8 blocks to 4×4 blocks in I, B, and P frames to embed video steganography.

[0088] Figure 4 This is a schematic diagram of the candidate embedding block of the H.265 / HEVC transform block adaptive segmentation video steganography algorithm provided by the present invention. The following is in conjunction with... Figure 4 The core principles of the algorithm are explained.

[0089] like Figure 4 As shown, the candidate 8×8 blocks available for embedding can be divided into two categories. One category consists of 8×8 blocks, selected as the optimal transform block size after RDO encoding parameters. The second category consists of 8×8 blocks, which, after RDO encoding parameters, require further division into four 4×4 smaller blocks. Both types of transform blocks are used as candidate blocks for embedding secret information. The specific embedding is achieved by modifying the segmentation method of the aforementioned candidate blocks to correspond to the secret information bit string.

[0090] Step 1034: Adaptively call the H.264 no intra-frame distortion drift and H.265 transform block adaptive segmentation video steganography algorithm to achieve embedding.

[0091] After configuring the video steganography server embedding parameters and specifying the target video steganography algorithm, the Express server can invoke the target video steganography algorithm through a child process to perform the actual steganography embedding operation. During the invocation, two important parameters need to be determined: the embedding application for the target video steganography algorithm and the corresponding embedding parameter configuration file.

[0092] For video steganography algorithms based on H.264 without intra-frame distortion drift, the core calling process can be performed according to Equation 9:

[0093]

[0094] Among them, ldecode.exe is the application for the target video steganography algorithm (including the embedding application and the extraction application; the embedding application is used here), decoder.cfg is the corresponding embedding parameter configuration file, and cwd describes the working path of the child process.

[0095] For the H.265 transform block adaptive segmentation video steganography algorithm, the core calling process can be performed according to Equation 10:

[0096]

[0097] TappEncoder.exe is the application for the target video steganography algorithm (including an embedding application and an extraction application; the embedding application is used here). Optionally, there are two embedding parameter configuration files, encoder_intra_main.cfg and test_video.cfg, which are passed to the currently created video steganography subprocess as an array. Similarly, cwd describes the working path of the current steganography embedding program.

[0098] Step 104: Encapsulate the encrypted video stream file into the carrier video.

[0099] Video encapsulation is primarily performed after the secret information is embedded. Since the output file generated by the video steganography service is a encrypted video stream file (.264 or .bin), it cannot be played or compared normally. Therefore, after the embedding operation, the stream file needs to be further encapsulated into a common video file format, such as mp4. The encapsulated video then becomes the carrier video.

[0100] The video encapsulation process also uses the fluent-ffmpeg component, and its implementation is basically similar to the video decapsulation process. It should be noted that if the original video file contains an audio stream, we need to add the audio stream to the encapsulation container during this encapsulation process.

[0101] Another point to note is that the video stream file can be directly encapsulated in the encapsulation container without performing additional video encoding and decoding operations, in order to prevent errors or loss of secret information that could lead to failure of video steganography.

[0102] Based on the above embodiments, as an optional embodiment, the video steganography method provided by the present invention includes the following extraction method: in response to a user's request to extract private information, determining the target video steganography algorithm based on the steganography algorithm attributes of the carrier video, so as to extract the preset private information from the carrier video. The steganography algorithm attributes are used to indicate the target video steganography algorithm used when generating the carrier video.

[0103] As an optional embodiment, the above extraction method specifically includes:

[0104] Step 201: Obtain the video of the carrier selected by the user and generate the private information extraction request;

[0105] Step 202: In response to the private information extraction request, according to the steganography algorithm attributes, the carrier video is decapsulated into a steganography-containing video stream file corresponding to the target video steganography algorithm;

[0106] Step 203: Invoke the extraction application of the target video steganography algorithm to extract preset private information from the steganographic video stream file.

[0107] Figure 5 This is a schematic diagram of the extraction process of the video steganography method provided by the present invention. The following is in conjunction with... Figure 5 The above specific steps explain the detailed process of the extraction method.

[0108] Step 201: Obtain the video of the carrier selected by the user and generate the private information extraction request.

[0109] The main function of this section is to identify the video object to be extracted. Since a single user client may embed multiple videos multiple times, it is essential to clearly identify which video is the carrier video to be extracted. This process primarily relies on the video entry content stored in the MongoDB database to ensure the accuracy of the video object list.

[0110] Specifically, the acquisition of video content from the database. Each time a video steganography embedding operation occurs on the embedding client, the associated video data is stored in the MongoDB database. On the extraction client, the Express server should first iterate through the list of embedded video entries stored in the database, presenting the list of extractable videos to the user for selection.

[0111] Trigger the extraction event. Video steganography extraction is generated on the user's end by triggering an event, and the video steganography extraction process of the selected video is completed by sending a private information extraction request to the Express server.

[0112] Understandably, embedded clients and extracted clients can be integrated into a single client as needed, or they can be configured separately.

[0113] Step 202: In response to the private information extraction request, according to the steganography algorithm attributes, the carrier video is decapsulated into a steganography-containing video stream file corresponding to the target video steganography algorithm.

[0114] Each target video has an attribute called "option" (i.e., the steganography algorithm attribute, which can be represented by a numerical value) to indicate whether the target video uses an H.264-based adaptive segmentation video steganography algorithm with no intra-frame distortion drift or H.265 transform block. Similarly, this attribute information is stored in a MongoDB database.

[0115] The decapsulation process of the extracted part in this invention is basically the same as that of the embedded part. Its ultimate goal is to decapsulate common video encapsulation formats such as mp4 into .264 files (corresponding to the introduction of video steganography algorithm based on H.264 / AVC without intra-frame distortion drift) or .bin files (corresponding to the introduction of video steganography algorithm based on H.265 / HEVC transform block adaptive segmentation).

[0116] It should be noted that since only the video stream is needed for extracting secret information at the video extraction end, the decapsulated audio stream needs to be discarded.

[0117] Step 203: Invoke the extraction application of the target video steganography algorithm to extract preset private information from the steganographic video stream file.

[0118] This invention selects between an application based on the value of `option`, using either an H.264-based video steganography algorithm with no intra-frame distortion drift or an H.265 transform block adaptive segmentation video steganography algorithm. The two algorithms differ slightly in their extraction processes. Below, this invention describes the operation process in two parts: the H.264 / AVC-based video steganography algorithm with no intra-frame distortion drift and the H.265 transform block adaptive segmentation video steganography algorithm.

[0119] Step 2031: Introduction to the extraction part of the video steganography algorithm based on H.264 / AVC without intra-frame distortion drift.

[0120] For the extraction of steganography based on H.264 video without intra-frame distortion drift, this invention first requires configuring a corresponding extraction configuration file. The entry information to be configured in the extraction configuration file is shown in Equation 11:

[0121]

[0122] The configuration file is modified using regular expressions, and the changes are written back and saved after the extracted configuration file is modified.

[0123] Next, the video steganography extraction process is invoked. Similarly, video steganography extraction is performed by using the `child_process` module to create a child process to extract the secret information. The `child_process` module is invoked according to Equation 12:

[0124] const child_process=require('child_process'); (12)

[0125] The core module for extracting secret information by creating a subprocess can be performed according to Equation 13:

[0126]

[0127] In this embodiment, ldecod.exe is the video steganography extraction application in JM8.6, decoder.cfg is the video steganography extraction configuration file, and cwd is the current working path of the video steganography service. During the video steganography extraction process, if the Express server receives data from a newly created child process, it triggers a data event to print the content on the Express server. If a close event is triggered, the video steganography extraction is complete.

[0128] The processing flow of the H.264 / AVC-based video steganography extraction service without intra-frame distortion drift is the reverse of the embedding process. First, the input video stream file is entropy-decoded to obtain 4×4 blocks that meet the extraction criteria. Specifically, the prediction pattern of the neighboring blocks of the current 4×4 block that meets the extraction criteria should conform to... Figure 3 Condition 1 or Condition 2. For a 4×4 block that meets both Condition 1 and Condition 2, select the corresponding coupling coefficient to extract secret information from the HS or VS. If the first coefficient in the HS or VS coupling coefficient pair is even, then extract secret information 0; if the first coefficient in the HS or VS coupling coefficient pair is odd, then extract secret information 1.

[0129] Step 2032: Introduction to the extraction part of the H.265 / HEVC transform block adaptive segmentation video steganography algorithm.

[0130] For the implementation of the extraction part of the H.265 / HEVC transform block adaptive segmentation video steganography algorithm, this invention does not require configuring a corresponding extraction configuration file. The extraction configuration information is passed in the form of command-line parameters, which include the input video stream file (.bin) and the output video decoder (.yuv) file, as shown in Equation 14:

[0131] -b input video stream file .bin -o output video decoded file .yuv; (14)

[0132] Next, the video steganography extraction application is called. Similarly, the video steganography extraction is performed by creating a child process using the child_process module. The core module can be executed according to Equation 15:

[0133]

[0134] In this embodiment, TAppDecoder.exe is the video steganography extraction program in HM16.0. The parameter -b indicates the input video stream file for steganography, the parameter -o indicates the output video decoder file, and cwd is the current working path of the video steganography extraction program. Similarly, during the video steganography extraction process, if the Express server receives data from the opened child process, it triggers the data event to print the content on the Express server. If the close event is triggered, the video steganography extraction is complete.

[0135] The processing flow of the H.265 transform block adaptive segmentation video steganography extraction service is the reverse of the embedding process. First, the input video stream file (.bin) is entropy-decoded to obtain either an 8×8 transform block or four 4×4 transform blocks that meet the extraction criteria. The 8×8 transform block or four 4×4 transform blocks that meet the extraction criteria should conform to… Figure 4 The selection criteria are as follows: For 8×8 or 4×4 transform blocks that meet the extraction criteria, the secret information is extracted based on whether the 8×8 transform block is further divided into four 4×4 transform blocks. If the 8×8 transform block is not divided into four 4×4 transform blocks, then secret information 0 is extracted; if the 8×8 transform block is divided into four 4×4 transform blocks, then secret information 1 is extracted.

[0136] Based on the above embodiments, as an optional embodiment, the video steganography method provided by the present invention further includes: displaying visual effects to the user by playing the target video and the carrier video corresponding to the target video; and obtaining relevant video stream information of the target video and the carrier video.

[0137] The comparison in this embodiment is mainly to present a visual comparison between the encrypted video and the original unencrypted video file on the client side, so that users of video steganography can have an intuitive understanding of the security performance of video steganography from a visual perspective.

[0138] The main process in this section involves reading the storage paths of the embedded carrier video and the original video (i.e., the target video) recorded in the MongoDB database and feeding them back to the user via the Express server. In terms of visual effect comparison, in addition to the basic playback content, this invention also provides relevant video stream information of the carrier video or the original video, as shown in Equation 16:

[0139]

[0140] Based on the above description and the content of this invention, it can be understood that this invention can utilize the Express service architecture to bring video steganography services to web pages, enabling one-click embedding and extraction.

[0141] Specifically, video owners can use this method to embed their copyright ownership information (private information) into a target video without affecting the normal playback of the video content. This copyright ownership information is invisible. When necessary, the video owner can extract the copyright ownership information using the extraction module of this method to prove ownership. In a secure and covert communication environment, the embedding end can preprocess the secret information and embed it into the network video file. Utilizing the distribution and transmission of network video, the extraction end can use this method to extract the secret information from the carrier video file. Others can also watch the video content normally without being aware of the covert communication process. To further improve security, the secret information can be encrypted during preprocessing.

[0142] For mashup videos, since they are composed of multiple videos spliced ​​together, their originality can also be determined using this method. At the same time, for possible source tracing of the video, information such as dissemination information and important events can be embedded into the video file in the form of secret information, so as to realize the value contribution analysis and source tracing function of each segment of the mashup video.

[0143] In summary, the video steganography method proposed in this invention has the following advantages:

[0144] This invention innovatively designs an adaptive video processing and steganography method applicable to both H.265 and H.264, used to encode any video into a specific H.265 or H.264-compatible carrier video after a video steganography and processing flow. Compared to existing video steganography methods, this method can autonomously select between H.265 and H.264-based video steganography methods according to application requirements. This invention significantly improves the security performance of video hidden information while providing a more autonomous and flexible design for the video steganography embedding and extraction process.

[0145] This invention is the first to utilize the Express service architecture to bring video steganography services to a web page, enabling one-click embedding and extraction. In traditional video steganography methods, video steganography is typically implemented through command-line execution or script execution. In this method, the complexity of video steganography is simplified by using private information embedding requests and extraction requests and responses. It is widely applicable to current mainstream network videos using H.264 or H.265 compression standards, offering unparalleled advantages in flexibility, security, and compatibility.

[0146] Furthermore, the method proposed in this invention has a clear functional structure and makes full use of syntactic elements such as 4×4 block DST coefficients, prediction modes, and segmentation structures. Since 4×4 blocks often correspond to areas with complex video texture features, the method is more secure, especially in terms of imperceptibility, compared to other video steganography methods.

[0147] The present invention also provides a video steganography system, comprising: a secret information embedding module and a secret information extraction module;

[0148] The secret information embedding module is used to respond to the user's private information embedding request, determine the target video steganography algorithm from multiple video steganography algorithms according to the user's preset target video compression standard, and use the target video steganography algorithm to embed the preset private information into the target video to generate the carrier video.

[0149] The secret information extraction module is used to respond to the user's private information extraction request, determine the target video steganography algorithm according to the steganography algorithm attributes of the carrier video, so as to extract the preset private information from the carrier video;

[0150] Each of the video steganography algorithms is applicable to the corresponding video compression standard; the steganography algorithm attribute is used to indicate the target video steganography algorithm used when generating the carrier video.

[0151] Based on the above embodiments, as an optional embodiment, the video steganography system provided by the present invention includes a secret information embedding module comprising a first human-computer interaction unit, a first video decapsulation unit, an embedding unit, and a first video encapsulation unit.

[0152] The first human-computer interaction unit is used to acquire the target video selected by the user, preset private information and the target video compression standard, and generate the private information embedding request;

[0153] The first video decapsulation unit is used to decapsulate the target video into an intermediate video file in a preset format corresponding to the target video compression standard in response to the private information embedding request.

[0154] The embedding unit is used to call the embedding application of the target video steganography algorithm corresponding to the target video compression standard, so as to embed the preset private information into the intermediate video file and generate a steganized video stream file.

[0155] The first video encapsulation unit is used to encapsulate the encrypted video stream file into the carrier video.

[0156] Based on the above embodiments, as an optional embodiment, the video steganography system provided by the present invention includes a secret information extraction module comprising a second human-computer interaction unit, a second video decapsulation unit, and an extraction unit.

[0157] The second human-computer interaction unit is used to acquire the carrier video selected by the user and generate the private information extraction request;

[0158] The second video decapsulation unit is used to respond to the private information extraction request and decapsulate the carrier video into a coded video stream file corresponding to the target video steganography algorithm according to the steganography algorithm attribute.

[0159] The extraction unit is used to call the extraction application of the target video steganography algorithm to extract preset private information from the steganographic video stream file.

[0160] Based on the above embodiments, as an optional embodiment, the video steganography system provided by the present invention further includes: a comparison analysis module;

[0161] The comparison analysis module is used to display visual effects to the user by playing the target video and the carrier video corresponding to the target video;

[0162] It is also used to obtain relevant video stream information of the target video and the carrier video.

[0163] It should be noted that the video steganography system provided in this embodiment of the invention can execute the video steganography method described in any of the above embodiments during specific operation, which will not be elaborated in this embodiment.

[0164] Figure 6 This is a schematic diagram of the structure of the electronic device provided by the present invention, such as... Figure 6As shown, the electronic device may include a processor 610, a communications interface 620, a memory 630, and a communication bus 640, wherein the processor 610, communications interface 620, and memory 630 communicate with each other via the communication bus 640. The processor 610 can call logical instructions in the memory 630 to execute a video steganography method. This method includes: responding to a user's request to embed private information, determining a target video steganography algorithm from multiple video steganography algorithms according to a user-preset target video compression standard, and using the target video steganography algorithm to embed preset private information into a target video to generate a carrier video; responding to a user's request to extract private information, determining the target video steganography algorithm according to the steganography algorithm attributes of the carrier video to extract the preset private information from the carrier video; wherein each video steganography algorithm is applicable to a corresponding video compression standard; the steganography algorithm attributes are used to indicate the target video steganography algorithm used when generating the carrier video. Furthermore, the logical instructions in the aforementioned memory 630 can be implemented as software functional units and, when sold or used as independent products, can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present invention, essentially, or the part that contributes to the prior art, or a part of the technical solution, can be embodied in the form of a software product. This computer software product is stored in a storage medium and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute all or part of the steps of the methods described in the various embodiments of the present invention. The aforementioned storage medium includes various media capable of storing program code, such as USB flash drives, portable hard drives, read-only memory (ROM), random access memory (RAM), magnetic disks, or optical disks.

[0165] On the other hand, the present invention also provides a computer program product, the computer program product comprising a computer program stored on a non-transitory computer-readable storage medium, the computer program comprising program instructions, wherein when the program instructions are executed by a computer, the computer is able to execute the video steganography method provided in the above embodiments, the method comprising: responding to a user's request to embed private information, determining a target video steganography algorithm from a plurality of video steganography algorithms according to a user-preset target video compression standard, and using the target video steganography algorithm to embed preset private information into a target video to generate a carrier video; responding to a user's request to extract private information, determining the target video steganography algorithm according to the steganography algorithm attributes of the carrier video to extract the preset private information from the carrier video; wherein each video steganography algorithm is applicable to a corresponding video compression standard; the steganography algorithm attributes are used to indicate the target video steganography algorithm used when generating the carrier video.

[0166] In another aspect, the present invention also provides a non-transitory computer-readable storage medium storing a computer program thereon, which, when executed by a processor, implements the video steganography method provided in the above embodiments. The method includes: responding to a user's request to embed private information, determining a target video steganography algorithm from a plurality of video steganography algorithms according to a user-preset target video compression standard, and using the target video steganography algorithm to embed preset private information into a target video to generate a carrier video; responding to a user's request to extract private information, determining the target video steganography algorithm according to the steganography algorithm attributes of the carrier video to extract the preset private information from the carrier video; wherein each video steganography algorithm is applicable to a corresponding video compression standard; the steganography algorithm attributes are used to indicate the target video steganography algorithm used when generating the carrier video.

[0167] The system embodiments described above are merely illustrative. The units described as separate components may or may not be physically separate. The components shown as units may or may not be physical units; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. Those skilled in the art can understand and implement this without any creative effort.

[0168] Through the above description of the embodiments, those skilled in the art can clearly understand that each embodiment can be implemented by means of software plus necessary general-purpose hardware platforms, and of course, it can also be implemented by hardware. Based on this understanding, the above technical solutions, in essence or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a computer-readable storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause a computer device (which may be a personal computer, server, or network device, etc.) to execute the methods described in the various embodiments or some parts of the embodiments.

[0169] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, and not to limit them; although the present invention has been described in detail with reference to the foregoing embodiments, those skilled in the art should understand that modifications can still be made to the technical solutions described in the foregoing embodiments, or equivalent substitutions can be made to some of the technical features; and these modifications or substitutions do not cause the essence of the corresponding technical solutions to deviate from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A video steganography method, characterized in that, include: In response to a user's request to embed private information, a target video steganography algorithm is determined from multiple video steganography algorithms based on a user-preset target video compression standard. The target video steganography algorithm is then used to embed the preset private information into the target video to generate a carrier video. Specifically, this includes: acquiring the user-selected target video, preset private information, and target video compression standard, and generating the private information embedding request; in response to the private information embedding request, decapsulating the target video into an intermediate video file in a preset format corresponding to the target video compression standard; calling the embedding application of the target video steganography algorithm corresponding to the target video compression standard to embed the preset private information into the intermediate video file, generating a steganography-containing video stream file; and encapsulating the steganography-containing video stream file and the audio stream of the decapsulated target video into the carrier video. In response to a user's request to extract private information, the target video steganography algorithm is determined based on the steganography algorithm attributes of the carrier video to extract the preset private information from the carrier video. Specifically, this includes: acquiring the carrier video selected by the user and generating the private information extraction request; in response to the private information extraction request, decapsulating the carrier video into a steganography-containing video stream file corresponding to the target video steganography algorithm based on the steganography algorithm attributes; and calling the extraction application of the target video steganography algorithm to extract the preset private information from the steganography-containing video stream file. Each of the video steganography algorithms is applicable to the corresponding video compression standard; the steganography algorithm attribute is used to indicate the target video steganography algorithm used when generating the carrier video.

2. The video steganography method according to claim 1, characterized in that, Also includes: Visual effects are presented to the user by playing the target video and the corresponding carrier video. Furthermore, it acquires the relevant video stream information of the target video and the carrier video.

3. The video steganography method according to claim 1, characterized in that, The preset private information is the private information of the target video after encryption.

4. The video steganography method according to claim 1, characterized in that, The plurality of video steganography algorithms include a first video steganography algorithm and a second video steganography algorithm; The first video steganography algorithm is designed based on the H.264 video compression coding standard, and the second video steganography algorithm is designed based on the H.265 video compression coding standard.

5. A video steganography system, characterized in that, The method for implementing the video steganography method according to any one of claims 1 to 4 includes: a secret information embedding module and a secret information extraction module; The secret information embedding module is used to respond to the user's private information embedding request, determine the target video steganography algorithm from multiple video steganography algorithms according to the user's preset target video compression standard, and use the target video steganography algorithm to embed the preset private information into the target video to generate the carrier video. The secret information extraction module is used to respond to the user's private information extraction request, determine the target video steganography algorithm according to the steganography algorithm attributes of the carrier video, so as to extract the preset private information from the carrier video; Each of the video steganography algorithms is applicable to the corresponding video compression standard; the steganography algorithm attribute is used to indicate the target video steganography algorithm used when generating the carrier video.

6. The video steganography system according to claim 5, characterized in that, The secret information embedding module includes a first human-computer interaction unit, a first video decapsulation unit, an embedding unit, and a first video encapsulation unit; The first human-computer interaction unit is used to acquire the target video selected by the user, preset private information and the target video compression standard, and generate the private information embedding request; The first video decapsulation unit is used to decapsulate the target video into an intermediate video file in a preset format corresponding to the target video compression standard in response to the private information embedding request. The embedding unit is used to call the embedding application of the target video steganography algorithm corresponding to the target video compression standard, so as to embed the preset private information into the intermediate video file and generate a steganographic video stream file. The first video encapsulation unit is used to encapsulate the encrypted video stream file into the carrier video.

7. The video steganography system according to claim 6, characterized in that, The secret information extraction module includes a second human-computer interaction unit, a second video decapsulation unit, and an extraction unit; The second human-computer interaction unit is used to acquire the carrier video selected by the user and generate the private information extraction request; The second video decapsulation unit is used to respond to the private information extraction request and decapsulate the carrier video into a coded video stream file corresponding to the target video steganography algorithm according to the steganography algorithm attribute. The extraction unit is used to call the extraction application of the target video steganography algorithm to extract preset private information from the steganographic video stream file.

8. The video steganography system according to claim 7, characterized in that, The system also includes: a comparison analysis module; The comparison analysis module is used to display visual effects to the user by playing the target video and the carrier video corresponding to the target video; It is also used to obtain relevant video stream information of the target video and the carrier video.

Citation Information

Patent Citations

  • Information embedding system and information extracting system using 2D / 3D videos

    CN103731654A

  • Video steganography method and device based on multi-embedded-domain fusion

    CN109819260A

  • Rapid information hiding method for MP4 video code stream

    CN110012296A

  • System of video steganalysis and a method of using the same

    US20190313114A1