Long text steganography method and device

By dividing the bit sequence of long text into first-level subsequences and frame data, and steganography is performed according to the bit length, the problem of insufficient steganography ability of long text in the prior art is solved, and large-scale bit sequences of long text are realized Valid steganography.

CN119203070AInactive Publication Date: 2024-12-27BEIJING SAIBO ENFU TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202411240935.7
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2024-09-05
Publication Date
2024-12-27
Estimated Expiration
Not applicable · inactive patent

AI Technical Summary

Technical Problem

The existing steganography algorithm model has limited steganography capabilities for long text bit sequences and cannot effectively process the bit sequences corresponding to long text.

Method used

Divide the bit sequence of long text into multiple first-level subsequences, and generate packet data or frame data according to each first-level subsequence. If the length of the packet data bits is not greater than the preset threshold, steganography will be performed. If it is greater than, segmentation will be performed. Steganography for multiple frames of data.

Benefits of technology

Effective steganography of large-scale bit sequences of long texts is realized, and the problem of limited length of embedded data acceptance in the prior art is overcome.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119203070A_ABST
    Figure CN119203070A_ABST
Patent Text Reader

Abstract

The invention relates to the technical field of information hiding, and discloses a long text steganography method and device.A bit sequence corresponding to a long text can be divided into a plurality of first-level subsequences, and first sequence information of each first-level subsequence is determined; converting each piece of first sequence information into a corresponding first bit character string; generating packet data corresponding to each first-level sub-sequence based on each first-level sub-sequence and the first bit character string; if the bit length of the packet data is not greater than a preset threshold value, steganography is carried out on the packet data to obtain corresponding packet steganography information; and if the bit length of the packet data is greater than a preset threshold value, segmenting the packet data into a plurality of frame data and carrying out steganography to obtain a plurality of pieces of frame steganography information. According to the method and the device, the large-scale bit sequence corresponding to the long text can be segmented into a plurality of packet data and frame data with relatively small bit lengths, and then the packet data and the frame data are subjected to steganography, so that steganography of the large-scale bit sequence corresponding to the long text is effectively realized.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to the technical field of information hiding, and in particular to a long text steganography method and device. Background Art

[0002] With the development of computer science and technology, information hiding technology continues to improve.

[0003] In information hiding, the steganographic information generally needs to be converted into bit form for embedding. This is because the basic unit of computer information processing is bit, whether it is text, image, audio or video, its information is generally represented in binary form, that is, bit sequence, inside the computer.

[0004] Currently, the steganographic algorithm model in the related art accepts a limited length of embedded data and cannot steganographically record the bit sequence corresponding to a long text. Summary of the invention

[0005] The present invention provides a long text steganography method and device, which are used to solve the defect that the embedded data length accepted by the algorithm model in the related art is limited and the bit sequence corresponding to the long text cannot be steganographically processed, and realize the steganography of the bit sequence corresponding to the long text.

[0006] In a first aspect, the present invention provides a long text steganography method, comprising: Divide the bit sequence corresponding to the long text into a plurality of first-level subsequences, and determine the first sequence information of each of the first-level subsequences; wherein the long text is the text content in the long text file; Convert each of the first sequence information into a corresponding first bit string respectively; Based on each of the first-level subsequences and each of the first bit strings, generating package data corresponding to each of the first-level subsequences, wherein the package data includes the corresponding first-level subsequence and the first bit string; If it is determined that the bit length of any of the packet data is not greater than a preset threshold, the packet data is steganographically written to obtain corresponding packet steganographic information; If it is determined that the bit length of any of the packet data is greater than the preset threshold, the packet data is divided into a plurality of frame data, and the plurality of frame data are steganographically written to obtain a plurality of corresponding frame steganographic information.

[0007] Optionally, the determining the first sequence information of each of the primary subsequences includes: Determining the file type of the long text file, and counting a first total number of the primary subsequences; For any of the first-level subsequences, determine a first position identifier of the first-level subsequence, and determine the file type, the first position identifier, and the first total as a whole as first sequence information of the first-level subsequence; wherein the first position identifier is used to identify a position of the first-level subsequence in the bit sequence.

[0008] Optionally, the converting each of the first sequence information into a corresponding first bit string includes: respectively converting the file type and the first total number in the first sequence information into corresponding bit strings, and using the bit string corresponding to the first total number as the bit string corresponding to the total number of packet data; For any of the first sequence information, the first position identifier in the first sequence information is converted into a corresponding bit string and used as the bit string corresponding to the package number. The bit string corresponding to the file type, the bit string corresponding to the package number, and the bit string corresponding to the total number of package data are sequentially concatenated to obtain a first bit string corresponding to the first sequence information.

[0009] Optionally, the generating, based on each of the first-level subsequences and each of the first bit strings, packet data corresponding to each of the first-level subsequences includes: For any of the first-level subsequences, the first bit string corresponding to the first sequence information of the first-level subsequence is used as a packet header, a corresponding check code is generated according to the first-level subsequence, and the packet header, the first-level subsequence and the check code are sequentially concatenated to obtain packet data corresponding to the first-level subsequence.

[0010] Optionally, dividing the packet data into a plurality of frame data includes: Dividing the primary subsequence in the packet data into a plurality of secondary subsequences, and counting a second total number of the divided secondary subsequences; For any of the secondary subsequences, determine a second position identifier and a sequence length of the secondary subsequence, and determine the second position identifier, the sequence length, and the second total number of the secondary subsequence as second sequence information of the secondary subsequence; wherein the second position identifier is used to identify a position of the secondary subsequence in the primary subsequence; The plurality of frame data are generated based on the packet header, each of the secondary subsequences and each of the second sequence information in the packet data.

[0011] Optionally, the generating the plurality of frame data based on the packet header, each of the secondary subsequences and each of the second sequence information in the packet data includes: For any of the secondary subsequences, the second position identifier, the second total number, and the sequence length carried in the second sequence information of the secondary subsequence are respectively converted into corresponding bit strings, the bit string corresponding to the second position identifier is used as the bit string corresponding to the frame number, the bit string corresponding to the second total number is used as the bit string corresponding to the total number of frames, the bit string corresponding to the frame number, the bit string corresponding to the total number of frames, the packet header in the packet data, and the bit string corresponding to the sequence length are sequentially concatenated to obtain a frame header, and the frame header and the secondary subsequence are concatenated to obtain the frame data.

[0012] Optionally, when the secondary subsequence is at the end of the primary subsequence, the splicing of the frame header and the secondary subsequence to obtain the frame data includes: The frame header, the secondary subsequence and the check code in the packet data are sequentially concatenated to obtain the frame data.

[0013] Optionally, the bit lengths of different bit character strings and the check code are set values.

[0014] Optionally, after obtaining the corresponding plurality of frame steganographic information, the method further includes: All the package steganographic information and the frame steganographic information are sent to a receiving end, so that the receiving end: converts all the package steganographic information and the frame steganographic information into the corresponding package data and the frame data according to a preset algorithm, extracts the package header, the primary subsequence and the check code in the package data according to the data structure of the package data and the frame data obtained by the conversion, and extracts the frame header, the secondary subsequence and the check code in the frame data, and generates the bit sequence according to the package header, the primary subsequence and the check code extracted from the package data, and the frame header, the secondary subsequence and the check code extracted from the frame data.

[0015] In a second aspect, the present invention provides a long text steganography device, comprising: A division unit, used to divide the bit sequence corresponding to the long text into a plurality of primary subsequences; wherein the long text is the text content in the long text file; a determining unit, configured to determine first sequence information of each of the primary subsequences; a conversion unit, used to convert each of the first sequence information into a corresponding first bit string; a generating unit, configured to generate, based on each of the first-level subsequences and each of the first bit strings, packet data corresponding to each of the first-level subsequences, wherein the packet data includes the corresponding first-level subsequence and the first bit string; A first steganographic unit, configured to steganographically process the packet data if it is determined that the bit length of any packet data is not greater than a preset threshold value, to obtain corresponding packet steganographic information; A splitting unit, configured to split the packet data into a plurality of frame data if it is determined that the bit length of any packet data is greater than the preset threshold; The second steganographic unit is used to steganographically process the plurality of frame data to obtain corresponding plurality of frame steganographic information.

[0016] The long text steganography method and device provided by the present invention can divide the bit sequence corresponding to the long text into multiple first-level subsequences, and determine the first sequence information of each first-level subsequence; wherein the long text is the text content in the long text file; each first sequence information is converted into a corresponding first bit string respectively; based on each first-level subsequence and each first bit string, the package data corresponding to each first-level subsequence is generated, and the package data includes the corresponding first-level subsequence and the first bit string; if it is determined that the bit length of any package data is not greater than the preset threshold, the package data is steganographically written to obtain the corresponding package steganographic information; if it is determined that the bit length of any package data is greater than the preset threshold, the package data is divided into multiple frame data, and the multiple frame data is steganographically written to obtain the corresponding multiple frame steganographic information. The present invention can divide the large-scale bit sequence corresponding to the long text into multiple package data and frame data with smaller bit lengths, and then steganographically write the package data and frame data, effectively realizing the steganography of the large-scale bit sequence corresponding to the long text. BRIEF DESCRIPTION OF THE DRAWINGS

[0017] In order to more clearly illustrate the technical solutions in the present invention or the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are some embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on these drawings without paying creative work.

[0018] Figure 1 A flowchart of a long text steganography method provided by an embodiment of the present invention; Figure 2 A schematic diagram of a data structure of packet data provided by an embodiment of the present invention; Figure 3 A schematic diagram of a data structure of frame data provided by an embodiment of the present invention; Figure 4 A schematic diagram of the structure of a long text steganography device provided by an embodiment of the present invention; Figure 5 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION

[0019] In order to make the purpose, technical solution and advantages of the present invention clearer, the technical solution of the present invention will be clearly and completely described below in conjunction with the drawings of the present invention. Obviously, the described embodiments are part of the embodiments of the present invention, not all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0020] In order to solve the problem that the embedded data length accepted by the steganographic algorithm model in the related art is limited and the bit sequence corresponding to the long text cannot be steganographic, the long text steganographic method and device provided in this embodiment can divide the bit sequence corresponding to the long text into multiple first-level subsequences and determine the first sequence information of each first-level subsequence; wherein the long text is the text content in the long text file; each first sequence information is converted into a corresponding first bit string; based on each first-level subsequence and each first bit string, the package data corresponding to each first-level subsequence is generated, and the package data includes the corresponding first-level subsequence and the first bit string; if it is determined that the bit length of any package data is not greater than the preset threshold, the package data is steganographic to obtain the corresponding package steganographic information; if it is determined that the bit length of any package data is greater than the preset threshold, the package data is divided into multiple frame data, and the multiple frame data is steganographic to obtain the corresponding multiple frame steganographic information. This embodiment can divide the large-scale bit sequence corresponding to the long text into multiple package data and frame data with smaller bit lengths, and then steganographic the package data and frame data, effectively realizing the steganography of the large-scale bit sequence corresponding to the long text.

[0021] Combine the following Figure 1-Figure 3 The long text steganography method of the present invention is described.

[0022] like Figure 1 As shown, this embodiment proposes a first long text steganography processing method, which may include the following steps: S101, dividing a bit sequence corresponding to a long text into a plurality of first-level subsequences, wherein the long text is the text content in a long text file.

[0023] Among them, the long text file is a text file including a long text. The long text file can be a long text file that needs to be steganographically transmitted. It can be understood that the text content in the long text file is the long text, and the bit sequence corresponding to the text content in the long text file is the bit sequence corresponding to the long text. Specifically, this embodiment can first obtain the long text file, and then encode the text content in the long text file, that is, the long text, to obtain the corresponding bit sequence.

[0024] The first-level subsequence is a certain sequence divided from the bit sequence.

[0025] Specifically, in this embodiment, the total number of first-level subsequences to be divided may be determined first, and then the bit sequence may be divided according to the total number of first-level subsequences to obtain a corresponding number of first-level subsequences.

[0026] It is understandable that the bit length of the primary subsequence is smaller than the bit length of the bit sequence. The bit lengths of different primary subsequences may be equal or unequal.

[0027] Optionally, this embodiment may evenly divide the bit sequence into a plurality of first-level subsequences, in which case the bit length of each first-level subsequence is equal.

[0028] Optionally, the present embodiment may pre-set a specific bit length, and perform equal-length divisions in the bit sequence in sequence according to the specific bit length. In this case, multiple first-level subsequences with a bit length of the specific bit length may be divided, and the bit length of the first-level subsequence finally divided may be smaller than the specific bit length.

[0029] Optionally, this embodiment can divide the bit sequence into primary subsequences of corresponding number and bit length according to the bit length of the bit sequence and the maximum number of characters that can be processed at a time by the steganographic algorithm model. In this case, the maximum bit length of the primary subsequences divided can be equal to or less than the maximum number of characters.

[0030] S102: Determine first sequence information of each primary subsequence.

[0031] The first sequence information is the sequence information of the first-level subsequence, and carries relevant information of the first-level subsequence.

[0032] Optionally, step S102 may include: Determine the file type of the long text file, and count the first total number of primary subsequences; For any first-level subsequence, a first position identifier of the first-level subsequence is determined, and the file type, the first position identifier and the first total number are integrally determined as first sequence information of the first-level subsequence; wherein the first position identifier is used to identify the position of the first-level subsequence in the bit sequence.

[0033] Among them, the file types of long text files may include file types such as txt, word and pdf.

[0034] The first total number is the total number of primary subsequences divided from the bit sequence.

[0035] Specifically, the first position identifier is a position identifier of the first subsequence in the bit sequence, and can identify the position of the first subsequence in the bit sequence.

[0036] Specifically, the first sequence information may include the file type of the long text, the first position identifier of a first-level subsequence, and the first total number.

[0037] S103: Convert each piece of first sequence information into a corresponding first bit string.

[0038] The first bit string is the bit string corresponding to the first sequence information.

[0039] Specifically, this embodiment can convert any first sequence information into a corresponding first bit string according to the first sequence information.

[0040] Optionally, step S103 may include: Convert the file type and the first total number in the first sequence information into corresponding bit strings respectively, and use the bit string corresponding to the first total number as the bit string corresponding to the total number of packet data; For any first sequence information, the first position identifier in the first sequence information is converted into a corresponding bit string and used as the bit string corresponding to the package number. The bit string corresponding to the file type, the bit string corresponding to the package number and the bit string corresponding to the total number of package data are sequentially concatenated to obtain a first bit string corresponding to the first sequence information.

[0041] It is understandable that the file type and the first total number carried in each first sequence information are the same. In this embodiment, only the file type and the first total number in a certain first sequence information may be converted into a corresponding bit string.

[0042] The total number of packet data is the total number of packet data to be generated in this embodiment.

[0043] The package number is the number of the package data to be generated, and can be used to identify the order of a certain package data in all package data.

[0044] S104. Based on each first-level subsequence and each first bit string, generate package data corresponding to each first-level subsequence, where the package data includes the corresponding first-level subsequence and the first bit string.

[0045] Specifically, this embodiment may generate corresponding packet data according to a certain first-level subsequence and a corresponding first bit string.

[0046] Optionally, step S104 may include: For any first-level subsequence, the first bit string corresponding to the first sequence information of the first-level subsequence is used as the packet header, the corresponding check code is generated according to the first-level subsequence, and the packet header, the first-level subsequence and the check code are sequentially concatenated to obtain the packet data corresponding to the first-level subsequence.

[0047] like Figure 2 The packet data structure shown in the figure can be composed of a packet header, a first-level subsequence (i.e. Figure 2 The bit string of the packet in the packet) and the packet CRC. Wherein, bit means bit. In the packet data, the bit length of the bit string corresponding to the file type, packet number and the total number of packet data can all be set values, specifically 2 bits, 4 bits and 4 bits respectively, wherein the file type is 2 bits (00 represents TXT text, 01 represents word text, 10 represents PDF text, 11 represents XML text), the first packet number is 4 bits (0000 represents the first packet, 1111 represents the 16th packet), and the total number of packets is 4 bits (a file is divided into less than or equal to 16 packets). At this time, the bit length of the packet header is 10 bits. The packet CRC can be the corresponding verification code generated by the cyclic redundancy check (Cyclic Redundancy Check, CRC) of the primary subsequence in this embodiment, and the bit length of the packet CRC can be 8 bits.

[0048] Figure 2 The first-level subsequence in the packet data may be obtained by evenly dividing the bit sequence corresponding to the long text in this embodiment, or may be obtained by successively dividing the bit sequence into equal lengths according to a specific bit length in this embodiment. Figure 2 The maximum of 16 in the phrase "maximum 16" means that the total number of packet data does not exceed 16. It can be understood that, in this embodiment, after the bit length of the bit string corresponding to the packet number and the total number of packets is set, the total number of packet data is also specified.

[0049] S105. If it is determined that the bit length of any packet data is not greater than a preset threshold, the packet data is steganographically written to obtain corresponding packet steganographic information.

[0050] Among them, the preset threshold can be set by the technician according to the actual situation, for example, it can be set to the longest bit length that the steganographic algorithm model can process at a time, or to a value smaller than the longest bit length, which is not limited in this embodiment.

[0051] Optionally, this embodiment can determine, for any packet data, whether the bit length of the primary subsequence in the packet data is greater than a preset threshold.

[0052] Optionally, in this embodiment, if the bit sequence corresponding to the long text is evenly divided into multiple first-level subsequences according to a preset threshold, or if equal-length divisions are performed in the bit sequence in sequence according to the preset threshold, it can be directly determined that the bit length of the first-level subsequence in any packet data is not greater than the preset threshold.

[0053] Specifically, in this embodiment, for any packet data, when it is determined that the bit length of the primary subsequence in the packet data is not greater than a preset threshold, the packet data can be input into the steganographic algorithm model for steganography to obtain corresponding packet steganographic information.

[0054] S106: If it is determined that the bit length of any packet data is greater than a preset threshold, the packet data is divided into a plurality of frame data.

[0055] Specifically, in this embodiment, for any packet data, when it is determined that the bit length of the primary subsequence in the packet data is greater than a preset threshold, the packet data can be divided into multiple frame data. It is understandable that the bit length of each frame data may not be greater than the preset threshold.

[0056] Optionally, the above-mentioned packet data is divided into a plurality of frame data, including: Dividing a primary subsequence in the packet data into a plurality of secondary subsequences, and counting a second total number of the divided secondary subsequences; For any secondary subsequence, determine a second position identifier and a sequence length of the secondary subsequence, and determine the second position identifier, the sequence length, and the second total number of the secondary subsequence as the second sequence information of the secondary subsequence; wherein the second position identifier is used to identify the position of the secondary subsequence in the primary subsequence; A plurality of frame data are generated based on the packet header, each secondary subsequence and each second sequence information in the packet data.

[0057] The second total number may be the total number of secondary subsequences divided from a certain primary subsequence.

[0058] The second position identifier may be a position identifier of a certain secondary subsequence in a corresponding primary subsequence, and may be used to identify the position of the secondary subsequence in the primary subsequence.

[0059] Specifically, the sequence length is the bit length of the secondary subsequence.

[0060] Specifically, the second sequence information is the sequence information of the secondary subsequence.

[0061] Specifically, this embodiment can divide a primary subsequence in a packet data into multiple secondary subsequences, determine the sequence information of each secondary subsequence, and then generate corresponding frame data according to the packet header, the secondary subsequence and the corresponding second sequence information in the packet data.

[0062] Optionally, the above generating multiple frame data based on the packet header, each secondary subsequence and each second sequence information in the packet data includes: For any secondary subsequence, the second position identifier, the second total number and the sequence length carried in the second sequence information of the secondary subsequence are respectively converted into corresponding bit strings, the bit string corresponding to the second position identifier is used as the bit string corresponding to the frame number, the bit string corresponding to the second total number is used as the bit string corresponding to the total number of frames, the bit string corresponding to the frame number, the bit string corresponding to the total number of frames, the packet header in the packet data and the bit string corresponding to the sequence length are sequentially concatenated to obtain the frame header, and the frame header and the secondary subsequence are concatenated to obtain the frame data.

[0063] Specifically, this embodiment can divide a primary subsequence in a certain packet data into multiple secondary subsequences, and determine the second sequence information of each secondary subsequence. For any of the secondary subsequences, the second position identifier, the second total number, and the sequence length of the secondary subsequence carried in the second sequence information of the secondary subsequence can be converted into corresponding bit strings, and then the bit string corresponding to the second position identifier is used as the bit string corresponding to the frame number, and the bit string corresponding to the second total number is used as the bit string corresponding to the total number of frames, and the bit string corresponding to the frame number, the bit string corresponding to the total number of frames, the packet header in the packet data, and the bit string corresponding to the sequence length are sequentially spliced ​​to obtain a corresponding splicing result, which can be used as a frame header, and then the frame header and the secondary subsequence are spliced ​​to obtain corresponding frame data.

[0064] It can be understood that each secondary subsequence has a corresponding frame of data.

[0065] like Figure 3 The data structure of the frame data shown in the figure includes the bit string corresponding to the frame number and the total number of frames, the packet header, and the total length of the frame (excluding the left side, which means that the total length does not take into account the bit length of the bit string corresponding to the frame number and the total number of frames). The bit string of the frame refers to the secondary subsequence. Among them, the bit length of the bit string corresponding to the frame number and the total number of frames can be a set value, and the bit length of the packet header and the total length of the frame can also be set values, such as Figure 3 In the example, the bit length of the bit string corresponding to the frame number and the total number of frames is 6 bits, the bit length of the packet header is 10 bits, and the total length of this frame (excluding the left side) is 17 bits. At this time, the bit length of the frame header is 39 bits.

[0066] like Figure 3As shown in the figure, the frame data can be composed of two parts, namely the frame header and the bit string of the frame (referring to the secondary subsequence). The frame header represents the unique location of the packet. Among them, the first frame number 6 bits means that the first frame starts from bit 000000; the total number of frames 6 bits means that the maximum value of the frame is 64 bits and ends at 111111; the packet header 10 bits indicates which packet this frame belongs to; the total length of this frame 17 bits means recording the length of the bit string of 0 and 1 of the frame, and the length is controlled within 100,000; the bit string of the frame refers to the bit string of 0 and 1 of the frame.

[0067] It is understandable that if Figure 3 As shown, when the bit length of the bit string corresponding to the frame number and the total number of frames is 6 bits, the total number of frame data obtained by segmenting the packet data is at most 64.

[0068] Optionally, when the secondary subsequence is at the end of the primary subsequence, the frame header and the secondary subsequence are concatenated to obtain frame data, including: The frame header, the secondary subsequence and the check code in the packet data are sequentially concatenated to obtain the frame data.

[0069] like Figure 3 In the data structure of the frame data shown, the frame data of the last frame number also includes a packet CRC with a bit length of 8 bits. The packet CRC means that the last frame retains 8 bits of the packet CRC after the packet is segmented.

[0070] Optionally, the bit lengths of different bit strings and check codes are set values.

[0071] Specifically, the bit length of the character string corresponding to the file type, packet number, total number of packets and packet CRC may be a set value, and the bit length of the character string corresponding to the frame number and total number of frames may be a set value.

[0072] S107, performing steganographic operation on a plurality of frame data to obtain corresponding steganographic information of a plurality of frames.

[0073] In the related technology, the embedded data length accepted by the steganographic algorithm model is generally less than 5 kilobits, which is suitable for steganography of bit sequences corresponding to short texts. If long texts such as novels are involved in embedding, they need to be segmented and steganographically constructed.

[0074] It should be noted that before text steganography, the text needs to be converted into a 0 and 1 bit stream, and then encoded through the steganographic model to generate the steganographic text. However, the conversion of long text into a 0 and 1 bit stream far exceeds the processing length of the steganographic algorithm model, so it needs to be truncated and processed in batches. The principle diagram of batch processing can be shown as follows Figure 2 and Figure 3As shown in the figure, the 0 and 1 bit streams are divided into packets of equal length, and the packets are divided into frames of equal length (the last packet or frame may be less than the same length).

[0075] The long text steganography method proposed in this embodiment can divide the bit sequence corresponding to the long text into multiple first-level subsequences, and determine the first sequence information of each first-level subsequence; wherein the long text is the text content in the long text file; each first sequence information is converted into the corresponding first bit string respectively; based on each first-level subsequence and each first bit string, the package data corresponding to each first-level subsequence is generated, and the package data includes the corresponding first-level subsequence and the first bit string; if it is determined that the bit length of any package data is not greater than the preset threshold, the package data is steganographically written to obtain the corresponding package steganographic information; if it is determined that the bit length of any package data is greater than the preset threshold, the package data is divided into multiple frame data, and the multiple frame data is steganographically written to obtain the corresponding multiple frame steganographic information. This embodiment can divide the large-scale bit sequence corresponding to the long text into multiple package data and frame data with smaller bit lengths, and then steganographically write the package data and frame data, effectively realizing the steganography of the large-scale bit sequence corresponding to the long text.

[0076] based on Figure 1 This embodiment proposes a second long text steganography method. After step S106, the method further includes: All the packet steganographic information and the frame steganographic information are sent to the receiving end, so that the receiving end: converts all the packet steganographic information and the frame steganographic information into corresponding packet data and frame data according to a preset algorithm, extracts the packet header, the primary subsequence and the check code in the packet data according to the data structure of the converted packet data and frame data, and extracts the frame header, the secondary subsequence and the check code in the frame data, and generates the above-mentioned bit sequence according to the packet header, the primary subsequence and the check code extracted from the packet data, and the frame header, the secondary subsequence and the check code extracted from the frame data.

[0077] The preset algorithm may be a restoration algorithm corresponding to the steganographic algorithm.

[0078] Specifically, the receiving end can restore the packet steganographic information and frame steganographic information back to the corresponding packet data and frame data according to a preset algorithm, and then extract relevant data from the packet data and frame data according to the data structure of the packet data and frame data, and restore the bit sequence corresponding to the long text based on the extracted relevant data.

[0079] The long text steganography method proposed in this embodiment can convert the bit sequence corresponding to the long text into package steganography information and frame steganography information, and transmit it to the receiving end, so that the receiving end can restore the long text according to the received package steganography information and frame steganography information, thereby effectively realizing the steganographic transmission of the long text.

[0080] like Figure 4 As shown, this embodiment proposes a long text steganography device, including: A division unit 401 is used to divide the bit sequence corresponding to the long text into a plurality of first-level subsequences; wherein the long text is the text content in the long text file; A determining unit 402, configured to determine first sequence information of each primary subsequence; A conversion unit 403, configured to convert each first sequence information into a corresponding first bit string; A generating unit 404 is configured to generate, based on each first-level subsequence and each first bit string, package data corresponding to each first-level subsequence, wherein the package data includes the corresponding first-level subsequence and the first bit string; The first steganographic unit 405 is used to steganographically process the packet data if it is determined that the bit length of any packet data is not greater than a preset threshold value, and obtain corresponding packet steganographic information; A splitting unit 406, configured to split the packet data into a plurality of frame data if it is determined that the bit length of any packet data is greater than a preset threshold; The second steganographic unit 407 is used to steganographically process multiple frame data to obtain corresponding multiple frame steganographic information. It should be noted that the processing of the division unit 401, the determination unit 402, the conversion unit 403, the generation unit 404, the first stego unit 405, the segmentation unit 406 and the second stego unit 407 and the beneficial effects thereof can be respectively referred to in Figure 1 Steps S101 to S107 in the above are not described in detail.

[0081] Optionally, the determining unit 402 is further configured to: Determine the file type of the long text file, and count the first total number of primary subsequences; For any first-level subsequence, a first position identifier of the first-level subsequence is determined, and the file type, the first position identifier and the first total number are integrally determined as first sequence information of the first-level subsequence; wherein the first position identifier is used to identify the position of the first-level subsequence in the bit sequence.

[0082] Optionally, the conversion unit 403 is further configured to: Convert the file type and the first total number in the first sequence information into corresponding bit strings respectively, and use the bit string corresponding to the first total number as the bit string corresponding to the total number of packet data; For any first sequence information, the first position identifier in the first sequence information is converted into a corresponding bit string and used as the bit string corresponding to the package number. The bit string corresponding to the file type, the bit string corresponding to the package number and the bit string corresponding to the total number of package data are sequentially concatenated to obtain a first bit string corresponding to the first sequence information.

[0083] Optionally, the generating unit 404 is further configured to: For any first-level subsequence, the first bit string corresponding to the first sequence information of the first-level subsequence is used as the packet header, the corresponding check code is generated according to the first-level subsequence, and the packet header, the first-level subsequence and the check code are sequentially concatenated to obtain the packet data corresponding to the first-level subsequence.

[0084] Optionally, the segmentation unit 406 is further configured to: Dividing a primary subsequence in the packet data into a plurality of secondary subsequences, and counting a second total number of the divided secondary subsequences; For any secondary subsequence, determine a second position identifier and a sequence length of the secondary subsequence, and determine the second position identifier, the sequence length, and the second total number of the secondary subsequence as the second sequence information of the secondary subsequence; wherein the second position identifier is used to identify the position of the secondary subsequence in the primary subsequence; A plurality of frame data are generated based on the packet header, each secondary subsequence and each second sequence information in the packet data.

[0085] Optionally, the segmentation unit 406 is further configured to: For any secondary subsequence, the second position identifier, the second total number and the sequence length carried in the second sequence information of the secondary subsequence are respectively converted into corresponding bit strings, the bit string corresponding to the second position identifier is used as the bit string corresponding to the frame number, the bit string corresponding to the second total number is used as the bit string corresponding to the total number of frames, the bit string corresponding to the frame number, the bit string corresponding to the total number of frames, the packet header in the packet data and the bit string corresponding to the sequence length are sequentially concatenated to obtain the frame header, and the frame header and the secondary subsequence are concatenated to obtain the frame data.

[0086] Optionally, when the secondary subsequence is at the end of the primary subsequence, the segmentation unit 406 is further configured to: The frame header, the secondary subsequence and the check code in the packet data are sequentially concatenated to obtain the frame data.

[0087] Optionally, the bit lengths of different bit strings and check codes are set values.

[0088] Optionally, the above device further comprises: The sending unit is used to send all the packet stego information and the frame stego information to the receiving end after obtaining the corresponding multiple frame stego information, so that the receiving end: converts all the packet stego information and the frame stego information into corresponding packet data and frame data according to a preset algorithm, extracts the packet header, the primary subsequence and the check code in the packet data according to the data structure of the converted packet data and frame data, and extracts the frame header, the secondary subsequence and the check code in the frame data, and generates a bit sequence according to the packet header, the primary subsequence and the check code extracted from the packet data, and the frame header, the secondary subsequence and the check code extracted from the frame data.

[0089] The long text steganography device proposed in this embodiment can divide the bit sequence corresponding to the long text into multiple first-level subsequences, and determine the first sequence information of each first-level subsequence; wherein the long text is the text content in the long text file; each first sequence information is converted into the corresponding first bit string respectively; based on each first-level subsequence and each first bit string, the package data corresponding to each first-level subsequence is generated, and the package data includes the corresponding first-level subsequence and the first bit string; if it is determined that the bit length of any package data is not greater than the preset threshold, the package data is steganographically written to obtain the corresponding package steganographic information; if it is determined that the bit length of any package data is greater than the preset threshold, the package data is divided into multiple frame data, and the multiple frame data is steganographically written to obtain the corresponding multiple frame steganographic information. This embodiment can divide the large-scale bit sequence corresponding to the long text into multiple package data and frame data with smaller bit lengths, and then steganographically write the package data and frame data, effectively realizing the steganography of the large-scale bit sequence corresponding to the long text.

[0090] The long text steganography device in this embodiment is presented in the form of a functional unit, where the unit refers to an ASIC (Application Specific Integrated Circuit) circuit, a processor and a memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.

[0091] The embodiment of the present invention also provides a computer device having the above Figure 4 The long text steganographic device shown.

[0092] See also Figure 5, a schematic diagram of the structure of a computer device provided by an optional embodiment of the present invention, the computer device includes: one or more processors 10, a memory 20, and interfaces for connecting various components, including high-speed interfaces and low-speed interfaces. The various components are connected to each other using different buses for communication, and can be installed on a common motherboard or installed in other ways as needed. The processor can process instructions executed in the computer device, including instructions stored in or on the memory to display graphical information of the GUI on an external input / output device (such as a display device coupled to the interface). In some optional embodiments, if necessary, multiple processors and / or multiple buses can be used together with multiple memories and multiple memories. Similarly, multiple computer devices can be connected, and each device provides part of the necessary operations (for example, as a server array, a group of blade servers, or a multi-processor system). Figure 5 A processor 10 is taken as an example.

[0093] The processor 10 may be a central processing unit, a network processor or a combination thereof. The processor 10 may further include a hardware chip. The hardware chip may be a dedicated integrated circuit, a programmable logic device or a combination thereof. The programmable logic device may be a complex programmable logic device, a field programmable gate array, a general purpose array logic or any combination thereof.

[0094] The memory 20 stores instructions executable by at least one processor 10, so that at least one processor 10 executes the method shown in the above embodiment.

[0095] The memory 20 may include a program storage area and a data storage area, wherein the program storage area may store an operating system, an application required for at least one function. The data storage area may store data created according to the use of the computer device, etc. In addition, the memory 20 may include a high-speed random access memory, and may also include a non-transient memory, such as at least one disk storage device, a flash memory device, or other non-transient solid-state storage devices. In some optional embodiments, the memory 20 may optionally include a memory remotely arranged relative to the processor 10, and these remote memories may be connected to the computer device via a network. Examples of the above-mentioned network include, but are not limited to, the Internet, an intranet, a local area network, a mobile communication network, and combinations thereof.

[0096] The memory 20 may include a volatile memory, such as a random access memory. The memory may also include a non-volatile memory, such as a flash memory, a hard disk or a solid state drive. The memory 20 may also include a combination of the above-mentioned types of memory.

[0097] The computer device further comprises a communication interface 30 for the computer device to communicate with other devices or a communication network.

[0098] The embodiment of the present invention also provides a computer-readable storage medium. The method according to the embodiment of the present invention can be implemented in hardware, firmware, or can be implemented as a computer code that can be recorded in a storage medium, or can be implemented as a computer code that is originally stored in a remote storage medium or a non-temporary machine-readable storage medium and will be stored in a local storage medium through a network download, so that the method described herein can be stored in such software processing on a storage medium using a general-purpose computer, a dedicated processor, or programmable or dedicated hardware. Among them, the storage medium can be a magnetic disk, an optical disk, a read-only storage memory, a random access memory, a flash memory, a hard disk or a solid-state hard disk, etc.; further, the storage medium can also include a combination of the above types of memories. It can be understood that a computer, a processor, a microprocessor controller, or programmable hardware includes a storage component that can store or receive software or computer code. When the software or computer code is accessed and executed by a computer, a processor, or hardware, the method shown in the above embodiment is implemented.

[0099] Finally, it should be noted that the above embodiments are only used to illustrate the technical solutions of the present invention, rather than to limit it. Although the present invention has been described in detail with reference to the aforementioned embodiments, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present invention.

Claims

1. A long text steganography method, characterized in that: include: Divide the bit sequence corresponding to the long text into a plurality of first-level subsequences, and determine the first sequence information of each of the first-level subsequences; wherein the long text is the text content in the long text file; Convert each of the first sequence information into a corresponding first bit string respectively; Based on each of the first-level subsequences and each of the first bit strings, generating package data corresponding to each of the first-level subsequences, wherein the package data includes the corresponding first-level subsequence and the first bit string; If it is determined that the bit length of any of the packet data is not greater than a preset threshold, the packet data is steganographically written to obtain corresponding packet steganographic information; If it is determined that the bit length of any of the packet data is greater than the preset threshold, the packet data is divided into a plurality of frame data, and the plurality of frame data are steganographically written to obtain a plurality of corresponding frame steganographic information.

2. The method according to claim 1, characterized in that The determining the first sequence information of each of the primary subsequences includes: Determining the file type of the long text file, and counting a first total number of the primary subsequences; For any one of the first-level subsequences, determine a first position identifier of the first-level subsequence, and determine the file type, the first position identifier and the first total as a whole as first sequence information of the first-level subsequence; wherein the first position identifier is used to identify a position of the first-level subsequence in the bit sequence.

3. The method according to claim 2, characterized in that The converting each of the first sequence information into a corresponding first bit string respectively includes: respectively converting the file type and the first total number in the first sequence information into corresponding bit strings, and using the bit string corresponding to the first total number as the bit string corresponding to the total number of packet data; For any of the first sequence information, the first position identifier in the first sequence information is converted into a corresponding bit string and used as the bit string corresponding to the package number. The bit string corresponding to the file type, the bit string corresponding to the package number, and the bit string corresponding to the total number of package data are sequentially concatenated to obtain a first bit string corresponding to the first sequence information.

4. The method according to claim 3, characterized in that: The generating, based on each of the first-level subsequences and each of the first bit strings, packet data corresponding to each of the first-level subsequences includes: For any of the first-level subsequences, the first bit string corresponding to the first sequence information of the first-level subsequence is used as a packet header, a corresponding check code is generated according to the first-level subsequence, and the packet header, the first-level subsequence and the check code are sequentially concatenated to obtain packet data corresponding to the first-level subsequence.

5. The method according to claim 4, characterized in that The step of dividing the packet data into a plurality of frame data comprises: Dividing the primary subsequence in the packet data into a plurality of secondary subsequences, and counting a second total number of the divided secondary subsequences; For any of the secondary subsequences, determine a second position identifier and a sequence length of the secondary subsequence, and determine the second position identifier, the sequence length, and the second total number of the secondary subsequence as second sequence information of the secondary subsequence; wherein the second position identifier is used to identify a position of the secondary subsequence in the primary subsequence; The plurality of frame data are generated based on the packet header, each of the secondary subsequences and each of the second sequence information in the packet data.

6. The method according to claim 5, characterized in that The generating the plurality of frame data based on the packet header, each of the secondary subsequences and each of the second sequence information in the packet data comprises: For any of the secondary subsequences, the second position identifier, the second total number, and the sequence length carried in the second sequence information of the secondary subsequence are respectively converted into corresponding bit strings, the bit string corresponding to the second position identifier is used as the bit string corresponding to the frame number, the bit string corresponding to the second total number is used as the bit string corresponding to the total number of frames, the bit string corresponding to the frame number, the bit string corresponding to the total number of frames, the packet header in the packet data, and the bit string corresponding to the sequence length are sequentially concatenated to obtain a frame header, and the frame header and the secondary subsequence are concatenated to obtain the frame data.

7. The method according to claim 6, characterized in that When the secondary subsequence is at the end of the primary subsequence, the splicing of the frame header and the secondary subsequence to obtain the frame data includes: The frame header, the secondary subsequence and the check code in the packet data are sequentially concatenated to obtain the frame data.

8. The method according to any one of claims 3 to 7, characterized in that: The bit lengths of different bit character strings and the check code are set values.

9. The method according to claim 7, characterized in that: After obtaining the corresponding plurality of frame steganographic information, the method further includes: All the package steganographic information and the frame steganographic information are sent to a receiving end, so that the receiving end: converts all the package steganographic information and the frame steganographic information into the corresponding package data and the frame data according to a preset algorithm, extracts the package header, the primary subsequence and the check code in the package data according to the data structure of the package data and the frame data obtained by the conversion, and extracts the frame header, the secondary subsequence and the check code in the frame data, and generates the bit sequence according to the package header, the primary subsequence and the check code extracted from the package data, and the frame header, the secondary subsequence and the check code extracted from the frame data.

10. A long text steganography device, characterized in that: include: A division unit, used to divide the bit sequence corresponding to the long text into a plurality of primary subsequences; wherein the long text is the text content in the long text file; a determining unit, configured to determine first sequence information of each of the primary subsequences; a conversion unit, used to convert each of the first sequence information into a corresponding first bit string; a generating unit, configured to generate, based on each of the first-level subsequences and each of the first bit strings, packet data corresponding to each of the first-level subsequences, wherein the packet data includes the corresponding first-level subsequence and the first bit string; A first steganographic unit, configured to steganographically process the packet data if it is determined that the bit length of any packet data is not greater than a preset threshold value, to obtain corresponding packet steganographic information; A splitting unit, configured to split the packet data into a plurality of frame data if it is determined that the bit length of any packet data is greater than the preset threshold; The second steganographic unit is used to steganographically process the plurality of frame data to obtain corresponding plurality of frame steganographic information.