Master Thesis Master's Programme in Network Forensics, 60 credits

Blind Image Steganalytic Optimization by using Machine Learning

Digital Forensics, 15 credits

Halmstad 2018-08-05 Despoina Giarimpampa HALMSTAD UNIVERSITY Contact details: Despoina GIARIMPAMPA Nyhemsgatan 42 302 49 Halmstad [email protected]

Ph.D Eric JÄRPE Halmstad University School of Information Technology Department of Intelligent Systems and Digital Design 301 18 Halmstad [email protected]

Ph.D Stefan AXELSSON Halmstad University School of Information Technology 301 18 Halmstad [email protected] iii

Abstract

Since antiquity, has existed in protecting sensitive informa- tion against unauthorized unveiling attempts. Nevertheless, digital media’s evolution, reveals that steganography has been used as a tool for activities such as terrorism or child pornography. Given this background, steganaly- sis arises as an antidote to steganography. can be divided into two main approaches: universal – also called blind – and specific. Specific methods request a previous knowledge of the steganographic technique un- der analysis. On the other hand, universal methods which can be widely practiced in a variety of algorithms, are more adaptable to real-world appli- cations. Thus, it is necessary to establish even more accurate steganalysis techniques capable of detecting the hidden information coming from the use of diverse steganographic methods. Considering this, a universal steganal- ysis method specialized in images is proposed. The method is based on the typical steganalysis process, where feature extractors and classifiers are used. The experiments were implemented on different embedding rates and for various steganographic techniques. It turns out that the proposed method succeeds for the most part, providing dignified results on color images and promising results on gray-scale images.

v

Acknowledgements

I must first express my very profound gratitude to my thesis advisor Eric Järpe. The door to Prof. Järpe’s office was open whenever I had a question about my research or writing. Furthermore, as the second reader of this the- sis, I am gratefully indebted to him for his worthwhile comments on this thesis. I would also like to thank the colleagues who were involved in this re- search project: Mujtaba Aldebes, Mohammad Mirian and Shooresh Sufiye. Without their proper suggestions and useful advices, the study could not have been successfully conducted. Additionally, I would like to acknowledge Mohammed Abdulrazzaq who set up the University Server and provided me with the necessary hardware resources for the experiment. Finally, I would like to thank my family for providing me with support and constant fortitude throughout my years of study and through the process of researching and writing this thesis. This accomplishment would not have been possible without them. Thank you.

Despoina Giarimpampa vi

When you surround an army, leave an outlet free. Do not press a desperate foe too hard.

Sun Tzu, The Art of War vii

Contents

Abstract iii

Acknowledgementsv

List of Figuresx

List of Tables xi

1 Introduction1 1.1 Purpose of the study...... 1 1.2 Motivation...... 2 1.3 Objectives...... 2 1.3.1 Main Objective...... 2 1.3.2 Specific Objectives...... 2 1.4 Methodology...... 3 1.5 Significance of the study...... 4 1.6 Delimitations, Limitations and Assumptions...... 4 1.6.1 Assumptions...... 4 1.6.2 Limitations...... 5 1.6.3 Delimitations...... 5 1.7 Thesis Organization...... 5

2 Background7 2.1 Steganography...... 7 2.1.1 Characteristics of steganography...... 9 2.1.2 Steganography Categorization...... 10 2.1.3 Steganography in JPEG...... 13 2.1.4 Applications of Steganography...... 14 2.2 Steganalysis...... 15 2.2.1 Steganalysis Categorization...... 15 2.2.2 Steganalytic Process...... 18 Feature Extraction...... 18 Classification...... 20 2.3 Machine Learning...... 20

3 Related Work 23 3.1 Steganographic Algorithms...... 23 3.1.1 The Least Significant Bit Family...... 23 LSB+...... 24 LSB++...... 24 viii Contents

LSB Matching...... 24 LSB Matching Revisited...... 24 Steghide...... 24 S-UNIWARD...... 24 Jphide and Jpseek...... 25 3.1.2 F5...... 25 3.1.3 Outguess...... 27 3.1.4 Other Steganographic Methods...... 27 3.2 Steganalytic Algorithms...... 30 3.2.1 Subtractive Pixel Adjacency Model...... 30 3.2.2 CC-PEV...... 30 3.2.3 Cross Domain Features...... 30 3.2.4 Local Binary Pattern...... 30 3.2.5 Content-Selective Residuals...... 31 3.2.6 Other Feature Extractors...... 31 3.3 Machine Learning in Steganalysis...... 32 3.4 Chapter Summary...... 34

4 Proposed Method 35 4.1 Proposed Method...... 35 4.2 Experimental Setup...... 37 4.2.1 Datasets...... 37 4.2.2 Embedding Software...... 39 4.3 Feature Extraction...... 40 4.4 Classification...... 42 4.4.1 Classifiers...... 42 4.4.2 Evaluation Metrics...... 44 4.5 Chapter Summary...... 45

5 Results and Discussion 47 5.1 Results and Analysis...... 47 5.2 Ethical and Social Analysis...... 54 5.3 Chapter Summary...... 56

6 Conclusion 57 6.1 Contributions...... 57 Intergation of datasets...... 57 Development of a reliable method...... 57 Reliable classification...... 57 Avoidance of any dependence...... 57 Evaluation...... 57 6.2 Discussions...... 57 6.3 Future/Further Work...... 58

A Matlab Code 59

B Batch File 61 ix

List of Figures

1.1 Methodology...... 3

2.1 Evolution in hiding methods...... 9 2.2 The steganography scheme...... 10 2.3 The principles of steganography...... 11 2.4 Classification of steganographic methods...... 12 2.5 Classification of stegosystems...... 12 2.6 JPEG Mechanism...... 14 2.7 The Passive Warden Scheme...... 16 2.8 The Active Warden Scheme...... 16 2.9 Visual based steganalysis...... 17 2.10 Steganalysis categorization...... 18 2.11 Steganalitic process...... 19 2.12 Simple Model of steganography...... 19

3.1 F5 Implementation Steps...... 26 3.2 Interblock and Intrablock correlation...... 31

4.1 General Steps...... 35 4.2 Method Stages...... 36 4.3 Dresden Database...... 38 4.4 Bmp Database...... 38 4.5 BOSS Database...... 39 4.6 Steganographic Methods Used...... 40 4.7 First-level Classification...... 43 4.8 Second-level Classification...... 43

5.1 Plot of Class-Spam Features...... 47 5.2 Plot of Class-LBP Features...... 48 5.3 Plot of Class-CSR Features...... 48 5.4 Plot of Class-Bytes...... 49 5.5 Plot of Class-Dimensions...... 50 5.6 Plot of Bytes-Dimensions...... 50 5.7 Highest Detection Rate...... 51 5.8 Comparison between embedding rates detection of the LSB Family methods...... 52 5.9 ROC curve for BMP images...... 52 5.10 ROC curve for PGM images...... 53 5.11 ROC curve for JPEG images...... 53 5.12 PRC curve for JPEG images...... 54 x List of Figures

5.13 PRC curve for BMP images...... 54 xi

List of Tables

4.1 Selected Steganographic Methods...... 41

5.1 Method Results...... 51

xiii

List of Abbreviations

bpp bits per pixel DCT Discrete Cosine Transform HVS Human Visual System LSB Least Significant Bit SVM Support Vector Machine TP True Positive TN True Negative FN False Negative FP False Positive

1

Chapter 1

Introduction

Information is power. There is an ongoing digital war leading into an esca- lated secrecy in data with regards to possession as well as to transmission. The current thesis will try to dissect the phenomenon and investigate a forensic approach on steganography, an information hiding method that steadily gains ground.

Index Terms Cover media: an object that is original, without a secret message stored in it, the carrier of the hidden message Stego media: a medium in which the information is hidden, the cover image with a secret message concealed within it Embedded payload: the information which is to be hidden or concealed Training objects: data used for producing a model Image Feature: statistical representation of an image These terms will hence forth be used without further ado.

1.1 Purpose of the study

Steganography is the technique of concealing particulars in data of any dig- ital format in such a way that these hidden parts are known only by sender and receiver of the data [1]. The opposite procedure, steganalysis, can detect the existence of steganographic methods on a digital object [1]. Nowadays, the variety of steganographic algorithms, combine with the explosive growth of tools made for steganography reasons, have initiated a hunting game of stego objects that can be found in almost everywhere. However, according to that growth, steganalysis is still in its infancies, and always one step be- hind steganography but it is expected to be developed equally in the nearest future. In the "real world" steganography, someone can just connect to a web- site and download files that only appeared to be legitimate HTML or JPEG files. However, it is not always bona fide as it has become effortless to copy and distribute illegal digital information [2], [3] which is easily created by changing file’s elements in a visually imperceptible way. As the human visual system (HVS) is unable to detect small changes on a pixel level of an image file, in numerous cases, the process of embedding secret information into an innocent-looking carrier requires only 0.01 bits per 2 Chapter 1. Introduction pixel rate. In that case, even the most descent steganalyzers might face diffi- culties in detecting whether a carrier file contains hidden information. Furthermore, it is important to consider the media type for selecting a ste- ganalysis method. Due to the expansive use of images to cover information, this paper will focus on detecting images with covered data. JPEG is one of the most common file types used as a carrier because of the number of JPEG images uploaded online every day, increases their ability to pass under the radar as an unsuspected material. Also, all digital cameras, all mobile phones capture directly to JPEG format, so it is not a problem to find such an image. However, JPEG format appears with one extra difficulty while analyzing it. JPEG is a lossy compression scheme and the steganalysis has to occur on a data-point, instead of on a pixel-level.

1.2 Motivation

Due to the variety of steganographic methods, it becomes effortless to hide a piece of information on a media without being caught. A steganalysis ex- pert often has to have some information about the steganogaphic algorithm in order to detect whether there is additional information on the examined piece of media. As a consequence, developing steganalysers, which are up- dated and independent of any steganographic method, has become essential. These factors allow the steganalytic tool to resolve if a media (i.e. an image) is a stego, without any previous clue about the hidden content or the embed- ding method. Moreover, steganalysis should be trustworthy for a variety of steganographic techniques in order to take suitable countermeasures.

1.3 Objectives

The thesis statement is divided into five sub-statements and each one repre- sents a significant step in facilitating the study.

1.3.1 Main Objective The main objective of this investigation is to develop a decisive blind ste- ganalysis method for images, capable of detecting the existence of hidden information from a variety of steganographic techniques, with low error rate.

1.3.2 Specific Objectives The steps to attain the main objective are synopsized as follows.

• Integrate datasets including varied images embedded at different stegano- graphic methods with different insertion rates.

• Develop a reliable steganalysis method, using feature extraction and pattern recognition techniques. 1.4. Methodology 3

• Develop a method that can classify reliably accordingly to some stan- dard below 0.1 bits per pixel.

• Try to avoid the significant dependence of certain image features and the image noise or correlation pattern on sufficient detectable rates.

• Evaluate the proposed method over the datasets.

1.4 Methodology

The above objectives can be accomplished by a four-stage procedure which is illustrated in Figure 1.1 Since there is a lack of a publicly available scientific image dataset con- taining distinct embedded steganographic mechanisms, it is crucial to gather various images and embed them with diverse methods of steganography us- ing various insertion rates. The step above is imperative as the experiments and the evaluation of them depend on it.

FIGURE 1.1: The methodology consists of four stages. In the first stage the steganographic part takes place. Then, the fea- ture extractors are chosen and the first part of steganalysis be- gins. Afterwards, classifiers are trained and output the result. Finally, the whole method is evaluated.

Considering the proposed method itself, different feature sets will be ex- plored for steganography detection. All the feature extractors will be evalu- ated to conclude on the most appropriate feature set. Since the features are chosen, it is essential to evaluate the different pat- tern recognition methods. Thus, the collection of classifiers will be explored relatively to the feature ensembles. 4 Chapter 1. Introduction

Eventually the proposed method is going to be evaluated and be com- pared against the related work.

1.5 Significance of the study

Information privacy has always been a concern that affects everyone. Through- out the human history, there are plenty of examples in which methods are developed in order to keep the secrecy of sensitive information and to ob- struct unauthorized people of revealing this information. In the context of this protection, steganography is becoming more and more popular among people. Digitally transferred data can be copied without any loss of content and quality, which may lead to serious data security, authenticity, and copy- right problems. Nowadays, there is a plethora of applications using steganography to insulate confidential information such as application on copywrite protec- tion, authentication, etc. Nevertheless, steganography is also used on some perilous applications such as child pornography and terrorism. According to USA Today, in the year 2001, the United States government identified some messages concealed in images uploaded in popular websites, even in pornographic ones [4]. Also, CNN reported some documents about the steganographic methods used by terrorists while planning the U.S. attacks on September 11, 2001 and from the steganalysis following some of the Al Qaeda’s plans were revealed [5]. Recently, in 2010, a Russian spy ring was unveiled [6], and that proved that steganography can be undetectable for much longer. The compromised group used digital image steganography to leak classified information from U.S. to Moscow [7]. More recently, scientists have discovered communication through stego images among the Terrorist Boko-Haram Sect in Nigeria [8]. The mushrooming incidents [9], [10] which implicate the use of steganography and the information hiding, in general, evoked a conclusive admission of the problem. In such circumstances, steganalysis could be responsible to detect, extract or even destroy the covered information.

1.6 Delimitations, Limitations and Assumptions

The current thesis has been conducted based on situations and circumstances that may affect the research study and they are clarified below.

1.6.1 Assumptions 1. Every downloaded cover image is free of hidden information.

2. The source code used in both message embedding and feature extrac- tion is debugged and works according to the editor’s notes. 1.7. Thesis Organization 5

3. The steganographic algorithms have not left a “signature” when em- bedding information in order to be easily detected through statistical analysis.

1.6.2 Limitations 1. There is no standard dataset of images used for steganalysis allowing various experiments to be conducted.

2. The study conducted over a certain interval of time and the feature ex- traction or the machine learning results are dependent on conditions (set of parameters) occurring during that time.

3. The server used for the whole study, had no internet access and the methods were implemented without any further package installation (i.e Sallee’s jpeg toolkit in Matlab). Every file had to be mounted on an Ubuntu VM which is reciting on a Virtual Machine (VMware vSphere ESXi Server).

1.6.3 Delimitations 1. The amount of embedded secret message should be such that it doesn’t cause any visual distortion to the stego image.

2. No image manipulation, such as cropping or rotation, has been per- formed, as it can affect the detection results of an aspect of training data.

3. Some methods are independent of file format and some not.

4. Image datasets may vary in size and some JPEG datasets might not include the total amount of images of the initial database due to the time complexity of the algorithm used in every case.

1.7 Thesis Organization

The thesis is organized in six chapters. Chapter 2 includes a summary of the basic concepts on steganography and some popular steganographic algorithms. It also, contains the steganal- ysis concepts and categorization. Finally, machine learning definitions is in- troduced. Chapter 3 provides a review of the steganographic and steganalytic al- gorithms as presented on related work, and several principal works about machine learning techniques in steganalysis. Chapter 4 introduces the proposed methodology and describes the exper- imental implementation, including datasets and embedding software used. 6 Chapter 1. Introduction

Chapter 5 details the evaluation method and its results. Moreover, the result analysis is presented as well as the ethical and social aspects of the study. Chapter 6 consists of research conclusions, and the future work. 7

Chapter 2

Background

In this chapter, the basic concepts of steganography, steganalysis, and ma- chine learning techniques are introduced.

2.1 Steganography

The word Steganography originates from Greek and literally means "Cov- ered writing" because it is the art of camouflaging information without aris- ing suspicion. It consists of a broad array of secret communication techniques that disguises the message’s very existence. The first record of the term "steganography" was found in the Johannes Trithemius’ book Steganographia in 1499. Even the specific reference on the title, the book was primarily about cryptographic methods and techniques as well as esoteric subjects [11]. The very first documented technique of steganography was reported by Herodotus in the fifth century BC, when people used to create messages on tablets covered by wax. In that way, the message remained unnoticed un- der the wax layer. Also, Herodotus wrote that Histiaeus, the tyrant of Mile- tus when under the Persian King Darius I, desired to communicate with his Greek son-in-law. In order to do so, had shaved the head of one of most trusted slaves and tattooed the message onto the slave’s scalp. When the slave’s hair grew back he sends slave with the hidden message and when slave reaches to the destina- tion again he shaved his scalp and retrieve the message [12]. Years after, Aeneas Tacticus was in charge of supporting the military com- munications in a secure way. He described different types in physically hid- ing a message, such as pigeons, women’s earrings and letters with small holes on the paper to cover the text. An additional popular Greek ancient method, known as acrostic, described is disguising a message in a specific section of every word in a text, like a poem. Regardless of its simplicity, acrostics have survived till modern era. The invisible ink was, also, a widely used technique, even in this period. Drawings were also used to hide information by varying the length of a line, the colors, or other features of the picture. We are able to prove that great artists, such as Leonardo Da Vinci, Rafael and Michelangelo, have concealed messages into their paintings [13]. In 1870, during Franco-Prussian war, Rene Dragon used afresh steganog- raphy in messages by shrinking photographs to allow pigeons in carring more information [14]. This idea contributes to the contemporary microdot 8 Chapter 2. Background which consists of printed-period size images. The so-called Microdot inven- tion. started being popular in 1941, during the World War II. Back then, German spies introduced this new data hiding technique [15]. Furthermore, steganography was used, during that period, by prisoners and soldiers be- cause the post mail in Europe was rigorously checked at the time [16]. The scientific study of digital steganography started in 1983 when the cryptographer Gustavus Simmons [17] published the first steganographic work which formulates the communication problem in a prison example, known as the prisoner’s problem. He introduced the typical steganographic system which is portrayed as the idea of two inmates want to hatch an es- cape plan together. The only way they may communicate with each other is over an insecure public channel monitored by the prison’s warden. If the warden realizes or even suspects any kind of scrambled communication, he will throw the prisoners into solitary confinement. Therefore, the inmates have to find some way of concealing their secret escaping messages in such a way that the only, warden, could see is inconspicuous text. Considering the prisoner’s problem, the typical definition of steganogra- phy includes a steganographer desiring the communication with a passive conspirator through a motoring channel by an eavesdropper. The steganog- rapher puts the secret message inside a seemly-innocent media and hopes that these changes will be imperceptible to the eavesdropper, in order to con- vey the secret message to the recipient. By the same token, the prisoner’s problem assisted in differentiating be- tween and steganography. Cryptography anticipates the con- fidentiality of information, while making communication impenetrable for the unauthorized people. Notwithstanding, in many cases this might advo- cate information attacks and that is the cause why in countries where the cryptography is barred, steganography has gained ground and acceptance. Nowadays, steganography is principally used in protecting confidential information. The demand for digital communication has effectively increased and as a result the internet has permanently grow into the most powerful and fastest way for digital communication. Simultaneously, data across the internet has evolved into vulnerability in copyright infringement, hacking, and , so the need of secret and reliable communication has been increased. Steganography is one of the information hiding approaches besides fingerprinting and watermarking. According to Figure 2.1 steganog- raphy considered as an advanced hiding information concept and one of the reasons why is the stealthiness as its ultimate goal. In the steganographic process, the classic scheme, illustrated in Figure 2.2, consists of three parts: the sender-part, the recipient-part and the public channel between them. The communication is accomplished as follows. The sender uses a cover object x to embed a secret message m creating a stego object x(m) which is sent to the recipient through the public channel. The sender can use an op- tional key (k) to maximize the security. After the stego object is sent, the recipient extracts the hidden information from the object by using the corre- spondent key [1], [18]. 2.1. Steganography 9

FIGURE 2.1: Evolution in hiding methods. Watermarking can be either visible or invisible and identifies ownership and copy- right on hidden data. Cryptography steps further and change the data so it is illegible. Steganography is capable of hiding the very existence of the data.

A universal description of the steganographic procedure can be summa- rized:

cover medium + hidden data + stego key = stego medium where the cover medium is the original file in which the data is hidden, which may also be encrypted using the stego key, and the outputting file is the stego medium [19].

2.1.1 Characteristics of steganography Since steganography has been studied in the framework of informatics and computer science, plenty algorithms have been developed to embed mes- sages in innocent looking data, while their main aim is a certain one: creat- ing secret and robust steganographic protocols.In this manner, the features foreseen of a stego-medium are imperceptibility and robustness. In order to prevent secret messages from being known to anyone but the intended re- ceiver, robustness is an important property. Still the stego object should be unable to withstand attacks from intruders Having all the above under consideration, it is easy to summarize the three important aspects of a steganographic method: imperceptibility, em- bedding capacity and robustness. The imperceptibility refers to a person’s incapability of distinguishing the cover and the stego object and therefore, the inability of detecting the existence of hidden information. Withal, the embedding or payload capacity is the optimal amount of hidden information that can be embedded in a cover object without degradation of the quality of 10 Chapter 2. Background

FIGURE 2.2: The steganography scheme. The secret message is embedded in a cover image using an encryption key and is transmitted through a public channel to the message recipient who extracts the hidden information by using a decryption key. that object. In the image steganography, the payload capacity is measured in bits per second. At the same time, in video steganopgraphy the measure is bits per frame and in audio steganography is bits per second. Finally, ro- bustness is referred as the degree of difficulty expected in destroying the em- bedded information without destroying the cover object. In other words, it denotes the strength capability of the object to resist several attacks. For in- stance, in image steganography, the restoring process should allow obtaining the covered message even if the stego object underwent changes in technical characteristics such as brightness, size, contrast, rotation, cropping, etc. Ro- bustness across attacking methods may vary among algorithmic techniques [20]. Moreover, the characteristics of information hiding methods vary in many ways. In steganography, the main ambition is to camouflage a message in an unrelated cover object, considering both great robustness and capacity. At the same time, watermarking aims at robustness and the hidden message is related to the cover object, over its timestamps, checksums, etc. Meanwhile, fingerprinting also aims on robustness, but the embedded message is related to the user or the owner of the cover object and in that way, it makes it possi- ble to trace any unauthorized transmission [21], [22].

2.1.2 Steganography Categorization There are different types of stegosystems depending on the use or the ab- sence of a secret key, likewise cryptography, see Figure 2.5. The original 2.1. Steganography 11

FIGURE 2.3: The principles of steganography. Imperceptibility lies on inability to distinguish a stego image. Capacity is the amount of payload a cover image can carry. Robustness could defines as the stability of the stego image along with the persis- tence to attacks. stegosystems or pure stegosystems do not require any key and they are the simplest way of steganographic systems. In the secret-key steganography a private key is used and needs to be provided to the receiver of the stego medium beforehand. Finally, a public key is used in the public stegosystems through a public key generation protocol. Steganography may be divided into two main categories, albeit there are six divisions in total, see Figure 2.4. The first one is the Spatial domain steganography or Substitution method: it directly embeds messages in the in- tensity of the pixels, as it substitutes the redundant parts of a cover medium with a secret message. Also, it encompasses bit-wise methods which apply bit insertion and noise manipulation and is often characterized as a “simple system”. Spatial domain methods are frequently used due to high capacity of hidden information and easy attainment. An example of spatial domain Steganography is the Least Significant Bit (LSB). The second category is the Transform domain steganography: the informa- tion is embedded in a transform space of the medium’s signal. The image is first transformed and then the message is embedded in its frequency do- main. More specifically, in its transform coefficients. There, the magnitude of all discrete cosine transform (DCT) coefficients of the cover image are al- tered. Also, it involves the manipulation of algorithms and image trans- forms. The transform domain steganography method is used for hiding a large amount of data and provides high security, combined with a good in- visibility and no loss of the secret embedded message. The 2-D DCT converts image blocks from spatial domain to frequency domain. The cover image is divided into non-overlapping blocks of size 8 × 8 and applies DCT on each 12 Chapter 2. Background

FIGURE 2.5: Classi- fication of stegosys- FIGURE 2.4: Classi- tems. Likewise fication of stegano- cryptography, graphic methods. steganography The most com- might use public mon used are key, private key or Spatial-domain and no keys at all. Transform-domain and these are also used in the current study. of blocks of cover image using forward DCT [23]. Examples of transform do- main steganography are Discrete Cosine Transform, Discrete Fourier Transform, and Discrete Wavelet Transform. Other steganographic categories are the Spread Spectrum technique (which adopts ideas from spread spectrum communication), the Statistical method (which encodes information by changing various statistical properties of the cover and uses several hypothesis testing in the extraction process), the Dis- tortion technique (that stores the information by signal distortion and mea- sure the deviation from the original file in the decoding step), and finally the Cover generation method which encodes information in the way a cover for secret communication is created) [24]. The methods of spread-spectrum communication, error-control coding, and image processing combined together, accomplish the Spread Spectrum Image Steganography (SSIS). SSIS is a secret communication steganographic system that uses digital imagery as a cover signal. Spread spectrum sup- ports the ability to hide a considerable quantity of bits within an image while 2.1. Steganography 13 avoiding detection by a spectator. The secret message is recovered with low- est error probability because of the operation of error control coding and the image payload is at least an order of magnitude greater than of existing wa- termarking methods. Moreover, the original image is not necessary for the retrieval of the secret message as only a key is needed to reveal it. Also, SSIS adds resiliency to transmission noise and minimum compression.

2.1.3 Steganography in JPEG The cover medium is usually chosen keeping in mind the type and the size of the secret message and many different carrier file formats can be used. Nev- ertheless, JPEG images are routinely used as cover medium. Originally there was a belief that Steganography would not be used by JPEG images, since they are a lossy compression schema which results in parts of the image data being altered. The main key characteristic of Steganography is the fact that information is concealed in the redundant bits of an image and the message can be embedded into these bits of the coefficients before applying the Huff- man encoding, see Feature 2.6. Since redundant bits are left out when using JPEG, it was worrisome that the secret information would be destroyed.

Split the image into 8x8 blocks. Transform each block via DCT. Use a loosy quantizer. Use a lossless quantizer Decompressing Algorithm 1: JPEG compresion

It is neither practical nor beneficial to embed in an image that uses lossy compression, since the that compression would damage all information in the process. Even if someone could somehow keep the information intact, the changes while embedding it would be noticeable because of the lossy compression applied. Inasmuch as the compression causes data embedding in spatial domain in resulting too much noise, a solution will be in hiding data after Quantization stage. By embedding the information at this stage, in the transform domain, it is quite hard to detect the message because the embedding no longer takes place in the visual domain. The JPEG compression algorithm is, indeed, divided into lossy and loss- less stages, see Feature 2.6. The Discrete Cosine Transform (DCT) and the quantization stages are part of the lossy stage, whereas the Huffman encod- ing which is used to further compress the data is lossless [25]. The proper- ties of the compression algorithm have been exploited to develop a stegano- graphic algorithm for JPEGs [26] aiming the image changes to be undetected to the human eye. 14 Chapter 2. Background

FIGURE 2.6: JPEG Mechanism. The JPEG compressor cuts the uncompressed bitmap image into parts of 8 x 8 pixels. Then the Discrete Cosine Transformation transfers the 8 x 8 brightness values into 8 x 8 frequency coefficients. Next phase is Quanti- zation which suitably rounds frequency coefficients to integers in range -2048..2047. Quantization followed by Huffman cod- ing which ensures redundancy free coding of quantized coeffi- cients. .

2.1.4 Applications of Steganography Steganography ranges over a broad area of applications such as advanced data structures [27],[28], medical imagery [29], [30] where patient’s record is embedded into the image providing protection of information and reducing transmission time, strong watermarks [31], [32], military agencies [31], docu- ment tracking tools [31], document authentication [31], intelligence agencies [33] as defiance organizations for safe circulation of secret data , general com- munication [34], online elections and electronic money [35], in smart identity cards where personal details are embedded in the photograph itself for copy- right control of materials [36], radar systems, modern printers and remote sensing. This diverse of applications typify steganography as digital vigilance and a hot topic of study, thus its continuing evolution is guaranteed. However, in the realm of this disparate world steganography has spawned all the types application’s purposes which can be categorized into three main ones: mili- tia, criminal or dissidence. As it was mentioned before, armies had used steganographic techniques to communicate confidential sensitive information to their allies and troops. 2.2. Steganalysis 15

Also, they used steganography to store this secret data. Nowadays, it is very crucial to be protected from any data alteration and to have an access control system for digital content distribution. Nonetheless, the information about all the modern steganographic techniques and uses is kept as a valuable se- cret among people, due to security reasons issues. The second case is well known and mostly used in specific countries due to digital-media repression to their citizens. The dissidents avoid the surveil- lance via steganography for communication with like-minded people and mediator organizations like Amnesty International [37]. Finally, criminal groups such as terrorists and pedophiles are, also, inter- ested in steganography, as it has been described on Chapter 1.

2.2 Steganalysis

The security of a steganographic system is referred to its stability to avoid detection. Steganalysis tries to defeat this secrecy by creating hypothesis tests which can distinguish slight differences between cover and stego objects and accordingly classify them. The first goal of the steganalyst/warden is to detect the presence of hid- den information and on a second level to decode it. In the prisoners’ problem, the warden could prevent the embedding of a message inside the letter in two ways. The messages can be deliberately modified by the warden, even if they are clean; this defines an active warden technique. The transmission can be attacked by either the purpose of destroying the message (an active attack) or by creating a false message (a malicious attack) [38]. Alternatively, in a passive warden method, the message could just be examined, and the warden would try to determine whether it contains a secret message. In this aspect, steganalysis provides techniques required to detect hidden informa- tion. A passive warden does not interfere with the communication but can test it for observable anomalies In Figures 2.7 and 2.8 the passive and the active warden are shown, respectively.

2.2.1 Steganalysis Categorization There are three general types of steganalysis to verify if a media file contains covered information: visual or aural, structural or by signatures, and statis- tical [21], [39].

• Visual or Aural: The content inspection is conducted by a human, look- ing for any anomaly. In images to expedite the task, different bit planes are displayed separately. This is quite useful, especially for spatial- domain steganographic methods where the covert message is hidden in some specific bit planes, like Least Significant Bit (LSB). Figure 2.9 delineates: 1) the original greyscale image, 2) the cover image’s least significant bit plane, and 3) the stego image’s least significant bit plane. For instance, when an image has been manipulated, the graph of the LSB plane 3) has a notable distortion compared with the clean one. 16 Chapter 2. Background

FIGURE 2.7: The Passive Warden Scheme. Hidden message can be detected while stego in transmitted and there is also a possi- bility of retrieving the information.

FIGURE 2.8: The Active Warden Scheme. The message not only is detected, but also being distort while is resent to the initial receiver. 2.2. Steganalysis 17

However, as techniques become more advanced and the images more complex, it is not always possible to observe anomalies at plain sight.

• Structural or by Signature: During the inserting process, some stegano- graphic methods alter the properties of the media file. This modifica- tion may introduce some characteristic repetitive patterns, acting as a signature.

• Statistical: Applying steganographic algorithms in images may lead to an alteration to their initial statistics. With statistical analysis it is possible to determine if an image has been modified. This is the most common type of steganalysis, due to its capacity and sensitivity.

FIGURE 2.9: Visual based steganalysis. During a comparison among different bit planes, notable distortions can be found.

Depending on prior information about Steganographic procedure, there could be two approaches for conducting steganalysis: the specific and the blind or universal, see Figure 2.10. In specific approach, the knowledge about the steganographic method used for insertion becomes necessary. The ste- ganalyst should know the functioning and the properties of the algorithm used. However, many times they cannot successfully detach the embedded message. Usually, specific techniques look up for particular distortions. In contrast, blind approach is capable in recognizing a stego medium and de- tecting the hidden information without any a priori knowledge of the con- tent or the embedding method [38]. This feature is especially useful when the media under analysis came from an unknown source. In practice, uni- versal techniques provide a better tool for detection, but they are not reliable for every steganographic method, especially new ones [40]. 18 Chapter 2. Background

FIGURE 2.10: Steganalysis categorization. In specific steganal- ysis methods are implemented for selective steganographic al- gorithms. In blind steganalysis methods are implemented ac- cording to the domain the features can be extracted.

Another issue to consider for selecting a steganalysis method is the media type. Thus, analyzing images requires different tools to those used in text analysis or audio files.

2.2.2 Steganalytic Process Nowadays, the majority of steganalytic methods use a common process in detecting hidden information, see Figure 2.11. First, a feature extraction prac- tice is performed in order to have all the essential information to determine whether an image contains hidden information, but with manageable dimen- sionality. Second, the outputting features vector is used as input for a classi- fication model, which should be capable to predict the image class (stego or cover).

Feature Extraction Feature extraction from a steganographic model - where stego images can typified as cover plus an additive noise, see Figure 2.12 - may be unconven- tional. Features for steganalysis are, most of the times, strange because the follow the same method: ‘dont generalize over noise, but generalize over image content’ [41]. The feature extraction process could be in the spatial or the transform domain. Spatial features ordinarily focus on pixel relation. Many authors support the concept of natural images having definite relations within pixel neigh- borhoods and this relation is disrupted by an embedding process. Stego 2.2. Steganalysis 19

FIGURE 2.11: Steganalitic process. After steganographic method is used the stego image steganalyzed during a two-step procedure. First the image features are extracted. Then, these features are processed to classify images as cover or stego. noise can mostly be assumed to be independent of image content. There- fore, spatial-domain features use models of pixel neighborhoods that have either been based on textures, transitions, differences, changes or interpo- lation, among others. Notwithstanding, calculating these models may be a tricky task due to dimensionality. One way to deal with it is by diminish- ing the amount of data consists in selecting pixels according to a previous inserting-behavior analysis. The selection is ruled by a threshold that is spec- ified by the feature extraction technique and depends on tests results of di- verse steganographic methods. Another way to reduce dimensionality is by using some representative data such as histograms or statistical measures. The model simplicity is the reason why spatial features are popular for blind steganalysis [42], [43], [44], [45].

FIGURE 2.12: Simple Model of steganography. Stego image is the outcome of a cover image with additive noise. 20 Chapter 2. Background

On the other hand, transform-domain features alter spatial information into wavelets and DCT, among others. To convert an image into a transform- domain form, first, it is needed to be divided in blocks. Each block is com- puted by using a wavelet or DCT. Due to that the resulting coefficients should have the same dimensionality as the original image. A final step is required to obtain a feature set, as some authors propose: using statistical moments as feature sets [46], transition probability between coefficients [47], among other techniques. Recently, to improve detection rate, various authors fuse both spatial and transform domain features, in order to take advantage of both types and this study, also, does the same.

Classification Following the feature extraction, a classification procedure becomes neces- sary for determining the image class (cover or stego). Nonetheless, classifica- tion task is often left aside by steganalysis authors, as they mainly focus their research on the feature extraction process. Therefore, plenty of steganalysis methods use Support Vector Machine (SVM) or Neural Networks as classi- fiers [42], [44], [45], [46], [48], [49]. Recently, certain authors have started to develop the classification process using ensemble of classifiers [50], [51] or fusion of steganalysis systems [52], [53]. Machine Learning techniques used for steganography and steganalysis will be described in the next section and detailed as state-of-art in Chapter 3.

2.3 Machine Learning

Classifying an image as stego or cover, is typically the output of a statistical learning method and a particular image dataset. To accomplish this catego- rization, classification algorithms from machine learning (SVM, linear classi- fiers, etc.) and pattern recognition have to be applied. However, this task can be quite challenging due to the fact that a huge amount of steganographic methods has been developed without affecting the quality of the object. There are four prime machine learning techniques in image steganogra- phy and all of them are able to measure the principles of steganography- robustness, imperceptibility and payload capacity. The artificial neural network (ANNs), which are inspired from neuro- science, have been studied in the hope of achieving the same method as a human brain uses to solve perceptual problems. Since the ANNs have the ability to estimate complicated functions from observations, it is forthright to examine the ANNs for steganography purposes. They are divided into two categories: The Feed-Forward NNs which have only one direction (forward) and the Recurrent NNs, wherein the connections among the units form a cy- cle. The ANNs focus on steganographic robustness and the imperceptibility of the steganographic-free image. Moreover, the support vector machines (SVMs), which are supervised learning methods for classification and regression, can differentiate the cover 2.3. Machine Learning 21 images from stego images through "best" or "worst" generalizations of data. It is used to increase the imperceptibility of the stego image. Furthermore, the Fuzzy Logic (FL) resembles the human’s decision mak- ing with the ability to generates proper solutions from the given information. For instance, it uses the degree of membership function to determine whether a given point is “black” or “colored". Also, FL preserves the imperceptibility. The Genetic Algorithms (GAs) is inspired by the biological evolution pro- cess and it is well suited for probabilistic problems where little is known about the underlying search space. It increases the payload capacity as well as to find the best bit positions for embedding. On the other hand, a vast number of image-steganalysis methods are im- plemented using machine learning. A dataset of cover objects, that could reveal steganography, is selected. Afterwards, a classifier is trained to differ- entiate between cover and stego images. Machine learning-based steganaly- sis techniques are powerful than the simple models. Furthermore, they can be extended to multi-class detection [54] and payload estimation [55]. SVMs, ANNs and FL can be used for steganalysis, among others due to their ability to detect adaptive steganographic methods [56]. A simple machine learning technique is the Naive Bayes (NB) classifier based on applying probabilistic Bayes’ theorem with strong independence assumptions. It can be characterized as an independent feature model [57] and it can be used for steganalysis purposes. There are also algorithms that are not necessarily correlated to steganaly- sis, such as IBK. The IBK algorithm classifies the data according to K-nearest neighbors and it can achieve distance weighting.

23

Chapter 3

Related Work

In this chapter a review of some of the most used steganographic and stegan- alytic methods for images is provided.

3.1 Steganographic Algorithms

Steganography and stegosystem design have evolved over the years to keep the information exchange unnoticeable. Nonetheless, selecting a method de- pends on the requirements of the end user like demands for capacity, com- plexity and security. Therefore, all the requirements cannot be fulfilled by a singular steganographic method. Most commonly, the algorithms used for steganography rely on the replacement of some noise component of a digital image with a pseudorandom secret message and they are usually classified according to the domain in which the data has been inserted. In the spa- tial domain, the hidden message is embedded directly and the most popular method is the LSB, but it is well-know for its weakness against visual and statistical attacks and leads to the necessity of developing other steganalytic methods. Below, a more elaborate explanation of the most representative steganographic methods is detailed.

3.1.1 The Least Significant Bit Family Least Significant Bit (LSB) technique is most widely used because of its sim- plicity. As was described in Chapter 2, LSB takes advantage of the human’s vision inability to perceive small permutations on a pixel level. The embed- ding process takes place in the spatial domain where the least significant bit of selected pixels is replaced by message bits and the image obtained are susceptible to noise and transmission errors. The substitution can be either successive or pseudo-random. In the successive substitution, each pixel of the cover image follows the same modification order as the embedded bits. Alternatively, in pseudo-random substitution a key is used as a source for a pseudo-random number generator in which each number that specifies a pixel is modified. Regardless of security maintenance, the information hid- den by use of the LSB method could be easily destroyed, by almost any image modification [21]. LSB technique is carried out on noise and it is likely to be altered by any further compression, filtering, etc. 24 Chapter 3. Related Work

LSB+ LSB+ is a method designed to stand the histogram attack that intentionally embeds some extra bits to make the histogram look natural [58].

LSB++ The LSB++ is an improved method of the LSB+ by decreasing the amount of changes made to the perceptual and statistical attributes of the cover image [59].

LSB Matching In the LSB Matching method the pixel values are modified by adding one or subtracting one if the private bit does not match the LSB of the cover image’s pixels. The probability of increasing or decreasing a pixel value is the same and the imbalance artifacts introduced in LSB are avoided [60].

LSB Matching Revisited This is a method where the data embedding is performed on one pair of pixels at a time and that can eliminate asymmetry property caused by LSB [61].

Steghide Another well-known LSB implementation for images is Steghide. It slightly modifies the original algorithm by using graph theory to reduce the amount of pixel modifications. Before embedding the message, it is encrypted and compressed to increase security. After that, a pseudorandom numeric se- quence is produced by a password-based key derivation function. This se- quence belongs to the cover pixels, whose LSB will contain a bit of the mes- sage. To improve imperceptibility, the LSB that differs from the bit to embed is considered for exchanging for other LSB that matches with it. This is ruled by a graph where each vertex represents a change and each edge is a pos- sible exchange. Finally after the exchange, the remaining message bits are embedded replacing the corresponding LSB [62], [63].

S-UNIWARD UNIWARD is a universal distortion function which is defined as the sum of relative absolute differences between wavelet coefficients representing both cover and stego images. UNIWARD uses only the highest frequency band of wavelet coefficients. The version that hides messages in pixel values is the spatial version of the method and it is called S-UNIWARD [64]. U-UNIWARD performs some strange properties; the embedding probabilities form inter- leaved streaks of low and high embedding probability when in highly tex- tured and noisy regions. There have been allegations that the embedding 3.1. Steganographic Algorithms 25 probabilities might jeopardize the security. However, there is a study that proves the robustness of the method [65].

Jphide and Jpseek Another classical JPEG steganographic implementation based on LSB is JPHide (for embedding) and JPSeek (for extraction), developed by Allan Latham [66]. Instead of modifying LSB pixels, JPHide uses the LSB overwriting of non-zero quantized DCT coefficients, used by the JPEG algorithm, to em- bed a secret message. These DCT coefficients are selected at random by a pseudo-random number generator, which may be controlled by a password as seed and is used as sequence for insertion. It uses the Blowfish algorithm for LSB randomization and encryption to determine where to store the bits of the secret file. It could also be mentioned that JPHide, apart the LSBs of the selected coefficients, permits the inserting in the second least significant bit as modifies the bits of the second least significant bit-plane when switches to that mode [67].

3.1.2 F5 F5 is an algorithm based on subtraction and matrix encoding [68]. It embeds bits only into non-zero DCT coefficients by decreasing the absolute value of them by 1. The main goal is the efficiency to be optimized; it uses matrix en- coding to embed data that has been previously permuted, so that for a given message the number of changes made to the cover image is minimized. Thus, matrix encoding improves the embedding efficiency due to this reduction of the number of changes when embedding. Another F5 feature is the permutative straddling, see Figure 3.2: F5 scat- ters the entire message throughout the carrier and uses permutation to equal- ize the spread of embedded data, instead of just embedding into the next available non-zero coefficient. In this case, each pixel is treated as if it was a jpeg coefficient. Also, it maps negative coefficients to the invented stegano- graphic value and it groups them according to their value. Even negative coefficients and odd positive ones represent a steganographic 1. Even posi- tive coefficients and negative ones represent a steganographic 0. The F5 Implementation Steps are illustrated in Figure 3.1 and the pseudo- algorithm [69] is given below: 26 Chapter 3. Related Work

Input: message, shared secret, cover image Output: stego image initialize PRNG with shared secret permutate DCT coefficients with PRNG determine k from image capacity calculate code word length n ← 2k − 1 while data left to embed do get next k-bit message block repeat G ← {n non-zero AC coefficients} s ← k-bit hash of LSB block s ← s ⊕ k-bit messageffl block if s 6= 0 then decrease absolute values of DCT coefficient Gs and insert Gs into the stego image end if until s = 0 or Gs 6= 0 insert the DCT coefficients from G into the stego image end while Algorithm 2: F5

FIGURE 3.1: F5 Implementation Steps. Between JPEG’s quan- tization process and Huffman coding, F5 algorithm embeds in- formation in equalized (permuted) DCT coefficients. 3.1. Steganographic Algorithms 27

3.1.3 Outguess Outguess is a universal steganographic tool which supports the insertion of hidden data into the redundant bits of data that will be extracted by specific handlers and be written back after modification. The Outguess method first embeds the secret data in LSB of the DCT coefficients while making a random walk and leaves some coefficients unchanged. The pixel randomization is succeeded by using a Pseudo Random Number Generator. As a result, it modifies only the selected ones and adjusts the remaining coefficients to keep the original histogram of DCT coefficients intact. This technique preserves the statistics and is immune to attacks such as visual or histogram one [68]. Maintaining statistics based on frequency counts is also successful due to system’s determination of the maximum message size that can be embed- ded, before the embedding procedure. Outguess always tries to find a bit sequence such that the number of changes in the data is minimized. Furthermore, when embedding messages in an unadulterated medium, DCT coefficients’ noise is introduced and, and, thus, the spatial discontinu- ities along the 8 × 8 JPEG image blocks are increased. [N.B. 4 changes]. These discontinuities could be decreased when the message is embedded into a stego image as there is partial cancellation of the changes which are made to the redundant bit of the DCT coefficients. Therefore, the hidden message size is estimated by these increases and decreases in the discontinuities. The Outguess Implementation Steps are illustrated in Figure 3.1 and the pseudo-algorithm [69] is given below:

Input: message, shared secret, cover image Output: stego image initialize PRNG with shared secret while data left to embed do get pseudo-random DCT coefficient from cover image if DCT 6= 0 and DCT 6= 1 then get next LSB from message replace DCT LSB with message LSB end if insert DCT into stego image end while Algorithm 3: Outguess

3.1.4 Other Steganographic Methods Below, there is a summary of the other representative steganographic meth- ods.

Edge Adaptive LSBMR is a scheme that uses the same concept of pixel pairs likewise LSBMR; however, the embedding process is implemented by 28 Chapter 3. Related Work regions. The region selection can be according to the size of the hidden mes- sage as well as the difference between two adjacent pixels in the cover image. The data embedding stage involves in initialization of some scheme parame- ters in order to estimate the capacity of the selected regions. On the first step, the image is randomly divided in size blocks. Then, a random rotation is employed to the block, in a way that improves security. By the time image is divided, the pixel pairs in the threshold are scrutinized as embedding units. The final step involves a binary function for bit inserting [70] which is applied to the spatial domain and the difference between two consecutive pixels will keep being the basic criterion for LSBMR as the data hiding algorithm.

Pixel Value Differencing (PVD) is a scheme [71] in which the number of insertion bits is determined by the difference between a pixel and its neigh- bor. Thus, it relies upon whether the pixel is an ‘edge’ or a ‘smooth’ area [72]. HVS is more sensitive to subtle modifications in the smooth areas as compared to the edges. This is principally because the differences among pixels in the smooth areas are cause less visual distortion than among the edge pixels. The visual distortion caused by PVD is minimum and as a result it is unsusceptible to attacks, like histogram one. It is, though, susceptible to histogram analysis of the pixel pairs’ differences [73].

Selected LSB embeds into single color components of the pixels by choos- ing the color plane and its modifiable bits in such a way that the minimum distortion will be produced. That means SLSB does not embed only in the LSB of the plane. Furthermore, it applies a sample pair analysis filter before inserting to advantageously ensure that only the optimum pixels are selected. Unfortunately, it can embed at a rate of more than 1 bpp and this might lead to alteration of the degree of pixels’ randomness and thereby it is susceptible to statistical attacks when it is used for high inserting degree [74].

JSteg applies DCT to the image blocks and consecutively embeds informa- tion into a cover image by successively replacing the LSBs of non-zero quan- tized DCT coefficients with secret message bits. This sequential embedding combined with the absence of any secret key leads to eavesdropping since only knowledge of the embedding procedure is enoigh to decode any secret message. In addition, as the algorithm uses the DCT, it is essential to prevent the algorithm from creating statistical signatures [75]. The JSteg pseudo-algorithm [69] is given below: 3.1. Steganographic Algorithms 29

Input: message, cover image Output: stego image while data left to embed do get next DCT coefficient from cover image if DCT 6= 0 and DCT 6= 1 then get next LSB from message replace DCT LSB with message LSB end if insert DCT into stego image end while Algorithm 4: JSteg

Spread Spectrum (SSIS) is a steganographic system which adopts digital imagery as a cover signal. Traditionally, Spread Spectrum used for securing military communications in order to reduce signal interruptions. In stenog- raphy, it provides the ability of hiding a considerable amount of information bits within digital images whilst avoids detection by an observer. Before em- bedding stage, the message is modulated as an independent and identically distributed Gaussian sequence with µ = 0 and σ2 = 1 [76]. Also, the use of error control coding recovers a message with lowest error probability. The existence of the hidden information is virtually undetectable by human or computer analysis [77] as SSIS provides resiliency to transmission noise, like the one reached in a wireless environments and low levels of compression [78].

Hybrid Fuzzy-SVM is a hybrid approach that combines the SVM with fuzzy c-means [79] clustering and is used to exploit the interdependent strengths of supervised learning and probabilistic approach in order to attain the main aims of steganographic system which are the imperceptibility and payload capacity [80].

Sudoku-based Steganography uses Sudoku logic to guide the cover pixels to modify pixel values so that secret messages can be successfully embedded [81], [82], [83].

Social Media Steganography can be divided into methods which have been implemented for social media platforms and combine image and text (hash- tag) steganography [84] and the methods that use the social media as a futile ground in order to conduct steganography [85]. 30 Chapter 3. Related Work

3.2 Steganalytic Algorithms

As has been mentioned in Chapter 2, despite the fact that the standard ste- ganalytic process consists of feature extraction and classification, most of the steganalytic methods concentrate on one operation; the feature extraction.

3.2.1 Subtractive Pixel Adjacency Model Subtractive Pixel Adjacency Model (Spam) is a feature extraction method for images that use second order Markov-based features [45] It operates in the spatial domain, where originally, the differences between the pixels are calcu- lated in eight directions (2 verticals, 2 horizontals, 4 diagonals). Afterwards, dimensionality and processing time are reduced by a threshold [−T, T] ap- plied to every difference result. Therefore, transition probability matrices are calculated for every direction between either first-order difference result pairs or second-order difference result triplets. The first and the second or- der have been chosen for their steganalytic relevance. On the last step, the average of the four horizontal and vertical matrices is calculated and this rep- resents the first half of the features. The second half is the average of the four diagonal matrices.

3.2.2 CC-PEV CC-PEV feature extractor follows the standard of PEV features [86] which are enhanced by Cartesian calibration [87]. Calibration can be used to esti- mate cover image statistics from the stego image as in F5 [88] and Outguess [89] algorithms. The whole method can extract 274 features as the difference between a specific (non-calibrated) and calibrated pixels obtained from the image.

3.2.3 Cross Domain Features Cross Domain Features (CDF) is a union of CC-PEV and SPAM features [90].

3.2.4 Local Binary Pattern Some steganographic methods prefer to embed in noise-like areas of the im- age, such as textures and edges in order to stay undetectable. Considering this premise, Local Binary Pattern (LBP) method is based on texture mod- eling. LBP was proposed for measuring the texture of an image [91], [92] The main idea behind the method is the division of the examined image into cells and then each and every pixel in a cell has to be compared to each of its 8 neighbors. In the feature extractor for steganalysis based on LBP, [44] the LBP values are represented as an histogram with deviation, mean and variance of the histogram as features in use. 3.2. Steganalytic Algorithms 31

3.2.5 Content-Selective Residuals Content-selective residual (CSR) method is based on estimating the embed- ding change probabilities from the stego image. [65] First, the image is seper- ated into disjoint pixels’ classes. The first class contains those pixels which are likely to be changed and the second one consists of those that are less likely to be changed during the embedding procedure. Then, the noise resid- uals from each class are computed and these are reffered as CSRs. Finally,first and second-order statistics of CSRs form the feature vector.

3.2.6 Other Feature Extractors Inter-block and Intra-block Markov-based features In natural images the coefficients of a DCT correlate both intrablock and interblock, see Feature 3.2. Beneficial to detect inconsistencies in these correlations,a feature extrac- tor for steganalysis is proposed [48]. It is based on a Markov-based process that considers all the relations between neighbors and between frequency characteristics. For calculating the intrablock correlations, the DCT coeffi- cients of a block are used in creating four difference matrices: one horizontal, one vertical, and two diagonals. Afterwards, a transition probability matrix is calculated for each matrix. The interblock correlations are determined be- tween coefficients in the same position among the blocks.

FIGURE 3.2: Interblock and Intrablock correlation. DCT co- efficients can be correlated with either their neighbors (intra- block) or coefficients with the same position among the blocks (interblock). 32 Chapter 3. Related Work

Spatial domain Rich Model (SRM) is a method in which pixel submod- els with different dependency are used as features [43]. The adoption of di- verse types of submodels creates a possibility to receive different embedding artifacts;[93] still, the dimensionality increases considerably. For classifica- tion, an ensemble of classifiers is used [43].

Higher Order Statistics is a feature extractor that displays the statistical distortions after the orientation and scale decomposition of the image [94], [95]. It consists of two subsections. In the first one, is the feature extraction, where the image is disintegrated by using Quadrature Mirror Filters (QMF). The filters, which are formed by lowpass and highpass, cover along vertical, horizontal, and diagonal directions. The features are estimated in different scales, obtained by lowpass filter, in order to increase the detection rate.In this step measure like mean, variance,and kurtosis are calculated. Second part is the vertically, horizontally and diagonally application of a linear error predictor in each scale, while take into consideration the neighbors values. In other words is the classification part wher a classification algorithm is used to distinguish the original image from the stego-image while assisting of the feature vectors. The mean, variance, and kurtosis are also calculated to re- ceive the resulting model.

DCT or Wavelets When in transform domain, the spatial data can be changed by wavelets or DCTs. For instance, in the [46] the use of first, second and third order Haar wavelet is capable of determining each transform and dividing it into four subgroups. Each subgroup has three statistic values which are estimated and used as neural network features. Another example is the use of DCT residuals in order to extract Low complexity (FAST) features [96].

3.3 Machine Learning in Steganalysis

Most of traditional steganography detection schemes rely on Optimal detec- tors [97]. In other words, find an optimal statistical test with respect to a given criterion based on a statistical model of cover objects [98]. The modern steganalysis trend, though, is machine learning with SVMs and ANNs to be predominant. Siwei and Hany [99] use SVM as a classifier for both spatial and transform domain steganography. Also, Tomas [45] developed a steganalytic method that uses the Gaussian-kernel SVM as classifier in spatial domain, empha- sized on detection of suspicious pixel. Recently, Menori and Munir [100], used linear, polynomial and gaussian SVMs’ kernels with 73% accuracy in detecting the stego image and 33.6% in estimating the length of the hid- den message. More recently [101], the detection error rate of S-UNIWARD reaches almost 42% with Spatial domain Rich Model as a feature extractor and SVM as a classifier. Tremendous research has been done in ANNs-based steganalysis as well. Using the BOSSBase dataset and focing on spatial domain, Qian et al [102], 3.3. Machine Learning in Steganalysis 33

Pibre et al [103] and Xu et al [104],[105] proposed steganalyzers based on CNNs (Convolutional Neural Networks) while Tan and Li explored a spe- cific form of deep learning frameworks in image steganalysis [106]. The methodology of CNN-based steganalysis is to build an end-to-end feature extractor/classifier with a well-designed neural network. For instance, the steganalysis by using Combined Convolutional Neural Networks gave 45% [107] testing error and 42.93% [108] detection error in implementing the S- UNIWARD, while in [109] the accuracy of J-UNIWARD (UNIWARD algo- rithm implemented in transform domain) gave 72.9% by using Convolu- tional DCTR kernels. Neural Networks have proven to be a useful tool in image steganaly- sis. As Liu et al. [110] recently proven, S-UNIWARD steganalysis can reach 81.55% of detection accuracy by using multi-channel neural networks It is matter of fact that the FL and GAs methods are still embryonic com- pared to SVMs or ANNs. However, there is some recent progress [111], [112], [113] in the image processing and steganography. 34 Chapter 3. Related Work

3.4 Chapter Summary

Since steganography gain ground day after day, the development of stegano- graphic methods is increasing and leading to a vast variety of them. There have, also, been attempts to automatize the steganographic implementation and procedure [114]. In this chapter, a general outlook of steganography has been provided. On the contrary, the steganalitic review shows that developing new and better methods is not an easy research task. Despite the great variety of ste- ganalytic methods in order to detect any presence of secret information, there are still many steps to be made on the message retrieval. Moreover, modern steganalysis takes into account the significance of machine learning for the classification step. 35

Chapter 4

Proposed Method

In this Chapter the implementation steps of the proposed methodology are detailed.

4.1 Proposed Method

The contribution to the related work in this thesis consists of the develop- ment of a blind steganalytic method for images which was planned in both spatial and transform domain.

FIGURE 4.1: General Steps. Data is sliced in training and test- ing subsets. Feature extraction and labeling takes place for both subsets. Training data create a model which is tested by testing data in order to make predictions about the initial dataset. Fi- nally, the prediction is evaluated.

In order to accomplish the research objectives, the study was based on multiple feature extractors and a meta-classifier. The initial idea was taken 36 Chapter 4. Proposed Method from recent studies [42], [52] where the combination of feature sets is an effi- cient way in detecting increasing rate. This feature consolidation leads to detecting more steganographic data and, at the same time, more accurately reject data that are falsely consid- ered as steganographic features. In transform-domain, for instance, the im- age acquisition pipeline can introduce noise or correlation patterns. A study classifying sources as cover/stego with different cameras, found a pattern in which sources were often misclassified as stegos [115]. This implies signif- icant dependence of undoubted features used for steganalysis based on the source. That is the reason why blind steganalysis was chosen; it is likely to detect messages spread across multiple images, conducted by multiple algorithms in multiple embedding rates. In Figure 4.1, the general procedure that is used for building the proposed model is illustrated. Data is split to training and testing objects and have been labeled according to their type (cover/stego). Several feature sets have been extracted from the training objects and used for building a supervised ma- chine learning model. Simultaneously, the features which are derived from the testing objects are combined with the model and the classification part may start. The proposed method, see Figure 4.2, consists of three stages: Feature Extraction, First Level Classification and Second Level Classification.

FIGURE 4.2: Method Stages. During the first stage, features are extracted from the images. In the second stage, two classifiers are applied and the output of the first-level classifications is the input of the second-level, where an other classifier concludes in categorization. 4.2. Experimental Setup 37

In the first stage, four feature sets are obtained from the datasets. The four selected feature extractors are LBP [44], SPAM [45], CSR [64] and CDF [9]. During the second stage, two well-established classifier algorithms are applied: Logistic Regression [116] and FURIA [117]. Afterwards, the prediction output from these classifiers will be the input for the final stage: a Random Forest classifier [118]. Section 4.4 contains details of the classification process.

4.2 Experimental Setup

4.2.1 Datasets The main obstacle for successfully running new steganalytic methods is the lack of a scientifically approved image dataset. Another problem is the image selection itself in order to ensure that there is a complete absence of stego data. Under these circumstances, some authors conducted steganalysis have published their datasets. [119] Frequently datasets come from contests BOWS (2007) [120], BOWS2 (2008) [121] and BOSS (2011) [122]. In the current paper, the first image format has been used, is an altered form of BOSS dataset as it was provided by [119]. This dataset contains grayscale PGM camera files and it is suitable for spatial-domain applications. This dataset was used due to the easiness of PGM format as it is the lowest accepted denominator grayscale file format and was designed to be effortless to learn and write programs for. There are N = 40000 images in total with picture dimensions 525x525 pixels. The second dataset has been selected by the Dresden image Database which is specifically built for the purpose of development and benchmarking of camera-based digital forensic techniques [123]. It is important to mention that the Dresden Database gives the opportunity of labeling the images ac- cording to their camera source. This dataset is used due to its ubiquitous RGB JPEG format. There are N = 16961 images in total with various dimensions. The third dataset [124] contains BMP images and was initially developed to enable long-term scientific research regarding the factors affecting BMP performance. This dataset is used because it is low color format without any compression. There are N = 2000 images in total with various dimensions. In Figure 4.3 some image content of the Dresden database is shown. At the same time, the Figure 4.4 portrays the BMP database, while Figure 4.5 depicts the BOSS database. It is important to be mentioned that all data is copy-write free and publicly available at no cost authentication of the origin/pedigree of each image collection. For practical purposes, each image in every dataset is labeled from 1 to N. Then, each image was embedded with (a) 124762 bits, (b) 12476 bits, (c) 3276 bits, (d) 1248 bits, (e) 819 bits, and (f) 250 bits. Depenting on the image size the embedding rates are eventually formed in (a) 0.1 bpp, (b) 0.01 bpp, (c) 0.001 bpp, and (d) 0.0002 bpp. 38 Chapter 4. Proposed Method

FIGURE 4.3: Dresden Database. Selection out of total 16961 RGB JPEG images in various sizes.

FIGURE 4.4: Bmp Database. Selection out of total 2000 RGB Bitmap images in various sizes. 4.2. Experimental Setup 39

FIGURE 4.5: BOSS Database. Selection out of total 40000 gray- scale PGM images with 525x525 size.

The steganographic methods used for embedding are: (a) F5, (b) Steghide, (c) Outguess, (d) S-UNIWARD, and (e) 5 method from the LSB Family: (i) LSB, (ii) LSB+, (iii) LSB++, (iv) LSBMatching, and (v) LSBMRevisited (Figure 4.5) The following section contains details of the embedding software used.

4.2.2 Embedding Software Before selecting the steganographic algorithms to be used, see Figure 4.6, it is important to consider the aspect of algorithm reputation either in spatial or transform domain. Also, the selection ought to be based upon embedding software availability. Taking these aspects into account, the selected methods are:

• F5 [125], source code taken from github

• Steghide [126] source code taken from author’s website

• Outguess [127] direct command in Ubuntu Linux

• S-UNIWARD [65], [128] source code was a subfile on CSR feature ex- traction folder

• LSB Family [59], [129], [130], source code taken from github 40 Chapter 4. Proposed Method

FIGURE 4.6: Steganographic Methods Used. F5, Steghide and Outguess are chosen for the JPEG dataset, while LSB Family and U-NIWARD are selected for the BMP and PGM datasets, respectively.

Table 4.1 shows a few summarizing comments about the selected stegano- graphic methods. In the experiments, a key is used to initialize a pseudo- random number generator, for random distribution. All algorithms maintain 100% image quality in JPEG format, for every embedding rate and there is additional compressing of 75% quality for the F5, Steghide and Outguess methods, when these methods embed at 0.001bpp and 0.0002bpp rate. Furthermore, the insertion was made without password because either the embedding software did not support it or it was not necessary. The only exception to this is Steghide. Finally, in order to standardize the insertion process, batch files were created for every method. The .bat files were also helpful in the feature extraction step, which will be described in the next section.

4.3 Feature Extraction

After the embedding process, 40 sub-datasets have been formed each of them representing one steganographic algorithm and one embedding rate. These databases have been the canvas in which the steganalysis took place. The first steganalytic stage is the Feature Extraction. Four feature extrac- tors have been chosen: (a) Subtractive Pixel Adjacency Model (SPAM) [45], 4.3. Feature Extraction 41

Method Domain Description F5 Transform Using matrix encoding, the message bits are inserted in the selected coefficients. LSB Family Spatial Hides information into the Least Signifi- cant Bit of bit-planes of an image. Steghide Transform Uses a graph to exchange matching pixel LSB and message bits, to reduce changes. Outguess Transform Relies on data specific handlers that will ex- tract redundant bits and write them back after modification

S-UNIWARD Spatial Utilizes a universal distortion function be- tween the cover and stego image which is computed as a sum of relative changes of wavelet coefficients representing both im- ages.

TABLE 4.1: Selected Steganographic Methods. A description of the techniques that are used in the experiment and their domain of practice.

(b) Local Binary Pattern (LBP) [44], (c) Cross Domain Features (CDF) [90], and (d) Content-Selective Residuals (CSR) [65]. The extractor selection was finalized based upon many aspects. First, fea- tures should be extracted in both domains; therefore, stego images might not be recognized in the spatial domain, but they might be discovered in the transform domain and vice versa. Secondly, it is crucial for dimensionality to be manageable. For instance, the SRM [94] extracts 34, 761 features in to- tal, which is quite big number considering the time complexity, and thus an experiment with such amount of images is impractical. Thirdly, code avail- ability is vital, as some algorithms are impossible to be reproduced due to lack or even omission of vital information for the author’s side. Finally, due to the experimental environment (VM server without Internet access), it was considered futile trying to use methods such as Inter-block and Intra-block correlations, which even though it could be potentially a successfully extrac- tion method, but then it would require additional package/library installa- tions. Primarily, Feature Extraction took place in a Matlab R2018a environment while a few procedures had to be compiled in Ubuntu terminal. The Matlab code for all the extractors is available [128]. After the extraction, all the fea- tures were exported to CSV files and uploaded to Weka. The general Matlab script that was used in this step, is found in the Appendix section. 42 Chapter 4. Proposed Method

4.4 Classification

Plenty of the steganalysis methods in the previous related work, aim their at- tention at improving the feature extraction process, leaving aside the second -also important part; the classification stage. Hence, classifiers like SVMs or Neural Networks are widely utilized. Notwithstanding, the best detection rate may not be provided. In the current study, the classifier selection was made with regards to training time and accuracy of the classifier, and to the vast amount of pro- cessing data. These three factors are interdependent and a feasible experi- ment should consider them all. Common-used classifiers, such as Multilayer Perception, are trustworthy, but the training time they require is unsuitable for the current thesis. Therefore, after some attempts, Logistic Regression, FURIA and Random Forest classifiers appeared to satisfactorily correspond to the aforementioned required conditions.

4.4.1 Classifiers Logistic regression is a probabilistic discriminative model in which the con- ditional distribution between two variables P(y|X) where X is the feature set and y is the class of the object. In binary problems, y could be 0 or 1; for the current use, the random variable yi is either 1 = stego or 0 = cover and it can be predicted by using the logistic function with Xi as the features of every image i. β values are obtained based on training data, commonly by maxi- mum likelihood to predict the class of an object [131]. A logistic function is given by: 1 P = (4.1) 1 + e−β0+β1X Fuzzy Unordered Rule Induction Algorithm (FURIA) is a y–rule–based classifier which learns and applies fuzzy rules. It is an improvement of the RIPPER algorithm [132] and learns fuzzy rules instead of conventional rules and unordered rule sets instead of rule lists. Additionally, it applies the prun- ing technique when it comes to creating the replacement and the revision rule. Random forest is an ensemble classifier and it is composed by various de- cision trees. During the training of a random forest, different random subsets are taken from the resulting set. Later, a decision tree is built for each subset. During the testing, each instance is evaluated by all the new-made decision trees. The result could be an average or a voting of results from individual decision trees [118]. Hello, here is some text without a meaning. This text should show what a printed text will look like at this place. If you read this text, you will get no information. Really? Is there no information? Is there a difference between this text and some nonsense like “Huardest gefburn”? Kjift – not at all! A blind text like this gives you information about the selected font, how the letters are written and an impression of the look. This text should contain all 4.4. Classification 43

FIGURE 4.7: First-level Classification. Data is loaded on a Clas- sAssigner where the class is going to be classified, is selected. The next step contains two setMakers; one for training and one for testing data. After the data division, two classifiers: Logistic Regression and FURIA are performed and eventually they are evaluated. During the classification period the predictions are being saved in a CSV file which will be used in the next level. letters of the alphabet and it should be written in of the original language. There is no need for special content, but the length of words should match the language.

FIGURE 4.8: Second-level Classification. Predictions outputted from the first-level of classification, are put into a Random For- est classifier, after the class assigning and cross validation steps. In cross validation, 10 folds are used. Finally, the evaluation of Random Forest classifier gives the final result.

In the current method, these classifiers are combined together in order to build a robust two-level classifier, see Figure 4.7. The default configuration of the implementations is used, as it has been provided by Weka 3.8.2. There, 44 Chapter 4. Proposed Method the feature sets produced by the four selected extractors, are the inputs of Logistic Regression and FURIA classifiers. The implementation of Logistic Regression in Weka is a multinomial logistic regression model with a ridge estimator algorithm [116]. The other two classifiers are implemented without modification on the initial models. After the first classification, the resulting predictions for every instance are stored and integrated with the initial image label in order to build the Random Forest classifier, see Figure 4.8. The experiments on the first-level classification were made by using train- ing and test set makers for each steganographic system and embedding rate separately, while on the second-level cross validation with ten folds has been preferred. During this step, the images of each fold were picked consecu- tively; so that cover version and stego version of the same image would be together.

4.4.2 Evaluation Metrics The main metric evaluation used is the detection rate, also known as accu- racy:

itp + itn (4.2) N where itp = True Positive values, itn = True Negative values and N = Total Number of instances. Additionally, the evaluation step requires the estimation of the Average Detection Error: (3)

i f n + i f p (4.3) 2 as well as the Recall estimation:

itp (4.4) itp + i f n and Precision estimation:

itp (4.5) itp + i f p

where i = 1, 2, . . . , N, itp = True Positive values, itn = True Negative values, i f p = False Positive values, i f n = False Negative values

Finally, the Receiver Operating characteristic Curve (ROC)

rtp F = (4.6) r f p

F = and Precision-Recall Curve (PRC) P G = (4.7) R 4.5. Chapter Summary 45

will be calculated, where r = the values’ rate.

4.5 Chapter Summary

This chapter details the proposed method for image steganalysis, which con- sists of three stages. In the first stage, four methods extract features from both spatial and transform domain. In the second stage, the outputting feature sets from the first stage are used for supervised learning. Independently, each asset is utilized in building two different classification models; one based on Logistic Regression and one based on FURIA. The result of this stage is the predicted class (stego/cover) of an image and is used in the final stage where the outputting classes of the previous classifiers are used as features for Ran- dom Forest classification. As for the desired quality of this study, the proposed method uses four feature extractors; however, the number of the extractors could change cor- responding to the practical demands and requirements of any experiment. This flexibility of the method, adding, deleting or replacing feature extrac- tors is an appealing property as it can be adapted by other steganographic methods while enacting universality.

47

Chapter 5

Results and Discussion

In this Chapter the obtained experimental results are presented and the per- formance of the proposed method is tested. Finally, an analysis and discus- sion of these results are given.

5.1 Results and Analysis

Due to the fact that steganalysis methods of the previous related work were tested by using different image sets and embedding rates, there is a difficulty in one-to-one comparison. Therefore, the results will be compared to each other. First, a comparison between LBP, SPAM, CSR and CDF using the same dataset and classifiers, takes place. Then, the same feature extractors and classifiers evaluate the embedding rates of the steganographic algorithms. Finally, a total evaluation is conducted.

FIGURE 5.1: Plot of Class-Spam Features. Spam features have separated the dataset and two clusters have been created. Stego images are colored blue while cover are red-colored. This plot shows a really distinct categorization between the two classes. 48 Chapter 5. Results and Discussion

FIGURE 5.2: Plot of Class-LBP Features. The results coming from the LBP extractor cannot support a classification by them- selves as for the same LBP feature values (x-axis) there are both cover and stego images.

FIGURE 5.3: Plot of Class-CSR Features. The results coming from the CSR extractor cannot support a classification by them- selves as for the same CSR feature values (x-axis) there are both cover and stego images

For evaluating which feature extractor was the most suitable for classi- fication, the Figure 5.1, 5.2 and 5.3 show the plots of Spam, LBP and CSR respectively. Blue represents stego images while red symbolizes the cover 5.1. Results and Analysis 49 ones. As it appears Spam is more capable for classification. In .pgm datasets, no feature extractor is used but LBP and CSR. The output of datasets might be inaccurate as it is mostly performed by an adversarial steganographer. The CDF method combines the Spam method and the CC-PEV as it was mentioned in Chapter 3. Thus, the extracted features are categorized accord- ing to their type (nominal, numerical, binary). For that reason, Figures 5.4 and 5.5 depict the correlation of total number of image bytes and dimensions to class. Finally, Figure 5.6 correlates bytes and dimensions of JPEG dataset with F5 as steganographic algorithm.

FIGURE 5.4: Plot of Class-Bytes. In CDF feature set, the classes are not as obvious as they are in Spam. However, the tiny dif- ferences in this plot, combined with the 5.5 and 5.6 plots, give the desirable result.

Table 5.1 shows the results of the proposed method describes in chapter 4. The cells contain the detection rate percentage of the experiment results for 0.1 bpp, 0.01 bpp, 0.00 1bpp and 0.0002 bpp in color images (JPEG, BMP). For JPEG images there are two extra results corresponding to 0.001 bpp and 0.0002 bpp with both 75% quality after compression. Figure 5.7 illustrates the best detection rate result. BMP images have been steganographized by five algorithms from the LSB Family; LSB, LSB+, LSB++, LSBM and LSBMR. A relation between them and their embedding rates can be found in Figure 5.8 As it is shown above, there is a high possibility for .pgm datasets to have a low detection rate. Also, the rates in .bmp datasets are integers and compared to the other results that consist of at least two decimals, show disfunctional- lity. The assumed reason is the small number of .bmp objects in the datasets. 50 Chapter 5. Results and Discussion

FIGURE 5.5: Plot of Class-Dimensions. The stego(blue)/cover(red) classes are not as obvious as they are in Spam, but the plotting is definitely more demonstrative than the 5.4 plot. Combined together, increase the detection rate for this extractor.

FIGURE 5.6: Plot of Bytes-Dimensions. The main element shown in this plot is that the majority of cover images (in red) is a recognizable cluster.

The experimental results for different embedding rates show a head start of the 0.1 bpp detection rate. In every case, the 0.000 2bpp inserting rate is the less accurate. Due to the embedding rates from one dataset to another were almost the 5.1. Results and Analysis 51

Method Embedding Rate Quality Detection Rate Root Mean Squared Error F5 0.1 100% 87.48% 0.4372 F5 0.01 100% 87.32% 0.4373 F5 0.001 100% 85.96% 0.4373 F5 0.001 75% 83.65% 0.4397 F5 0.0002 100% 77.21% 0.4431 F5 0.0002 75% 71.03% 0.4484 Steghide 0.1 100% 81.64% 0.4372 Steghide 0.01 100% 67.68% 0.4376 Steghide 0.001 100% 61.89% 0.4424 Steghide 0.001 75% 55.79% 0.4424 Steghide 0.0002 100% 58.41% 0.4424 Steghide 0.0002 75% 55.68% 0.4494 Outguess 0.1 100% 85.97% 0.4373 Outguess 0.01 100% 73.02% 0.4424 Outguess 0.001 100% 66.26% 0.4424 Outguess 0.001 75% 59.11% 0.4764 Outguess 0.0002 100% 55.13% 0.4537 Outguess 0.0002 75% 41.29% 0.4562 S-UNIWARD 0.1 100% 58.94% 0.4424 S-UNIWARD 0.01 100% 53.00% 0.4424 LSB (average) 0.1 100% 81.60% 0.4424 LSB (average) 0.01 100% 80.60% 0.4424 LSB (average) 0.001 100% 78.00% 0.4424 LSB (average) 0.0002 100% 76.00% 0.4424

TABLE 5.1: Method Results.

FIGURE 5.7: Highest Detection Rate. F5 result for 0.1bpp em- bedding rate, as it has been displayed in Weka Explorer. same and to standardize the following experiments, ROC and PRC graphs are used in merged datasets according to the image format, see Figures 5.9, 5.10, 5.11 and 5.12. 52 Chapter 5. Results and Discussion

FIGURE 5.8: Comparison between embedding rates detection of the LSB Family methods. The detection rates on the LSB family are all integers and this is probably due to small num- ber of images on the initial BMP dataset. Also, an other factor could be the lack of plenty feature extractors, likewise the ones in JPEG and PGM datasets.

FIGURE 5.9: ROC curve for BMP images. the Area Under Curce (AUC) of the ROC is close at the upper left corner of the graph, indicating that the number of false positive values is small for this dataset. 5.1. Results and Analysis 53

FIGURE 5.10: ROC curve for PGM images. ROC in PGM illus- trates that the Rate of true positives is approximately 1.

FIGURE 5.11: ROC curve for JPEG images. In JPEG dataset there are two types of data. The first type (yellow) that typifies a good true positive rate, with false positive close to zero. The second type (blue) has a perfect rate of true positives but the false positive rate varies.

To sum up, the proposed method outperforms the average of the ste- ganalytic methods, showing the proposed method robustness for different steganographic methods. 54 Chapter 5. Results and Discussion

FIGURE 5.12: PRC curve for JPEG images. JPEG dataset con- tains of many true positive values and flase negatives at all.

FIGURE 5.13: PRC curve for BMP images. the Area Under Curce (AUC) of the PRC is close at the upper right corner of the graph, indicating that the number of false positive values and the number of false negatives are small for this dataset. Thus, there are only true positive values.

5.2 Ethical and Social Analysis

When it comes to Steganology – the scientific field of steganography and steganalysis–, it is quite laborious to find out "what came first; the chicken or 5.2. Ethical and Social Analysis 55 the egg?". As the academic papers and studies increases, the "real" steganog- raphy also increases. The way researchers build and maintain steganograph- ic/steganalytic methods is always critical, but then there is always the hu- man factor; people can take advantage of the scientific methods and this is not necessarily for decent purposes. At the same time, finding the potential uses of steganography looks like finding a microscopic needle in the ultimate haystack. The needs of real steganography demand files to be unsuspicious, thus, it is not limited to send just a single stego object. Steganalysis research has almost exclusively focused on the single-shot formulation, however it is likely for messages to be spread across multiple images. This single-shot for- mulation suitability is combined with the awareness that is not secure to send stego objects at high embedded rates. This can be put in the Batch Model’s [133] concept; assume a set of users, each sending sets of images with for each separate user a chance for images to be stego. Assing stego/nonstego labels to users instead of separate images is the main goal, allows for detect- ing stego images when sets of images deviate in smaller but similar ways. However Batch Model is an inception to pooled Steganalysis. The above are the main reasons why steganography is still under the radar and steganalysis follows more passivly as it should. Steganography is complementary to cryptography and its ambition is hiding the existence of a message and not just convert it in a illegible form. Thus, steganography is proven to be advantageous in countries and regions where public use of cryptography is prohibited or restricted [134]. The art of steganography is manifested in different forms in different social and cul- tural structures. This complies with the general rule that social structures are those ones that create the circumstances in which some deviant behav- ior comes as a response to a strict system. In authoritarian societies obscure communication may be seen as a symptom of separation between culturally- specific and standardized practices, and the differentiations of the new digi- tal era. The inability to adapt or restrict social behavior leads to frustration, to the neglection of the legitimate means of achieving a goal and ending with crime. On the contrary, the danger quite often comes from the organized crime or from people that share the same political motives and/or combine some reli- gious characteristics as well. The political aspect of steganography is gaining ground. It is more than obvious that steganography, as every other infor- mation hiding technique, ended up as a powerful political weapon. Since intelligent agencies have started using automated procedures [135] for their purposes, two sides of the same coin have been revealed. Independently, if the case is either steganography or steganalysis, it is part of a widespread practice that remains indistinct because of the tolerance and the social com- plicity. At this very moment, NSA’s ultimate problem is that there are just too many people on earth to monitor everyone [136]. On the other hand, steganalysis is also used for unveiling social "dis- eases". For instance, the detection of stego images that can lead to disclosure of torturing pedophilic material/evidence justifies the fact that steganalysis is directly connected to the society. In this case, the public criticism can be 56 Chapter 5. Results and Discussion expected - only in a broad, public opinion - on the gray or even black crime- zones in order to reveal the real dimensions of a problem. And that is be- cause the existence of regimes that people can adopt (or allow) these acts of violence, are hazard sources to the human life. Thus, the social awareness may be the only way to preserve the dignity of a vague number of people worldwide. Steganology a gigantic understatement similar to the Titanic boating ac- cident. Unfortunately, it represents only the tip of the iceberg; As the ex- changed secret information plays an ever-growing crutical role in the society, the iceberg below is starting to seem ominous. While information hiding is nothing new, the use of steganography and steganalysis in support of politi- cally motivated attacks or reprehensible activities is. Today, data is everything. The recognition and the dealing with the soci- etal costs of using media objects to conceal information could be a long over- due that it turned into part of the overall equation when it comes to social responsibility.

5.3 Chapter Summary

This chapter described the method results and the experimental environment used to evaluate them. The results demonstrated that the current method boosts the detection rate for F5, Steghide, Outguess and LSB Family, com- pared with U-UNIWARD embedding. However, compared to the results of the previous related work, the current method barely outperforms. Finally, the embedding rate 0.0002 bpp is rationally the one with the lowest percent- ages of accuracy. 57

Chapter 6

Conclusion

6.1 Contributions

From the investigation of the research objectives, declared in section 1.3, the Conclusion is divided into the following steps.

Intergation of datasets Datasets which include three different image formats were used, nine dif- ferent steganographic methods, with six insertion rates for the first image format, four insertion rates for the second one and two for the third one.

Development of a reliable method A scalable method was developed in order to detect other steganographic methods due to its adaptable design.

Reliable classification A blind steganalytic method was implemented, one that outperforms the de- tection rate of previous methods in related studies.

Avoidance of any dependence Correlation including camera noise patterns is avoided through proper im- age selection.

Evaluation The evaluation was done with different parameter values.

6.2 Discussions

Nowadays, there are steganalytic methods which attempt to be universal but the absence of standard scientific datasets leads to a difficulty in proving it. Also, the variety of steganographic methods may considered an obstacle. The steganalytic techniques might be able to detect some of the embedding 58 Chapter 6. Conclusion method and not detect others. In [137], [138] methods with a very good per- formance for detecting exclusively transform domain steganographic meth- ods or in [139] methods that outperform one steganographic method and underperform over another. The proposal of this study is to archive univer- sality using different image formats and different feature extractors. The results of the experiments, also, show another fact that affects the steganalytic universality; the embedding rate. Steganalytic methods may be capable to reliably detect steganography only for specific embedding rates. For instance, this can be shown in the results of a recent experiment [140], in which J-UNIWARD has a good detection rate for 0.4 bpp rate but not for 0.1 bpp, and the results of another method [141] which has a good detection rate for S-UNIWARD 0.5 bpp but underperforms in 0.01 bpp. In many stegano- graphic methods, as the number of changes in an image is reduced, their capability of recognition also reduces. In this study, it was almost impossible to detect steganography for inserting rates under 0.001 bpp. However, con- sidering the flexibility of the proposed method, the detection might not be arduous if there is an addition of some extra feature extractors. In any case, the method feasibility ought to be analyzed. While adding a new feature extractor, the processing time may be increased. A really high processing time can limit the application of the proposed method in a real environment, where time is a strong requirement.

6.3 Future/Further Work

Although the proposed method showed a satisfying performance in the de- tection rate for some selective steganographic methods, it would be of great value to check even more of them. Therefore, the increase of the current datasets with new stego images in different embedding rates is necessary. Moreover, future tests could include entirely new datasets, in order to achieve cross-dataset testing. If a steganographic methods has poor detection rate, it could be tested on higher insertion rates. These tests might determine the amount of inserted information required in order to allow detection. In the case that the proposed method cannot recognize a steganographic method at any embedding rate, it is possible to replace one or more of the current feature extractors. Some other improvements to the current method could be (a) multiclass response and (b) feature selection. By multiclass response, a steganographic method that is used might be determined, while feature selection might re- duce classifier training time, apart from a possible improvement on the de- tection rate. 59

Appendix A

Matlab Code

N = L = ; IMAGES = cell(1,N); for k = 1:N try IMG = strcat(L, num2str(k), ’.jpg’) IMAGES{k} = (IMG); %extract the features end clc; % trying to combine the cells into one big vector matA = {} for i = 1:N % TODO: Change back to N i img = IMAGES(1,i); % Assign each image MtoV = img{1,1}(:)’; % Converts 3D Matrix into 1x(X*Y*3) vector size(MtoV) matA{i,1} = MtoV; end matA{N,1} %export in csv file csvwrite(’blabla.csv’, matA);

61

Appendix B

Batch File

#!/bin/bash i = 1 while ["$i" -le N]; do echo del i = $((i+1)) done

63

Bibliography

[1] R. Chandramouli, M. Kharrazi, H. T. Sencar, and N. Memon, "Image steganography: Concepts and practice", International Workshop on Digital Watermarking, Berlin, 2003. [2] R. Anderson and F. Petitcolas, "On the limits of steganography", IEEE Journal on Selected Areas in Communications, vol. 16, no. 4, pp. 474- 481, 1998. [3] N. Johnson and S. Jajodia, "Exploring steganography: Seeing the un- seen", Computer, vol. 31, no. 2, pp. 26-34, 1998. [4] J. Kelley, "Terror groups hide behind Web encryp- tion", Usatoday30.usatoday.com, 2001. [Online]. Available: https://usatoday30.usatoday.com/tech/news/2001-02-05- binladen.htm. [Accessed: 30- Apr- 2018]. [5] D. Sieberg, "Bin Laden exploits technology to suit his needs", Edition.cnn.com, 2001. [Online]. Available: http://edition.cnn.com/2001/US/09/20/inv.terrorist.search/. [Ac- cessed: 24- Apr- 2018]. [6] "Ten Alleged Secret Agents Arrested in the United States", Justice.gov, 2010. [Online]. Available at: https://www.justice.gov/opa/pr/ten- alleged-secret-agents-arrested-united-states. [Accessed: 06- Apr- 2018]. [7] N. Shachtman, E. Dreyfuss, I. Lapowsky and L. Newman, "FBI: Spies Hid Secret Messages on Public Websites", WIRED, 2010. [On- line]. Available: https://www.wired.com/2010/06/alleged-spies-hid- secret-messages-on-public-websites/. [Accessed: 21- Apr- 2018]. [8] O. Kolade, A. Olayinka, F. Sunday, O. Adesoji and I. Olubusola, "De- tection of Stego-Images in Communication among the Terrorist Boko- Haram Sect in Nigeria", Journal of Data Analysis and Information Pro- cessing, vol. 03, no. 04, pp. 168-174, 2015. [9] C. Stier, "Russian spy ring hid secret messages on the web", New Scientist, 2010. [Online]. Available: https://www.newscientist.com/article/dn19126-russian-spy-ring- hid-secret-messages-on-the-web/. [Accessed: 04- May- 2018]. [10] C. Williams, "Russian spy ring bust uncovers tech toolkit", Theregister.co.uk, 2010. [Online]. Available: https://www.theregister.co.uk/2010/06/29/spy_ring_tech/. [Ac- cessed: 30- Apr- 2018]. 64 BIBLIOGRAPHY

[11] K. De Leeuw and J. Bergstra, The History of Information Security. Burlington: Elsevier, 2007.

[12] J. Mielikainen, "LSB matching revisited", IEEE Signal Processing Let- ters, vol. 13, no. 5, pp. 285-287, 2006.

[13] M. Kuhn, "Information Hiding", In Proceedings of the First Intl. Workshop on Information Hiding, 1996. [Online]. Available: https://books.google.co.uk/books?id=gWdiyTlEBIIC&pg=PA1&hl=e n#v=onepage&q&f=false. [Accessed: 18- May- 2018].

[14] "René Dagron", En.wikipedia.org, 2018. [Online]. Available: https://en.wikipedia.org/wiki/Ren%C3%A9_Dagron. [Accessed: 16- Apr- 2018].

[15] N. Johnson, Z. Duric and S. Jajodia, Information hiding. Boston, MA: Kluwer Academic, 2003.

[16] D. Kahn, The codebreakers, New York: Scribner, 1996.

[17] G. Simmons, "The prisoners’ problem and the subliminal channel", Ad- vances in Cryptology: Proceedings of CRYPTO, pp. 51–67, 1983.

[18] R. Bohme, Advanced statistical steganalysis. Springer-Verlag Berlin An, 2010.

[19] Y. Wang and P. Moulin, "Optimized Feature Extraction for Learning- Based Image Steganalysis", IEEE Transactions on Information Foren- sics and Security, vol. 2, no. 1, pp. 31-45, 2007.

[20] J. Codr, "Unseen: An Overview of Steganography and Pre- sentation of Associated Java Application C-Hide", Cse.wustl.edu, 2009. [Online]. Available: https://www.cse.wustl.edu/ jain/cse571- 09/ftp/stegano/index.html. [Accessed: 04- May- 2018].

[21] A. Rocha and S. Goldenstein, “Steganography and Steganalysis in Dig- ital Multimedia: Hype or Hallelujah?”, Journal of Theoretical and Ap- plied Computing, 2008.

[22] M.M. Amin, I. Subariah, M. Salleh and M. R. Katmin, “Information Hiding Using Steganography.” 4th National Conference on Telecom- munication Technology, 2003.

[23] B. Kaur, A. Kaur and J. Singh, ”Steganographic approach for hiding im- age in dct domain”, International Journal of Advances in Engineering & Technology, 2011.

[24] C. Sumathi, T. Santanam and G. Umamaheswari, "A Study of Vari- ous Steganographic Techniques Used for Information Hiding", Inter- national Journal of Computer Science & Engineering Survey, vol. 4, no. 6, pp. 9-25, 2013. BIBLIOGRAPHY 65

[25] A. Raid, W. Khedr, M. El-dosuky and A. Wesam, "Jpeg Image Com- pression Using Discrete Cosine Transform - A Survey", International Journal of Computer Science & Engineering Survey, vol. 5, no. 2, pp. 39-47, 2014.

[26] S. Dumitrescu, W. Xiaolin and Z. Wang, "Detection of LSB steganogra- phy via sample pair analysis", IEEE Transactions on Signal Processing, vol. 51, no. 7, pp. 1995-2007, 2003.

[27] H. Pang, K. L. Tan and X. Zhou. "StegFS: a steganographic file system.", 19th International. Conference on Data Engineering, pp. 657-667, 2003.

[28] S. Hand and T. Roscoe, "Mnemosyne: Peer-to-peer steganographic storage", 1st International Workshop on Peer-to-Peer Systems, vol. 2429, pp. 130-140, 2002.

[29] J. R. Rodriguez-Colin, F.-U. Claudia and G. de J. Trinidad-BIas, "Data hiding scheme for medical images", 17th IEEE International Confer- ence on Electronics,Communications and Computers, pp. 33-38, 2007.

[30] Y. Li, C. T. Li and C. H. Wei, "Protection of mammograms using blind staganography and watermarking", 3rd International Symposium on Information Assurance and Security, 2007.

[31] P. Wayner, "Disappearing Cryptography: Information Hiding: Steganography & Watermarking" ; Second Edition, Morgan Kaufmann Publishers, 2002.

[32] F. Mintzer, L. Boyle, A. Cazes, B. Christian, S. Cox, F. Giordano, H. Gladney, J. Lee, M. Kelmanson, A. Lirani, K. Magerlein, A. Pavani and F. Schiattarella, "Toward on-line, worldwide access to Vatican Library materials", IBM Journal of Research and Development, vol. 40, no. 2, pp. 139-162, 1996.

[33] R. Mercuri, "The many colors of multimedia security", Communica- tions of the ACM, vol. 47, no. 12, p. 25, 2004.

[34] T. Sharp, “An implementation of key-based digital signal steganogra- phy”, 4th International Unformation Hiding Workshop, 2001.

[35] A. Pfitzmann, "Information hiding terminology", In Proceedings of the First inti. Workshop on information Hiding, Cambridge, 1996.

[36] A.K Jain and U. Uludag, "Hiding fingerprint minutiae in images", In Proceedings of Workshop on Automatic identification Advanced Tech- nologies, New York, pp. 97-102 , 2002.

[37] I. Cox, J. Bloom, M. Miller, J. Fridrich and T. Kalker, Digital watermark- ing and Steganography. San Francisco, Calif.: Morgan Kaufmann, 2007.

[38] G. Kipper, Investigator’s guide to steganography. Boca Raton, FL: Auerbach Publications, 2004. 66 BIBLIOGRAPHY

[39] A. Nissar and A. Mir, "Classification of steganalysis techniques: A study", Digital Signal Processing, vol. 20, no. 6, pp. 1758-1770, 2010.

[40] M. Kharrazi, H. T. Sencar and N. Memon, “Image Steganography : Concepts and Practice.”, IEEE Conference on Multimedia and Expo, Taiwan, 2004.

[41] Y. Wu and T. Zhang, "New Blind Steganalysis Framework Combining Image Retrieval and Outlier Detection", KSII Transactions on Internet and Information Systems, vol. 10, no. 12, 2017.

[42] Q. Guan, J. Dong, and T. Tan, "An effective image steganalysis method based on neighborhood information of pixels.", 2011 18th IEEE Inter- national Conference, pp. 2721-2724, 2011

[43] J. Fridrich and J. Kodovsky, "Rich Models for Steganalysis of Digital Images", IEEE Transactions on Information Forensics and Security, vol. 7, no. 3, pp. 868-882, 2012.

[44] P. Lafferty and F. Ahmed, "Texture-based steganalysis: results for color images.", International Society for Optics and Photonics, vol. 5561, pp. 145-152, 2014.

[45] T. Pevny, P. Bas and J. Fridrich, "Steganalysis by Subtractive Pixel Ad- jacency Matrix", IEEE Transactions on Information Forensics and Secu- rity, vol. 5, no. 2, pp. 215-224, 2010.

[46] Y. Q. Shi, G. Xuan, D. Zou, J. Gao, C. Yang, Z. Zhang and C. Chen, "Im- age steganalysis based on moments of characteristic functions using wavelet decomposition, prediction-error image, and neural network." IEEE International Conference, Multimedia and Expo, pp. 4-pp, 2005.

[47] C. Chen and Y. Q. Shi, "JPEG image steganalysis utilizing both in- trablock and interblock correlations.", IEEE International Symposium, Circuits and Systems, pp. 3029-3032, 2008.

[48] S. Arivazhagan, W. S. L. Jebarani and M. Shanmugaraj, “A Novel Ap- proach to Low Volume Generic Steganalysis.”, 21st International Con- ference on Systems Engineering, pp. 153–158, 2011.

[49] M. Niimi and H. Noda, “An Application of Sparse Code Shrinkage to Image Steganalysis Based on Supervised Learning.”, 18th IEEE Inter- national Conference on Image Processing, pp. 1941–1944, 2011

[50] S. Bayram„ A.E. Dirik, H.T. Sencar and N. Memon, “An Ensemble of Classifiers Approach to Steganalysis.”, 20th International Conference on Pattern Recognition, pp. 4376–4379, 2010

[51] J. Kodovsky, J. Fridrich and V. Holub, "Ensemble Classifiers for Ste- ganalysis of Digital Media", IEEE Transactions on Information Foren- sics and Security, vol. 7, no. 2, pp. 432-444, 2012. BIBLIOGRAPHY 67

[52] B. Rodriguez, G. Peterson and K. Bauer, "Fusion of steganalysis sys- tems using Bayesian model averaging." IFIP International Conference on Digital Forensics, Boston, pp. 345-355, 2008.

[53] Z. Sun, J. Liu and Z. Ji, “Distributed Fusion Steganalysis Based on Com- bination System Likelihood Function.”, 10th International Symposium on Distributed Computing and Applications to Business, Engineering and Science, pp. 221–225, 2011.

[54] T. Pevny and J. Fridrich, "Multiclass Detector of Current Stegano- graphic Methods for JPEG Format", IEEE Transactions on Information Forensics and Security, vol. 3, no. 4, pp. 635-650, 2008.

[55] T. Pevny, J. Fridrich and A. Ker, "From Blind to Quantitative Steganal- ysis", IEEE Transactions on Information Forensics and Security, vol. 7, no. 2, pp. 445-454, 2012.

[56] A. Saleema and T. Amarunnishad, "A New Steganography Algorithm Using Hybrid Fuzzy Neural Networks", Procedia Technology, vol. 24, pp. 1566-1574, 2016.

[57] B. Kaipa and S.A. Robila, "Statistical Steganalyis of Images Using Open Source Software", Applications and Technology Conference (LISAT), , Farmingdale, pp.1-5, 2010.

[58] ]H.-T. Wu, J.-L. Dugelay and Y.-M. Cheung, “A data mapping method for steganography and its application to images”, 10th International Workshop on Information Hiding ,vol. 5284, pp. 236–250, 2008.

[59] K. Ghazanfari, S. Ghaemmaghami, S. R. Khosravi, "LSB++: an im- provement to LSB+ steganography." TENCON 2011-2011 IEEE Region 10 Conference, pp. 364-368, 2011.

[60] A. Ker, "Steganalysis of LSB matching in grayscale images", IEEE Sig- nal Processing Letters, vol. 12, no. 6, pp. 441-444, 2005.

[61] J. Mielikainen, "LSB matching revisited", IEEE Signal Processing Let- ters, vol. 13, no. 5, pp. 285-287, 2006.

[62] S. Hetzl, "Steghide", Steghide.sourceforge.net, 2002. [Online]. Avail- able: http://steghide.sourceforge.net/. [Accessed: 08- May- 2018].

[63] S. Hetzl, P. Mutzel, "A graph–theoretic approach to steganography." IFIP International Conference on Communications and Multimedia Se- curity, Berlin, pp. 119-128, 2005.

[64] V. Sedighi, J. Fridrich and R. Cogranne, "Toss that BOSSbase, Alice!", Electronic Imaging, vol. 2016, no. 8, pp. 1-9, 2016.

[65] T. Denemark, J. Fridrich and V. Holub, "Further study on the security of S-UNIWARD", Proc. SPIE 9028, Media Watermarking, Security, and Forensics, 2014. 68 BIBLIOGRAPHY

[66] A. Latham, "JPHide and JPSeek", 1999. [Online]. Available: http://linux01.gwdg.de/ alatham/stego.html. [Accessed: 30- May- 2018]. [67] B. Li, J. He, J. Huang and Y.Q. Shi, "A survey on image steganogra- phy and steganalysis.", Journal of Information Hiding and Multimedia Signal Processing, vol.2, pp. 142-172, 2011. [68] A. Westfeld, "F5—a steganographic algorithm." International work- shop on information hiding, Berlin, 2001. [69] N. Provos and P. Honeyman, "Hide and seek: An introduction to steganography", IEEE Security & Privacy Magazine, vol. 1, no. 3, pp. 32-44, 2003. [70] W. Luo, F. Huang and J. Huang, "Edge Adaptive Image Steganography Based on LSB Matching Revisited", IEEE Transactions on Information Forensics and Security, vol. 5, no. 2, pp. 201-214, 2010. [71] D. Wu and W. Tsai, "A steganographic method for images by pixel- value differencing", Pattern Recognition Letters, vol. 24, no. 9-10, pp. 1613-1626, 2003. [72] C.M. Wang, N.I. Wu, C.S. Tsai and M.S. Hwang, “A high quality steganography method with pixel-value differencing and modulus function”, Journal of Systems and Software, vol. 81, No. 1, pp. 150-158, 2008. [73] V. Sabeti, S. Samavi, M. Mahdavi and S. Shirani, "Steganalysis of pixel- value differencing steganographic method.", IEEE Pacific Rim Confer- ence Communications, Computers and Signal Processing, pp. 292-295, 2007. [74] J.J. Roque and J.M. Minguet, "SLSB: Improving the Steganographic Al- gorithm LSB.", WOSIS, pp. 57-66, 2009. [75] A. Cheddad, J. Condell, K. Curran and P. Mc Kevitt, "Digital image steganography: Survey and analysis of current methods", Signal Pro- cessing, vol. 90, no. 3, pp. 727-752, 2010. [76] I. Cox, J. Kilian, F. Leighton and T. Shamoon, "Secure spread spectrum watermarking for multimedia", IEEE Transactions on Image Process- ing, vol. 6, no. 12, pp. 1673-1687, 1997. [77] S. P. Maity, S.Maity, J. Sil and C. Delpha, "Spread Spectrum Watermark- ing: Principles and Applications in Fading Channel." Watermarking- Volume 1, Intech, 2012. [78] X. Zhang, X. Wang and Q. Wang, "Additive Spread Spectrum Image Hiding Algorithm based on Host Signal.", Proceedings of the 7th In- ternational Conference on Software and Computer Applications, pp. 164-168, 2018. BIBLIOGRAPHY 69

[79] S. Kiani, and M. E. Moghaddam, "Fractal Based Digital Image Water- marking Using Fuzzy C-Mean Clustering.", The Proceeding of IEEE of the International Conference on Information Management and Engi- neering, 2009.

[80] H. S. Hussain, S. A. Aljunid, S. Yahya and F. H. M. Ali, "A novel hybrid fuzzy-SVM image steganographic model.", 2010 International Sympo- sium, Information Technology, vol. 1, pp. 1-6, 2010.

[81] C.C. Chang, Y.C. Chou and T.D. Kieu, "An Information Hiding Scheme Using Sudoku", Proceedings of the Third International Conference on Innovative Computing, Information and Control (ICICIC2008), 2008.

[82] R. S. BR, J. Rohith, V. Mukund, R. Honwade and S. Rangaswamy, "Steganography using sudoku puzzle.", International Conference on Advances in Recent Technologies in Communication and Computing, pp. 623-626, 2009.

[83] S. Ijeri, S. Pujeri, B. Shrikant and B. Usha, "Image Steganography using Sudoku Puzzle for Secured Data Transmission", International Journal of Computer Applications, vol. 48, no. 17, pp. 31-35, 2012.

[84] J. Bieniasz, K. Szczypiorski, "SocialStegDisc: Application of steganog- raphy in social networks to create a file system." 3rd International Con- ference, Frontiers of Signal Processing (ICFSP), pp. 76-80, 2017.

[85] J. Hiney, T. Dakve, K. Szczypiorski and K. Gaj, "Using facebook for image steganography.",10th International Conference, Availability, Re- liability and Security, pp. 442-447, 2015.

[86] T. Pevny and J. Fridrich, "Merging Markov and DCT features for mul- ticlass JPEG steganalysis", Proceedings SPIE, Electronic Imaging, Se- curity, Steganography, and Watermarking of Multimedia Contents IX, vol. 6505, pp. 3 1–3 14, 2007.

[87] J. Kodovsky and J. Fridrich, "Calibration revisited", Proceedings of the 11th ACM Multimedia and Security Workshop, 2009.

[88] J. Fridrich, M. Goljan, and D. Hogea, "Steganalysis of JPEG images: Breaking the F5 algorithm.", 5th International Workshop, Information Hiding, vol. 2578 of Lecture Notes in Computer Science, pp. 310–323, 2002.

[89] J. Fridrich, M. Goljan, D. Hogea and D. Soukal, "Quantitative steganal- ysis of digital images: Estimating the secret message length.", ACM Multimedia Systems Journal, pp. 288–302, 2003.

[90] J. Kodovsky, T. Pevny and J. Fridrich, "Modern Steganalysis Can Detect YASS", Proceedings SPIE, Electronic Imaging, Media Forensics and Se- curity XII, pp. 2 1–2 11, 2010. 70 BIBLIOGRAPHY

[91] D. Harwood, T. Ojala, M. Pietikäinen, S. Kelman and L. Davis, "Tex- ture classification by center-symmetric auto-correlation, using Kull- back discrimination of distributions", Pattern Recognition Letters, vol. 16, no. 1, pp. 1-10, 1995.

[92] T. Ojala, M. Pietikäinen and D. Harwood, "A comparative study of tex- ture measures with classification based on featured distributions", Pat- tern Recognition, vol. 29, no. 1, pp. 51-59, 1996.

[93] T. Denemark, V. Sedighi, V. Holub, R. Cogranne and J. Fridrich, "Selection-channel-aware rich model for steganalysis of digital im- ages.", IEEE International Workshop, Information Forensics and Secu- rity (WIFS), pp. 48-53, 2014.

[94] S. Lyu and H. Farid, "Detecting hidden messages using higher-order statistics and support vector machines.", International Workshop on Information Hiding, Berlin, pp. 340-354, 2002.

[95] H. Farid, "Detecting hidden messages using higher-order statistical models.", Proceedings of the international Conference on image Pro- cessing, vol. 2, pp. 905-908, 2002.

[96] V. Holub and J. Fridrich, "Low-Complexity Features for JPEG Ste- ganalysis Using Undecimated DCT", IEEE Transactions on Information Forensics and Security, vol. 10, no. 2, pp. 219-228, 2015.

[97] A. D. Ker, P. Bas, R. Böhme, R. Cogranne, S, Craver, T. Filler and T. Pevný, "Moving steganography and steganalysis from the laboratory into the real world.", Proceedings of the first ACM workshop on Infor- mation hiding and multimedia security, pp. 45-58, 2013

[98] R. Cogranne and J. Fridrich, "Modeling and Extending the Ensemble Classifier for Steganalysis of Digital Images Using Hypothesis Testing Theory", IEEE Transactions on Information Forensics and Security, vol. 10, no. 12, pp. 2627-2642, 2015.

[99] S.Lyu and H. Farid, "Steganalysis using color wavelet statistics and one-class support vector machines." International Society for Optics and Photonics, Security, Steganography, and Watermarking of Multi- media Contents VI, vol. 5306, pp. 35-46, 2004.

[100] M. H. Menori and R. Munir, "Blind steganalysis for digital images us- ing support vector machine method.", International Symposium, Elec- tronics and Smart Devices (ISESD), pp. 132-136, 2016.

[101] M. Boroumand and J. Fridrich, "Applications of Explicit Non-Linear Feature Maps in Steganalysis", IEEE Transactions on Information Forensics and Security, vol. 13, no. 4, pp. 823-833, 2018. BIBLIOGRAPHY 71

[102] Y. Qian, J. Dong, W. Wang and T. Tan, "Deep learning for steganaly- sis via convolutional neural networks.", International Society for Op- tics and Photonics, Media Watermarking, Security, and Forensics, vol. 9409, pp. 94090J, 2015. [103] L. Pibre, J. Pasquet, D. Ienco and M. Chaumont, "Deep learning is a good steganalysis tool when embedding key is reused for different im- ages, even if there is a cover sourcemismatch", Electronic Imaging, vol. 2016, no. 8, pp. 1-11, 2016. [104] G. Xu, H. Wu and Y. Shi, "Structural Design of Convolutional Neural Networks for Steganalysis", IEEE Signal Processing Letters, vol. 23, no. 5, pp. 708-712, 2016. [105] G. Xu, H. Wu and Y. Shi, "Ensemble of CNNs for steganalysis: An em- pirical study.", Proceedings of the 4th ACM workshop on information Hiding and Multimedia security, pp. 103-107, 2016. [106] S. Tan and B. Li, "Stacked convolutional auto-encoders for steganaly- sis of digital images.", Signal and Information Processing Association Annual Summit and Conference (APSIPA), Asia-Pacific, pp. 1-4, 2014. [107] D. Hu, Q. Shen, S. Zhou, X. Liu, Y. Fan and L. Wang, "Adaptive Ste- ganalysis Based on Selection Region and Combined Convolutional Neural Networks", Security and Communication Networks, vol. 2017, pp. 1-9, 2017. [108] Y. Qian, J. Dong, J. Wang and T. Tan, "Learning and transferring rep- resentations for image steganalysis using convolutional neural net- work.", IEEE International Conference, Image Processing (ICIP), pp. 2752-2756, 2016. [109] J. Zeng, S. Tan, B. Li and J. Huang, "Large-Scale JPEG Image Steganal- ysis Using Hybrid Deep-Learning Framework", IEEE Transactions on Information Forensics and Security, vol. 13, no. 5, pp. 1200-1214, 2018. [110] K. Liu, X. Li, Q. Zhang and X. Kang, "Multi-channel neural network for steganalysis." Asia-Pacific Signal and Information Processing Asso- ciation Annual Summit and Conference (APSIPA ASC), pp. 1210-1213, 2017. [111] Y. H. Zhang, X. Li and J. Y. Xiao, "A Digital Fuzzy Edge Detector for Color Images.", arXiv preprint arXiv:1701.03364, 2017. [112] M. H. Goodarzi, A. Zaeim and A. S. Shahabi, "Convergence between fuzzy logic and steganography for high payload data embedding and more security." 6th International Conference, Telecommunication Sys- tems, Services, and Applications (TSSA), pp. 130-138, 2011. [113] Q. Liu and A. H. Sung, "Detect information-hiding type and length in JPEG images by using neuro-fuzzy inference systems.", Image and Signal Processing, 2008. CISP’08. Congress, vol. 5, pp. 692-696, 2008. 72 BIBLIOGRAPHY

[114] H. Z. Wu, H. X. Wang and Y. Q. Shi, "Can Machine Learn Steganography? - Implementing LSB Substitution and Matrix Coding Steganography with Feed-Forward Neural Networks", arXiv preprint arXiv:1606.05294, 2016.

[115] S. Gao, G. Xu and R. M. Hu, "Camera model identification based on the characteristic of CFA and interpolation.", International Workshop on Digital Watermarking, Berlin, pp. 268-280, 2012.

[116] S. Cessie and J. Houwelingen, "Ridge Estimators in Logistic Regres- sion", Applied Statistics, vol. 41, no. 1, p. 191, 1992.

[117] J. Hühn and E. Hüllermeier, "FURIA: an algorithm for unordered fuzzy rule induction", Data Mining and Knowledge Discovery, vol. 19, no. 3, pp. 293-319, 2009.

[118] L. Breiman, "Random forests.", Machine learning, vol. 45, no. 3, pp. 5-32, 2001.

[119] L. Pibre, J. Pasquet, D. Ienco and M. Chaumont, "Steganaly- sis With Deep Learning", Lirmm.fr, 2016. [Online]. Available: http://www.lirmm.fr/ chaumont/SteganalysisWithDeepLearn- ing.html. [Accessed: 31- May- 2018].

[120] A. Piva and M. Barni. "The first BOWS contest: break our watermark- ing system.", Proceedings of SPIE-IS&T Electronic Imaging, Security, Steganography, and Watermarking of Multimedia Contents IX, San Jose, 2007.

[121] P. Bas and T. Furon, "BOWS-2 Web page", Bows2.ec-lille.fr, 2007. [On- line]. Available: http://bows2.ec-lille.fr/. [Accessed: 23- Jun- 2018].

[122] T. Pevný, T. Filler and P. Bas, "Break our steganographic system", Pro- ceedings of the 13th international conference on Information hiding, pp. 59-70, 2011.

[123] "The ’Dresden Image Database’", Forensics.inf.tu-dresden.de. [Online]. Available: http://forensics.inf.tu-dresden.de/ddimgdb/. [Accessed: 31- Jun- 2018].

[124] "BMP Database", Bmpdatabase.org. [Online]. Available: http://www.bmpdatabase.org/download-master.html. [Accessed: 31- Jun- 2018].

[125] A. Westfeld, "matthewgao/F5-steganography", GitHub, 2014. [On- line]. Available: https://github.com/matthewgao/F5-steganography. [Accessed: 17- Jul- 2018].

[126] S. Hetzl, "Steghide", Steghide.sourceforge.net, 2003. [Online]. Avail- able: http://steghide.sourceforge.net/. [Accessed: 17- Jul- 2018]. BIBLIOGRAPHY 73

[127] Ubuntu, "Ubuntu Manpage: outguess - universal stegano- graphic tool", Manpages.ubuntu.com. [Online]. Available: http://manpages.ubuntu.com/manpages/xenial/man1/outguess.1.html. [Accessed: 17- Jul- 2018].

[128] J. Fridrich, V. Holub and T. Denemark, "Feature Extractors for Steganalysis", Dde.binghamton.edu, 2011. [Online]. Available: http://dde.binghamton.edu/download/feature_extractors/. [Ac- cessed: 25- Jul- 2018].

[129] K. Qazanfari and R. Safabakhsh, "A new steganography method which preserves histogram: Generalization of LSB++", Information Sciences, vol. 277, pp. 90-101, 2014.

[130] K. Ghazanfari, "kazemmit/Steganography", GitHub, 2017. [Online]. Available: https://github.com/kazemmit/Steganography. [Accessed: 01- Aug- 2018].

[131] C. Bishop, Pattern Recognition and Machine Learning. [S.l.]: SPRINGER-VERLAG NEW YORK, 2006.

[132] W. W. Cohen, "Fast effective rule induction." In Machine Learning Pro- ceedings, pp. 115-123, 1995.

[133] A. D. Ker, "Batch steganography and pooled steganalysis.", In Interna- tional Workshop on Information Hiding, Berlin, pp. 265-281, 2006.

[134] R. Roy, S. Changder, A. Sarkar and N. C. Debnath, "Evaluating im- age steganography techniques: Future research challenges". Interna- tional Conference In Computing, Management and Telecommunica- tions (ComManTel), pp. 309-314, 2013.

[135] J. Kumagai, "Mission Impossible?", IEEE Spectrum: Technol- ogy, Engineering, and Science News, 2003. [Online]. Available: https://spectrum.ieee.org/computing/software/mission-impossible. [Accessed: 02- Aug- 2018].

[136] S. Cass, "Listening In", IEEE Spectrum: Technology, En- gineering, and Science News, 2003. [Online]. Available: https://spectrum.ieee.org/computing/software/listening-in. [Ac- cessed: 02- Aug- 2018].

[137] D. J. S. Pérez, M. S. Rosales and N. Cruz-Cortés, "Universal Steganogra- phy Detector Based on an Artificial Immune System for JPEG Images.", Trustcom SPA, pp. 1896-1903, 2016.

[138] P. Andriotis, G. Oikonomou and T. Tryfonas, "JPEG steganography de- tection with Benford’s Law", Digital Investigation, vol. 9, no. 3-4, pp. 246-257, 2013. 74 BIBLIOGRAPHY

[139] C. Xu, T. Zhang and X. Hou, "New Blind Steganalysis Framework Combining Image Retrieval and Outlier Detection", KSII Transactions on Internet and Information Systems, vol. 10, no. 12, 2016.

[140] M. Salomon, R. Couturier, C. Guyeux, J. Couchot and J. Bahi, "Steganal- ysis via a convolutional neural network using large convolution filters for embedding process with same stego key: A deep learning approach for telemedicine", European Research in Telemedicine / La Recherche Européenne en Télémédecine, vol. 6, no. 2, pp. 79-92, 2017.

[141] H. Abdulrahman, M. Chaumont, P. Montesinos and B. Magnier, "Color images steganalysis using rgb channel geometric transformation mea- sures", Security and Communication Networks, vol. 9, no. 15, pp. 2945- 2956, 2016. Despoina Giarimpampa received her B.Sc degree in Informatics from Athens University of Economics and Business, in 2016. Her research interests are: Network Security, Steganology, and Digital Law & Ethics.

PO Box 823, SE-301 18 Halmstad Phone: +35 46 16 71 00 E-mail: [email protected] www.hh.se