Steganography and ML. Or what we got from generative adversarial networks (GANs)?





Steganography is the science of secretly transmitting information by hiding the very fact of transmission. And the word steganography itself comes from the Greek. στεγανός “hidden” + γράφω “I write” and literally means “secret writing”. In this area, as in many others, especially in recent years, machine learning methods have become widespread, in particular, generative adversarial networks (GAN). 



Next on the menu:



  1. Traditional steganography for dummies 
  2. What is GAN and what are they eaten with?
  3. So how are GANs applied?
  4. The future of GAN: what awaits us in steganography?


Traditional steganography for dummies



Since ancient times, classical steganography has been used by people as a means of secret communication: invisible ink, Tibetan poetry, and more. Modern steganography uses electronic communications and digital technology to conceal a message. Every modern stegosystem consists of two main components: injection and extraction algorithms. So, the injection algorithm takes as input a secret message, a secret key and a container that will be used to transfer the message. The result of his work is a stego message.



Generally, a message can be anything: text, image, audio data, and so on. For each type of data, its own concealment approaches are developed. So in text steganography, assumptions are used in the location and number of characters in the text, which are not taken into account when reading a person. For example, one of the techniques is formatting. Its essence consists in a line splitting by increasing the spaces between words, when one space corresponds, for example, to bit 0, and two spaces to bit 1. Or, in network steganography, hidden information is transmitted through computer networks using the peculiarities of data transfer protocols. Typical network steganography techniques involve changing the properties of one of the network protocols. In the future, we will consider only steganography in images,respectively, we will call the transmitted stego messages stego images.



More about stegosystems
  ,   1 .   ,   ,   . : , / , , .







– , . — , . .



,   .



. , . , «» ,   . ,   . .



  . , , ,  .   ,   , .



    .   , .   , .



In image steganography, three different fundamental architectures are distinguished according to different methods of obtaining stego images.



1) Image modification



There are basically two types of modification approaches to steganography. The first type  deals with supporting the statistical model, and the  second   one implements embedding as a result of minimizing a particular distortion function.



2) Image selection



Image selection is about choosing the right container and it involves two main approaches. The first is to select a candidate image for modification. In this method, you need to find a suitable container for modification in the database. Although these methods are called image selection, they are essentially a modification with some additional step. But in the future we will not consider this method as an independent one. Another approach is to choose a container as a stego image without modification. In this approach, it is important to establish rules for matching between the message and the stego image.



3) Image synthesis



The third strategy is based on image synthesis. And here our Alice (steganographer) tries to create a new image that contains the necessary information. Since the synthesis of a realistic image is a complex problem, the traditional method solves the problems of steganography by creating "unnatural" images, such as  textures  or  images of a fingerprint .



What is GAN and what are they eaten with?



Generative adversarial network (GAN for short) is an unsupervised machine learning algorithm built on a combination of two neural networks. In 2014, it was first  introduced by  Google. In a GAN system, one of the networks generates patterns and the other tries to distinguish "genuine" patterns from incorrect ones. 



A generative network, using a set of latency space variables, always tries to mold a new sample by mixing several original samples. Discriminative Network D is trained to distinguish between genuine and fake samples. At the same time, its results are fed to the input of the generative network G so that it could select the best set of latent parameters, and the discriminative network would no longer be able to distinguish genuine samples from fake ones. As you can see, the goal of the network G is to increase the percentage of errors in the network D, and the goal of the network D is, on the contrary, to improve the recognition accuracy.



GANs have found excellent applications in computer vision and  natural language processing  (generating images and texts). But at the same time, steganography was not spared.



So how are GANs applied?



GAN capabilities can be viewed from different angles: competitive play, generator, or display function. They are consistent with the classification of the main strategies in steganography, i.e. modification, synthesis and selection.



1) Image modification



The GAN-based image modification focuses on the adversarial game between the steganograph and the steganizer. This method uses a generator trained to construct various “key” elements. There are three main strategies.



Create stego image



Denis Volkhonsky, Ivan Nazarov and Evgeny Burnaev  proposed to  design a generator for creating a stego image. This approach allows for a more steganalysis-proof stego message that can convey messages using standard steganography algorithms. In essence, they presented a generative adversarial network consisting of three networks: generator G, discriminator D, and classifier S of steganalysis.



The S classifier determines whether the realistic image hides classified information.







Create modification probability matrix



An example is  ASDL-GAN  to automatically learn the distortion function. This scheme operates in the tradition of modern steganography and minimizes the additive distortion function. The change probability matrix itself is obtained by minimizing the mathematical expectation of the distortion function. The generator G in their scheme is trained to recognize the probabilities of changing P of the input image.



Adversarial play



The third strategy involves the direct use of a competitive game between three of its participants (Alice, Bob, Wendy) to study the modification algorithm. An ADV-EMB method  that tries to change the image to hide the message by tricking the steganalysis classifier.



In this approach, the pixels of the "candidate image" are divided into two groups, one group of pixels is used for modification, and the second group of pixels is used to create disturbances to counter the analyzer.



2) Image selection



GAN selection steganography is aimed at establishing the relationship between the message and the stego image. However, there are not many sources on this topic, although some works make separate attempts  in this direction.



One idea is that the sender sets the display type using a generator between the message and the selected image. For the recipient, the message is generated directly from the selected image. The essence of this method is to establish the relationship between the image and the secret message so that the container naturally turns into a stego image. Statistical steganographic analysis does not work because the modification operation itself is not performed directly.



3) Image synthesis



The image is usually created with an overtrained generator and several strategies are suggested here.



Learning with a teacher



Here, the  authors use a neural network to study an adversarial learning algorithm in which three players (Alice, Bob, and Eve) represent neural networks.







Alice uses the container and the secret message to create a stego image, while Bob tries to recover the message. Eve extracts the probability P of the secret message in the image. At the same time, Alice tries to achieve a balance in which the probability for Eve to receive an image with a secret message is 1/2. (that is, Eve is already just arbitrarily trying to guess the outcome). This algorithm introduces three loss functions, for which Alice, Bob, and Eve are responsible, respectively.



Learning without a teacher



Steganography without modification



In this method,  secret messages are converted into a noise vector, which is sent to the generator as input to create a stego image.



First, generator G is trained with some dataset. This produces a generator that can create realistic images. During the second phase, extractor E is trained using the message extraction loss function. The goal of this step is to recover the message from the generated stego image.



In the last step, the sender establishes the relationship between the noise and the message, and the secret message and the noise vectors are segmented to create a mapping. The receiver can use the extractor to reconstruct the noise vector, and then the secret message is obtained using the resulting mapping.



WGAN-GP steganography



In this approach, the  message extractor and the stego image generator are trained simultaneously. WGAN-GP is adapted to generate stego images with higher quality. According to the proposed method, the Generator G learns the input of the minimax of the game (a decision rule to minimize possible losses from those that cannot be prevented by the decision maker in the worst-case scenario for him) in order to compete with the Discriminator (D) and the Extractor (E ).







Part-teacher training



ACGAN Steganography In



order to perform partial training, a task-specific auxiliary network must be added to the original GAN.  This method  establishes a relationship between the generated image class labels and secret information, with the class labels and noise injected directly into the generator to generate the stego image. At the stage of message extraction, the stego image is fed to the discriminator to obtain fragments of secret information.



Limited sampling steganography



 In this case, the  message embedding operation becomes an image selection problem. The article considers the creation of a stego image as a problem of minimizing the distance between the original image and the stego image.



Steganography using the Ghana cycle



Some researchers consider the synthesis of stego image as a problem of "image-to-image" translation. A very famous model for image translation is  CycleGAN . This model learns to convert an image from class X to class Y by minimizing the adversarial loss function and the loop consistency loss function. The article  argues that CycleGAN can be viewed as an encoding process to hide information.



The future of GAN: what awaits us in steganography?



GAN-based methods are extremely interesting and promising for shorthand. This approach currently has three main directions of development. The future of GAN: what awaits us in steganography?



Capacity



In methods such as GAN-CSY, the instability of the generated pixels leads to poor message retrieval accuracy. In other methods, the message does not exist in its usual form, but is a category attribute or a noise vector. The disadvantage is that the messages in the existing methods do not include very much information. Thus, one of the areas requiring attention is improving stability and increasing the volume of transmitted data.



Image quality assessment



It is difficult to quantify the quality of synthetic images. In the field of image synthesis, the criteria for evaluating the generated images are not reliable enough.



Some methods that use manual assessment are subjective and lack objective criteria for assessment. The current assessment criteria are mainly IS (Inseption Score) and FID (Frechet Inception Distence). These ratings only take into account the authenticity and quality of the image. So finding suitable estimates is still an important and undeveloped line of research.



Steganalysis



The task of steganalysis is divided into two stages. The first stage is the examination of the images, which will show if the image is fake. The second step is image steganization, which determines if the generated image contains a secret message. Currently, the images generated by the GAN are indistinguishable to the

human eye. In traditional steganography, there are many methods for examining images in order to distinguish between natural and generated images. But in the future, with the development of the described approaches, it will become difficult to determine whether the image is generated or not. Accordingly, increasing the efficiency of steganalysis should be recognized as the most promising direction.



The material was prepared based on  this article.



All Articles