File steganography transmission method and device
By encoding and dividing text files to generate parallel steganographic information, the problem of low security in text file transmission is solved, file steganographic transmission is realized, and the security of information transmission is enhanced.
Patent Information
- Application Number
- CN202411240934.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-05
- Publication Date
- 2024-12-13
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
In the prior art, the security of text files is low and is easily stolen by cyber attackers, and there are security risks in plain text transmission.
By encoding the text content of the text file, a target bit sequence is generated, and dividing it into multiple frames for steganography in parallel, sending it to the steganography server, generating steganography information, and then sending the steganography information to the destination The user side realizes file steganography transmission and distributes steganography information to improve security.
It effectively enhances the security of text file transfer, making it difficult for the monitoring party to detect and obtain all steganographic information, and even if some steganographic information is obtained, it is difficult to restore the original text content and files, improving the security of information transmission.
Smart Images

Figure CN119135676A_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of file transmission technology, and in particular to a file steganographic transmission method and device. Background Art
[0002] With the development of communication technology, file transfer technology continues to improve.
[0003] Currently, text files can be transmitted in plain text between users. During the text file transmission process, the file owner may monitor the text file transmission process. However, there may also be situations where network attackers will steal the text file transmission process, and the security of plain text transmission of text files is low. Summary of the invention
[0004] The present invention provides a file steganographic transmission method and device, which are used to solve the defect of low security of plain text transmission of text files in related technologies and improve the security of text file transmission.
[0005] In a first aspect, the present invention provides a file steganographic transmission method, comprising: Parsing the file transfer instruction sent by the first user terminal to obtain a text file and a destination user account carried in the file transfer instruction; wherein the text file includes text content; Encoding the text content in the text file to obtain a target bit sequence corresponding to the text content; Slicing the target bit sequence to obtain a plurality of frame data; Sending the plurality of frame data to a steganalysis server for parallel steganalysis to obtain corresponding plurality of steganalysis information; The plurality of steganographic information are sent to a second user terminal corresponding to the destination user account, so that the second user terminal obtains the text file according to the plurality of steganographic information.
[0006] Optionally, the segmenting the target bit sequence to obtain a plurality of frame data includes: Dividing the target bit sequence into a plurality of primary subsequences, and determining first sequence information of each of the primary subsequences; 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; For any of the packet data, the packet data is divided into a plurality of frame data.
[0007] Optionally, the first sequence information of the first subsequence includes a file type of the text file, a first position identifier, and a first total number, where the first position identifier is used to identify a position of the primary subsequence in the target bit sequence, and the first total number is the total number of the first subsequence; 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.
[0008] 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.
[0009] 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; A 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.
[0010] Optionally, the generating a 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, respectively convert the second position identifier, the second total number, and the sequence length carried in the second sequence information of the secondary subsequence into corresponding bit strings, use the bit string corresponding to the second position identifier as the bit string corresponding to the frame number, use the bit string corresponding to the second total number as the bit string corresponding to the total number of frames, sequentially concatenate 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 to obtain a frame header, and concatenate the frame header and the secondary subsequence to obtain the frame data; The bit lengths of different bit character strings and the check code are set values.
[0011] Optionally, the steganalysis server includes a plurality of distributed node servers; the sending of the plurality of frame data to the steganalysis server for parallel steganalysis to obtain the corresponding plurality of steganalysis information includes: Under the condition of maximizing the processing efficiency of the distributed node servers, the multiple frame data are distributed to the multiple distributed node servers for parallel steganography to obtain corresponding multiple steganographic information.
[0012] Optionally, the sending of the plurality of steganographic information to a second user terminal corresponding to the destination user account so that the second user terminal obtains the text file according to the plurality of steganographic information includes: The multiple steganographic information is sent to the second user terminal based on a non-fixed Internet Protocol address IP and multiple social network accounts, so that the second user terminal obtains the text file according to the multiple steganographic information while hiding the sender from the second user terminal.
[0013] Optionally, after receiving the multiple steganographic information, the second user terminal is used to restore each of the steganographic information according to a preset algorithm to obtain the corresponding multiple frame data, merge the multiple frame data according to the data structure of the frame data to obtain multiple package data, and then merge the multiple package data according to the data structure of the package data to obtain the target bit sequence, and decode the target bit sequence to obtain the text file.
[0014] In a second aspect, the present invention provides a file steganographic transmission device, comprising: A parsing unit, configured to parse the file transfer instruction sent by the first user terminal, and obtain a text file and a destination user account carried in the file transfer instruction; wherein the text file includes text content; An encoding unit, used for encoding the text content in the text file to obtain a target bit sequence corresponding to the text content; A segmentation unit, used for segmenting the target bit sequence to obtain a plurality of frame data; A steganalysis unit, used for sending the plurality of frame data to a steganalysis server for parallel steganalysis to obtain corresponding plurality of steganalysis information; The sending unit is used to send the multiple steganographic information to the second user terminal corresponding to the destination user account, so that the second user terminal obtains the text file according to the multiple steganographic information.
[0015] In a third aspect, the present invention provides a computer device, comprising: a memory and a processor, the memory and the processor being communicatively connected to each other, the memory storing computer instructions, and the processor executing the file steganographic transmission method of the first aspect or any corresponding embodiment thereof by executing the computer instructions.
[0016] In a fourth aspect, the present invention provides a computer-readable storage medium having computer instructions stored thereon, the computer instructions being used to enable a computer to execute the file steganographic transmission method of the first aspect or any corresponding embodiment thereof.
[0017] The file steganographic transmission method and device provided by the present invention can parse the file transfer instruction sent by the first user end, obtain the text file and the destination user account carried in the file transfer instruction; encode the text content in the text file to obtain the target bit sequence corresponding to the text content; segment the target bit sequence to obtain multiple frame data; send the multiple frame data to the steganographic server for parallel steganography to obtain the corresponding multiple steganographic information; send the multiple steganographic information to the second user end corresponding to the destination user account, so that the second user end obtains the text file according to the multiple steganographic information. The present invention segments the bit sequence corresponding to the text content in the text file into multiple frame data, performs steganography on the multiple frame data to obtain multiple steganographic information, and then sends multiple steganographic information, which can realize file steganographic transmission, and can disperse the steganographic information, so that the monitoring party is difficult to detect and obtain all the steganographic information. Even if the monitoring party obtains part of the steganographic information, it is difficult to restore the original text content and text file according to the part of the steganographic information, which can effectively enhance the security of text file transmission. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] 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.
[0019] Figure 1A flowchart of a file steganographic transmission 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 a long text transmission process provided by an embodiment of the present invention; Figure 5 A schematic diagram of a process of transferring files between user terminals according to an embodiment of the present invention; Figure 6 A schematic diagram of the structure of a file steganographic transmission device provided by an embodiment of the present invention; Figure 7 A schematic diagram of the structure of a computer device provided in an embodiment of the present invention. DETAILED DESCRIPTION
[0020] 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.
[0021] In order to solve the problem in the related technology that in the text file transmission process, network attackers may steal the text file transmission process and the security of plain text transmission of text files is low, the file steganographic transmission method and device proposed in this embodiment can parse the file transfer instruction sent by the first user end to obtain the text file and the destination user account carried in the file transfer instruction; encode the text content in the text file to obtain the target bit sequence corresponding to the text content; divide the target bit sequence to obtain multiple frame data; send the multiple frame data to the steganalysis server for parallel steganalysis to obtain corresponding multiple steganalysis information; send the multiple steganalysis information to the second user end corresponding to the destination user account, so that the second user end obtains the text file according to the multiple steganalysis information. The present invention divides the bit sequence corresponding to the text content in the text file into multiple frame data, performs stego-writing on the multiple frame data to obtain multiple stego-writing information, and then sends the multiple stego-writing information, so as to realize the file stego-writing transmission, and can disperse the stego-writing information, so that it is difficult for the monitoring party to detect and obtain all the stego-writing information. Even if the monitoring party obtains part of the stego-writing information, it is difficult to restore the original text content and text file based on the part of the stego-writing information, which can effectively enhance the security of text file transmission.
[0022] Combine the following Figure 1-Figure 5The present invention describes the file steganographic transmission method.
[0023] like Figure 1 As shown, this embodiment proposes a first file steganographic transmission method, which may include the following steps: S101: Parse a file transfer instruction sent by a first user terminal to obtain a text file and a destination user account carried in the file transfer instruction, wherein the text file includes text content.
[0024] It should be noted that this embodiment can be applied to a central server.
[0025] The first user terminal may be a device used by a user to send a text file, such as a mobile phone and a tablet computer.
[0026] Optionally, the first user terminal may be a browser client or an application client.
[0027] The text file may be a text file that the user needs to send. It is understandable that the text file includes text content, and the text content may be a long text or a short text.
[0028] The destination user account may be the account of the recipient user and may uniquely identify the recipient user.
[0029] Specifically, this embodiment can receive a file transfer instruction sent by the first user terminal, wherein the file transfer instruction includes a text file and a destination user account. Afterwards, this embodiment can parse the file transfer instruction to obtain the text file and the destination user account in the file transfer instruction.
[0030] S102: Encode the text content in the text file to obtain a target bit sequence corresponding to the text content.
[0031] It should be noted that, in this embodiment, the text content in the text file can be encoded to obtain a corresponding bit sequence, ie, a target bit sequence.
[0032] S103: Slice the target bit sequence to obtain a plurality of frame data.
[0033] Specifically, this embodiment may divide the target bit sequence into a plurality of frame data.
[0034] It should be noted that each frame data may include a partial bit sequence in the target bit sequence.
[0035] S104, sending the multiple frame data to the steganalysis server for parallel steganalysis to obtain corresponding multiple steganalysis information.
[0036] In this embodiment, each frame of data is steganographically written to obtain a corresponding steganographic information.
[0037] It should be noted that this embodiment can perform steganographic transmission of text files between user terminals, so that when the monitoring party obtains the steganographic information during the file transmission process, it is unable to determine the original text content based on the steganographic information, thereby avoiding the leakage of text content, protecting the content security of text files, and improving the security of text file transmission.
[0038] Optionally, the steganographic server includes multiple distributed node servers. In this case, step S104 may include: Under the condition of maximizing the processing efficiency of the distributed node servers, multiple frame data are distributed to multiple distributed node servers for parallel steganography to obtain corresponding multiple steganographic information.
[0039] Specifically, this embodiment maximizes the processing efficiency of the distributed node servers by using multiple distributed node servers to perform parallel steganography on the above-mentioned multiple frame data, thereby improving the steganographic speed of the frame data and ensuring the processing efficiency and utilization rate of the distributed node servers.
[0040] S105. Send the plurality of steganographic information to a second user terminal corresponding to the destination user account, so that the second user terminal obtains the text file according to the plurality of steganographic information.
[0041] The second user terminal may be a device used by a file receiving user. Specifically, the second user terminal may be a browser client or an application client.
[0042] It should be noted that when related technologies are used for file transfer, they are generally point-to-point transmission and use fixed Internet Protocol Address (IP) addresses, which can easily expose the sender's location and bring security risks such as network attacks to the sender.
[0043] Optionally, step S105 may include: Based on a non-fixed IP and multiple social network accounts, multiple steganographic information is sent to a second user terminal, so that the second user terminal obtains a text file according to the multiple steganographic information while hiding the sender from the second user terminal.
[0044] Specifically, this embodiment uses a dynamically allocated IP address to send multiple steganographic information to the second user terminal, thereby increasing the anonymity and flexibility of the sender and making it more difficult to track and identify the sender. This embodiment uses multiple different social network accounts to send steganographic information, which can disperse the source of information, increase the scope of information dissemination, and reduce the risk of a single account being banned or monitored.
[0045] Optionally, this embodiment may also use a virtual private network (VPN) to send steganographic information, further hiding the sender's IP address and enhancing the confidentiality of the sender.
[0046] It should be noted that, when a text file is transmitted, the related technology performs overall steganography on the bit sequence corresponding to the text content in the text file, obtains the corresponding single steganographic information and transmits it. However, when the monitoring party obtains the steganographic information during the monitoring of the transmission of the steganographic information, the original text content can be directly obtained by decoding the steganographic information, and the information transmission security is low.
[0047] It should also be noted that the present embodiment divides the bit sequence corresponding to the text content in the text file into multiple frame data, performs steganography on the multiple frame data to obtain multiple steganographic information, and then sends the multiple steganographic information, which can disperse the steganographic information. Compared with the method of transmitting a single steganographic information in the related art, it is difficult for the monitoring party to detect and obtain all the steganographic information. Even if part of the steganographic information is obtained, it is difficult to restore the original text content and text file, because the monitoring party needs to obtain all the steganographic information and needs to correctly decode all the steganographic information in order to restore the original text content and text file, which can effectively enhance the security of information transmission.
[0048] The file steganographic transmission method proposed in this embodiment can parse the file transfer instruction sent by the first user end to obtain the text file and the destination user account carried in the file transfer instruction; encode the text content in the text file to obtain the target bit sequence corresponding to the text content; segment the target bit sequence to obtain multiple frame data; send the multiple frame data to the stegoscopy server for parallel stegoscopy to obtain the corresponding multiple stegoscopy information; send the multiple stegoscopy information to the second user end corresponding to the destination user account, so that the second user end obtains the text file according to the multiple stegoscopy information. This embodiment segments the bit sequence corresponding to the text content in the text file into multiple frame data, performs stegoscopy on the multiple frame data to obtain multiple stegoscopy information, and then sends multiple stegoscopy information, which can realize file steganographic transmission and disperse the stegoscopy information, making it difficult for the monitoring party to detect and obtain all the stegoscopy information. Even if the monitoring party obtains part of the stegoscopy information, it is difficult to restore the original text content and text file based on the part of the stegoscopy information, which can effectively enhance the security of text file transmission.
[0049] based on Figure 1 This embodiment proposes a second file steganographic transmission method, in which step S103 may include: Dividing the target bit sequence into a plurality of primary subsequences, and determining first sequence information of each primary subsequence; Convert each first sequence of information into a corresponding first bit string respectively; Based on each first-level subsequence and each first bit string, generating package data corresponding to each first-level subsequence, wherein the package data includes the corresponding first-level subsequence and the first bit string; For any packet data, the packet data is divided into a plurality of frame data.
[0050] The first-level subsequence is a certain sequence divided from the target bit sequence.
[0051] Specifically, in this embodiment, the total number of first-level subsequences to be divided may be determined first, and then the target bit sequence may be divided according to the total number of first-level subsequences to obtain a corresponding number of first-level subsequences.
[0052] 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.
[0053] 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.
[0054] Optionally, the present embodiment may pre-set a specific bit length, and perform equal-length divisions in the target 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.
[0055] Optionally, this embodiment can divide the target bit sequence into primary subsequences of corresponding number and bit length according to the bit length of the target 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.
[0056] The first sequence information is the sequence information of the first-level subsequence, and carries relevant information of the first-level subsequence.
[0057] The first bit string is the bit string corresponding to the first sequence information.
[0058] Specifically, this embodiment can convert any first sequence information into a corresponding first bit string according to the first sequence information.
[0059] Specifically, this embodiment may generate corresponding packet data according to a certain first-level subsequence and a corresponding first bit string.
[0060] Specifically, in this embodiment, any packet data may be divided into a plurality of frame data.
[0061] Optionally, the first sequence information of the first subsequence includes a file type of the text file, a first position identifier and a first total number, the first position identifier is used to identify the position of the first-level subsequence in the target bit sequence, and the first total number is the total number of the first subsequence. At this time, the above converting each first sequence information into a corresponding first bit string includes: 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.
[0062] The file types of text files may include txt, word, and pdf.
[0063] The first total number is the total number of primary subsequences divided from the target bit sequence.
[0064] Specifically, the first position identifier is a position identifier of the first subsequence in the target bit sequence, and can identify the position of the first subsequence in the target bit sequence.
[0065] Specifically, the first sequence information may include the file type of the text file, the first position identifier of a first-level subsequence, and the first total number.
[0066] 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.
[0067] The total number of packet data is the total number of packet data to be generated in this embodiment.
[0068] 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.
[0069] Optionally, the generating of the packet data corresponding to each first-level subsequence based on each first-level subsequence and each first bit string includes: 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.
[0070] 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.
[0071] Figure 2 The primary subsequence in the packet data may be obtained by evenly dividing the target bit sequence in this embodiment, or may be obtained by successively dividing the target 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.
[0072] 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.
[0073] The second total number may be the total number of secondary subsequences divided from a certain primary subsequence.
[0074] 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.
[0075] Specifically, the sequence length is the bit length of the secondary subsequence.
[0076] Specifically, the second sequence information is the sequence information of the secondary subsequence.
[0077] 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.
[0078] 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, respectively convert the second position identifier, the second total number, and the sequence length carried in the second sequence information of the secondary subsequence into corresponding bit strings, use the bit string corresponding to the second position identifier as the bit string corresponding to the frame number, use the bit string corresponding to the second total number as the bit string corresponding to the total number of frames, sequentially concatenate 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 to obtain a frame header, and concatenate the frame header and the secondary subsequence to obtain the frame data; The bit lengths of different bit character strings and check codes are set values.
[0079] 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.
[0080] Specifically, each secondary subsequence has a corresponding frame of data.
[0081] It is understandable that the packet data and frame data generated in this embodiment carry data such as location identifiers and numbers, which facilitates the second user end to subsequently restore the original text content and text file based on the frame data and packet data.
[0082] 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.
[0083] like Figure 3 As 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.
[0084] 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.
[0085] Optionally, when the secondary subsequence is at the end of the primary subsequence, the above-mentioned splicing of the frame header and the secondary subsequence to obtain 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.
[0086] 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.
[0087] Optionally, the bit lengths of different bit strings and check codes are set values.
[0088] 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.
[0089] In the related art, 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 can be segmented and steganographically written.
[0090] 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 3 As 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).
[0091] The file steganographic transmission method proposed in this embodiment can effectively split the target bit sequence corresponding to the text content into packet data and frame data, and can also split the large-scale bit sequence corresponding to the long text into multiple packet data and frame data with smaller bit lengths, and then steganographically write the packet data and frame data, thereby effectively realizing the steganography of the large-scale bit sequence corresponding to the long text.
[0092] Based on the above method proposed in this embodiment, this embodiment also proposes a third file steganographic transmission method, in which the second user terminal is used to restore each steganographic information according to a preset algorithm after receiving multiple steganographic information, obtain corresponding multiple frame data, merge the multiple frame data according to the data structure of the frame data to obtain multiple package data, and then merge the multiple package data according to the data structure of the package data to obtain a target bit sequence, and decode the target bit sequence to obtain a text file.
[0093] Specifically, the present embodiment divides the target bit sequence into multiple packet data, and divides the packet data into multiple frame data. It is understandable that the second user terminal can decode all received steganographic information to obtain the corresponding multiple frame data, and then merge the related frame data in the multiple frame data according to the data structure of the frame data to obtain multiple packet data, and then merge the multiple packet data according to the data structure of the packet data to obtain the target bit sequence, and then the target bit sequence can be decoded to obtain the original text content and text file.
[0094] It should be noted that, in this embodiment, the target bit sequence can be divided into packet data Packet and frame data Frame, and each frame data is converted into steganographic information using a coding algorithm for embedding, so that one original information is split into multiple secret information, and each secret information has complete semantics.
[0095] like Figure 4 As shown in the figure, Message is text, and "This a long message" means that this is a long text. Packet refers to packet data, and its data structure includes the file type corresponding to the long text, the first-level subsequence, and the check code, etc. Among them, Type is the file type corresponding to the long text, BitStream refers to the first-level subsequence, and CRC refers to the check code. Frame refers to frame data, is obtained by dividing the first-level subsequence in the packet data n One of the secondary subsequences. In this embodiment, the target bit sequence corresponding to the long text can be divided into multiple package data, and then the package data can be divided into multiple frame data, and the frame data can be converted into the corresponding secret message, i.e., steganographic information, and sent to the second user terminal through the social network. After the second user terminal receives the steganographic information, it can restore the steganographic information to obtain the frame data, and then obtain the package data and the corresponding long text.
[0096] The file steganographic transmission method proposed in this embodiment can effectively divide the bit sequence corresponding to the long text into multiple package data of a specific data structure, and divide the package data into multiple frame data of a specific data structure, steganographically write the frame data to obtain the corresponding steganographic information and send it to the second user end. The second user end can extract each part of the information from the frame data according to the specific data structure of the frame data, generate corresponding merged information, and thus restore the bit sequence corresponding to the long text.
[0097] Based on the above method proposed in this embodiment, this embodiment also proposes a fourth file steganographic transmission method. In the fourth file steganographic transmission method, this embodiment can use non-fixed IP and social network to store steganographic information to achieve the effect of distributed hiding of original information.
[0098] The method can be applied to a covert communication system, which may include a user layer, an adaptation layer, and a stego layer. The main functions of the user layer are session initialization, user interface interaction, and historical information management. The main functions of the adaptation layer are encoding, bit sequence splitting, decoding, bit merging, encoding, and decoding verification. The main functions of the stego layer are bit embedding and secret information extraction, and secret information is sent using multiple social network accounts. Ultimately, the purpose of the sender not being easily exposed is achieved.
[0099] like Figure 5As shown, in this system, the first step is for the user to input the file. The user can select the local text file that needs to be steganographic in the Android system android front end. The second step is to upload the text file in the Android front end. The user transfers the selected file to the central server through the background, that is, to send the file transfer instruction to the central server. The central server only participates in the function of the adaptation layer. The third step is that the central server performs file segmentation and task distribution. Specifically, the central server encodes the text content in the text file into a target bit sequence, and then splits the target bit sequence into multiple package data and frame data. Then, the steganographic assignment task for the frame data is executed, and all the obtained frame data is sent to the node server for parallel steganography to obtain the corresponding steganographic information, that is, the secret carrier. The fourth step is the summary of the secret carrier and the secret carrier. The central server can summarize all the steganographic information, that is, the secret carrier, and send it to the second user terminal through a non-fixed IP and multiple social network accounts, that is, return the secret carrier to the second user terminal. The second user terminal finally obtains the content of the secret carrier by extracting, merging and decoding the steganographic information, and then restores the original text content and text file.
[0100] It should be noted that this embodiment transmits the text file to the second user terminal by sending the long text to the multimodal network through algorithmic steganography technology. This embodiment can dynamically send the steganographic content of the long text through distributed technology to improve the sending efficiency and reduce the sending time.
[0101] The file steganographic transmission method proposed in this embodiment can realize decentralized steganography and covert transmission of text files between user terminals, thereby improving the security of text file transmission.
[0102] like Figure 6 As shown, this embodiment proposes a file steganographic transmission device, which may include: The parsing unit 601 is used to parse the file transfer instruction sent by the first user terminal to obtain the text file and the destination user account carried in the file transfer instruction; wherein the text file includes text content; The encoding unit 602 is used to encode the text content in the text file to obtain a target bit sequence corresponding to the text content; A segmentation unit 603 is used to segment the target bit sequence to obtain a plurality of frame data; The steganalysis unit 604 is used to send multiple frame data to the steganalysis server for parallel steganalysis to obtain corresponding multiple steganalysis information; The sending unit 605 is used to send multiple stego information to the second user terminal corresponding to the destination user account, so that the second user terminal obtains the text file according to the multiple stego information.
[0103] It should be noted that the processing of the parsing unit 601, the encoding unit 602, the segmentation unit 603, the steganography unit 604 and the sending unit 605 and the beneficial effects thereof can be respectively referred to in Figure 1 Steps S101 to S105 in the above are not described in detail.
[0104] Optionally, the segmentation unit 603 is further configured to: Dividing the target bit sequence into a plurality of primary subsequences, and determining first sequence information of each primary subsequence; Convert each first sequence of information into a corresponding first bit string respectively; Based on each first-level subsequence and each first bit string, generating package data corresponding to each first-level subsequence, wherein the package data includes the corresponding first-level subsequence and the first bit string; For any packet data, the packet data is divided into a plurality of frame data.
[0105] Optionally, the first sequence information of the first subsequence includes a file type of the text file, a first position identifier and a first total number, the first position identifier is used to identify the position of the first-level subsequence in the target bit sequence, and the first total number is the total number of the first subsequence.
[0106] The segmentation unit 603 is further used for: 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.
[0107] Optionally, the segmentation unit 603 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.
[0108] Optionally, the segmentation unit 603 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.
[0109] Optionally, the segmentation unit 603 is further configured to: For any secondary subsequence, respectively convert the second position identifier, the second total number, and the sequence length carried in the second sequence information of the secondary subsequence into corresponding bit strings, use the bit string corresponding to the second position identifier as the bit string corresponding to the frame number, use the bit string corresponding to the second total number as the bit string corresponding to the total number of frames, sequentially concatenate 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 to obtain a frame header, and concatenate the frame header and the secondary subsequence to obtain the frame data; The bit lengths of different bit character strings and check codes are set values.
[0110] Optionally, the steganography server includes multiple distributed node servers.
[0111] The stego-unit 604 is further used for: Under the condition of maximizing the processing efficiency of the distributed node servers, multiple frame data are distributed to multiple distributed node servers for parallel steganography to obtain corresponding multiple steganographic information.
[0112] Optionally, the sending unit 605 is further configured to: Based on a non-fixed Internet Protocol address IP and multiple social network accounts, multiple steganographic information is sent to a second user terminal, so that the second user terminal obtains a text file according to the multiple steganographic information while hiding the sender from the second user terminal.
[0113] Optionally, after receiving multiple steganographic information, the second user terminal is used to restore each steganographic information according to a preset algorithm to obtain multiple corresponding frame data, merge the multiple frame data according to the data structure of the frame data to obtain multiple package data, and then merge the multiple package data according to the data structure of the package data to obtain a target bit sequence, and decode the target bit sequence to obtain a text file.
[0114] The file steganographic transmission device proposed in this embodiment can parse the file transfer instruction sent by the first user end, obtain the text file and the destination user account carried in the file transfer instruction; encode the text content in the text file to obtain the target bit sequence corresponding to the text content; segment the target bit sequence to obtain multiple frame data; send the multiple frame data to the stegoscopy server for parallel stegoscopy to obtain the corresponding multiple stegoscopy information; send the multiple stegoscopy information to the second user end corresponding to the destination user account, so that the second user end obtains the text file according to the multiple stegoscopy information. The present invention segments the bit sequence corresponding to the text content in the text file into multiple frame data, performs stegoscopy on the multiple frame data to obtain multiple stegoscopy information, and then sends multiple stegoscopy information, which can realize file steganographic transmission, and can disperse the stegoscopy information, so that the monitoring party is difficult to detect and obtain all the stegoscopy information. Even if the monitoring party obtains part of the stegoscopy information, it is difficult to restore the original text content and text file according to the part of the stegoscopy information, which can effectively enhance the security of text file transmission.
[0115] The file steganographic transmission 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 memory that executes one or more software or fixed programs, and / or other devices that can provide the above functions.
[0116] The embodiment of the present invention also provides a computer device having the above Figure 6 The file steganographic transmission device shown.
[0117] See also Figure 7 , 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 7 A processor 10 is taken as an example.
[0118] 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.
[0119] 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.
[0120] 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.
[0121] 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.
[0122] The computer device further comprises a communication interface 30 for the computer device to communicate with other devices or a communication network.
[0123] 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.
[0124] 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 file steganographic transmission method, characterized in that: include: Parsing the file transfer instruction sent by the first user terminal to obtain a text file and a destination user account carried in the file transfer instruction; wherein the text file includes text content; Encoding the text content in the text file to obtain a target bit sequence corresponding to the text content; Slicing the target bit sequence to obtain a plurality of frame data; Sending the plurality of frame data to a steganalysis server for parallel steganalysis to obtain corresponding plurality of steganalysis information; The plurality of steganographic information are sent to a second user terminal corresponding to the destination user account, so that the second user terminal obtains the text file according to the plurality of steganographic information.
2. The method according to claim 1, characterized in that The step of dividing the target bit sequence to obtain a plurality of frame data includes: Dividing the target bit sequence into a plurality of primary subsequences, and determining first sequence information of each of the primary subsequences; 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; For any of the packet data, the packet data is divided into a plurality of frame data.
3. The method according to claim 2, characterized in that The first sequence information of the first subsequence includes a file type of the text file, a first position identifier, and a first total number, wherein the first position identifier is used to identify a position of the primary subsequence in the target bit sequence, and the first total number is the total number of the first subsequence; 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 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; A 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 a 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, respectively convert the second position identifier, the second total number, and the sequence length carried in the second sequence information of the secondary subsequence into corresponding bit strings, use the bit string corresponding to the second position identifier as the bit string corresponding to the frame number, use the bit string corresponding to the second total number as the bit string corresponding to the total number of frames, sequentially concatenate 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 to obtain a frame header, and concatenate the frame header and the secondary subsequence to obtain the frame data; The bit lengths of different bit character strings and the check code are set values.
7. The method according to any one of claims 1 to 6, characterized in that The steganalysis server includes a plurality of distributed node servers; the plurality of frame data are sent to the steganalysis server for parallel steganalysis to obtain corresponding plurality of steganalysis information, including: Under the condition of maximizing the processing efficiency of the distributed node servers, the multiple frame data are distributed to the multiple distributed node servers for parallel steganography to obtain corresponding multiple steganographic information.
8. The method according to any one of claims 1 to 6, characterized in that The sending of the plurality of steganographic information to a second user terminal corresponding to the destination user account so that the second user terminal obtains the text file according to the plurality of steganographic information includes: The multiple steganographic information is sent to the second user terminal based on a non-fixed Internet Protocol address IP and multiple social network accounts, so that the second user terminal obtains the text file according to the multiple steganographic information while hiding the sender from the second user terminal.
9. The method according to any one of claims 1 to 6, characterized in that The second user terminal is used to restore each of the stego information according to a preset algorithm after receiving the multiple stego information to obtain the corresponding multiple frame data, merge the multiple frame data according to the data structure of the frame data to obtain the multiple package data, and then merge the multiple package data according to the data structure of the package data to obtain the target bit sequence, and decode the target bit sequence to obtain the text file.
10. A file steganographic transmission device, characterized in that: include: A parsing unit, configured to parse the file transfer instruction sent by the first user terminal, and obtain a text file and a destination user account carried in the file transfer instruction; wherein the text file includes text content; An encoding unit, used for encoding the text content in the text file to obtain a target bit sequence corresponding to the text content; A segmentation unit, used for segmenting the target bit sequence to obtain a plurality of frame data; A steganalysis unit, used for sending the plurality of frame data to a steganalysis server for parallel steganalysis to obtain corresponding plurality of steganalysis information; The sending unit is used to send the multiple steganographic information to the second user terminal corresponding to the destination user account, so that the second user terminal obtains the text file according to the multiple steganographic information.
