Toward agent - based LSB image steganography system

: In a digital communication environment, information security is mandatory. Three essential parameters used in the design process of a steganography algorithm are Payload, security, and ﬁ delity. However, several methods are implemented in information hiding, such as Least Signi ﬁ cant Bit ( LBS ) , Discrete Wavelet Transform, Masking, and Discrete Cosine Transform. The paper aims to investigate novel steganography techniques based on agent technology. It proposes a Framework of Steganography based on agent for secret communication using LSB. The most common image steganography databases are explored for training and testing. The methodology in this work is based on the statistical properties of the developed agent software using Matlab. The experiment design is based on six statistical feature measures, including Histogram, Mean, Standard deviation, Entropy, Variance and Energy. For steganography, an Ensemble classi ﬁ er is used to test two scenarios: embedding a single language message and inserting bilingual messages. ROC Curve represents the evaluation metrics. The result shows that the designed agent - based system with 50% training/testing sample set and 0.2 Payload can pick out the best cover image for the provided hidden message size to avoid visual artifact.


Introduction
Information security is an essential factor required for exchanging messages or information communication via the internet. Securing communication confidentiality is done using many techniques; cryptography is among the top ones used for multimedia. Sometimes keeping the secrecy of messages' content is not enough, and it may be safer to conceal the existence of the message, which is known as steganography. It is known as the tactic of concealing a confidential message in digital files, e.g., photos, audio, or video files [1]. Steganography's core objective is to hide embedded informationa "Payload"in a cover object in which the Payload's existent object is invisible. Steganography is gaining internet communication attention [2,3] because of a general weakness in cryptography. Although cryptography can protect an encoded message, its visible presence exposes the message to decryption attacks which a message invisible to an eavesdropper avoids. Of course, both can be applied, and steganography becomes more secure if its Payload message is also encrypted with a key known only to the intended recipient [4,5]. Steganography is becoming a highly attractive area of research with many applications. Selecting a proper cover image to hide a specific secret message is highly important for the stego image's security. This paper aims to present an information protection approach through images using the Least Significant Bit (LSB) steganography and agents technique.
Information hiding is a subfield of security; it involves numerous methods for hiding information digitally. Moreover, various purposes can be employed, such as securing messages or creating covert channels. Figure 1 illustrates the Information hiding classification adapted from Bauer [6]. A significant zone of information hiding is known as steganography, and it is the discipline of concealing messages into objects. Aside from steganography, copyright marking requires additional robustness against possible attacks. Marking is divided into robust and fragile ones. Robust watermarks cannot be removed without destroying the object. Fragile watermarking is meant to be changeable. Fingerprinting uses embedded serial numbers in objects that enable the protection of the copyrights and detect when a license agreement has been broken and the product copied illegally. Watermarks can be visible or hidden [7]. In this work, we are interested in steganography. Technical steganography is described in the literature review II below. More modern linguistic steganography is a set of techniques for embedding a message in a carrier and can use the following techniques [8]: • Text semagrams, where the information is concealed by using different methods for presenting the data.
• Visual semagrams, where innocent-looking object hides the message.
• Jargon code, where the utilization of understood language by agreed parties is used in a different way to common usage. • Covered null cipher, in which the Payload is concealed into a collection of interlacing instructions agreed upon by the users. • Covered grille cipher, in which a template is used over a cover object that enables the selection of specific characters which constitute the meant message to be shown while the others are characters that are covered.
Steganography means covered writings originated from two Greek words, "Stegos" and "Graphia." Steganography is defined as the science of hiding communication in objects [9]. The assigned person to receive the message is informed in advance about concealed communication [10]. Hence, the secret message is concealed on a cover medium that has redundant bits [11]. The medium that carries the embedded message is called the cover media, while the hidden note is known as the stego message [12]. Thus, steganography's key objective is to conceal information by preventing an unauthorized person from reading the contents of the message using professional algorithms. Likewise, revealing the hidden data requires high expertise and complex techniques, as discussed in this work. The process of steganography involves four components; the first is the cover object (C) which is a carrier of the concealed message; the second is the secret message (M) which is concealed in the cover object; the third is the technique used for applying steganography; and finally, the stego key (K) that encodes and decodes the Payload. Figure 2 illustrates the steganography workflow inspired by the work in [13].
Steganography is another term for covert communication that hides messages in an innocent medium and then sends it to the intended recipient. A steganographic system's key condition is to make it unfeasible for an observer to identify a stego object (the object that contains the hidden message) [14]. Steganography is a way of securing information exchange by hiding the message within an object [15].
Johannes Trithemius (1462-1516) used the term steganography for the first time in his trilogy Polygraphia and Steganographia [14]. The first documented manuscript tells about steganography being used for communication is due to Herodotus [16]. When Histiaeus wanted to transmit a secret message to Miletus, they shaved the slave's hair and tattooed the secret message on his scalp; the slave travelled and after his hair grew upon arriving, his hair was shaved again to disclose the hidden message [17]. Moreover, Herodotus documented the story of Demeratus, who used steganography to alert Sparta about the intended invasion of Greece by the Persian Greet King Xerxes. Demeratus applied steganography by scraping the wax off the outward of a wooden writing tablet, writing the secret message on the wood, and then coating the tablet with wax to make it look like a regular new writing tablet, not to raise the suspicion. Beside, Aeneas the Tactician is credited with describing some simple techniques for concealing a text message by manipulating letters' length or placing letters inside the text using small holes [18].
Hiding messages in the text are known as linguistic steganography or acrostics. An example of linguistic steganography is what was performed by Cardan's Grille, which was originally considered in China and reinvented by Cardan (1501-1576). His method worked by putting a mask over a text that points to random letters from the text; thus, the mask plays a secret stego key that communicates between the coder and the encoder [11]. Brassil's robust text steganography method worked by slightly shifting the text lines up or down by 1/300 of an inch [19]. In 1857, Brewester proposed a steganography technique that shrank the message size to resemble specks of dirt that can still be read under high magnification [20]; this method was actually used in wars through nineteenth and the twentieth centuries. During World War I, the Germans implemented "microdots" hidden in postcards' edges sealed with starch and opened with a knife. Another form of steganography is the use of invisible ink composed of organic liquids such as milk, lemon, urine, or sugar solution in which messages written with such ink become perceptible once the paper is heated [21,22]. With the extensive use of e-media, a great interest has been developed in applying steganography to such media.
During the steganography process, the redundant bits of a digital file can carefully be used for embedding without leaving significant artifacts that lead to easy detection. Steganography classification can be based either on the kind of cover work or the embedding method adopted. Examples of steganographic cover objects are text, image, video, or protocol. In contrast, the embedding method's type is either insertion, substitution, or generation method [23,24]. The insertion method attaches a message in the cover objects' areas that are disregarded by applications. Therefore, the stego object's size is expected to be larger than the original cover object size. The substitution method hides secret messages by substituting the bits of low importance in the cover object with the Payload bits; hence, the stego file size is different from its original identical version. The generation method uses messages to generate cover and stego files. Therefore, this method is hard to detect a hidden message since a cover object without a Payload does not exist for comparison [25,26]. Figure 3 illustrates the classification of the steganography system. Secret messages can be hidden inside diverse categories of cover such as text files, an image, audio, video file, even programs, networks, etc. There is wide popularity for applying steganography to images due to the high proportion of redundant bits present. One standard method of applying steganography is embedding information inside photo image files. Many steganographic tools are available to store secret messages inside different types of cover objects. The hidden message is stored inside the photo without altering or changing its features and is considered the essential cover object's property. If the cover becomes distorted due to the Payload's embedding process, the image may be classified as a suspicious item and could be checked for any steganography application [27]. Steganography techniques are associated with algorithms categorized based on the domain and the file formats [28]. An example of an algorithm suitable for the spatial domain is the LSB algorithm, while the so-called discrete cosine transform algorithm operates on bits of a frequency transform [29,30]. Harmony search algorithm (HSA) is a metaheuristic created in the last decade by Geem et al. [31] in 2001. It mimics the behavior of a singer who achieves complete harmony. The improvisational phase of musicians influenced HSA. A musician seeks out the ideal notes in order to create perfect harmony. HSA was created based on this idea to find a successful solution to an optimization problem. Clustering problems, engineering problems, scheduling, machine vision problems, and global optimization are some of the problems that can be solved using HSA. The HSA is regarded as an effective algorithm with an efficient application. Due to its ease of implementation over other metaheuristics, it solved a broad range of real-world optimization problems. During a search, it has the potential to find a balance between investigation and exploitation [32].
Image enhancement using image processing techniques has many applications related to enhancing images of advanced space technology, medical diagnosis, biometrics, and imagery satellite for weather prediction. In such several applications, image enhancement is also used to extract useful information from raw images. Many studies apply intelligent algorithms to improve raw images, and thus image enhancement is a necessary preprocessing step in a broad range of computer vision techniques. Edge preservation is essential in edge-sensitive analytic applications such as image in painting and microscopic image evaluation. In this work, we will use the LSB method for hiding the secret message. The research contributions of our study include: • Designing a framework for an agent-based image steganography system concerning embedding and extracting secret messages within images. • The extracted features from an image include six statistical metrics: histogram, mean, standard deviation, variance, entropy, and energy. • Using LSB, the developed software agent can pick out the best cover image suitable for the hidden message size to avoid visual artifacts.
This paper is organized as follows: section two discussed the related studies of image steganography using the LSB method; section three explains the LSB steganography technique; section four introduces the insertion and extraction algorithms of a stego system using the LSB technique; section five covers the agent System properties and Ensembled classification; sections six and seven present our proposed steganography method using an agent-based steganography system and its implementation, respectively; section eight covers the evaluation metrics used to evaluate the produced stego images; and finally, section nine presents the conclusion of the work.

Related work
Yedroudj et al. [33] proposed steganography designs depending on the 2-player game that considered stego noise power and improved communication between the hiding and the revealing networks. Elharrouss et al. [34] designed an image steganography system using K LSB coding that hides k least bits of secret message in an image. To extract the embedded message, he designed a technique that detects regions in an image to identify the blocks held by the secret message. Horng et al. [35], in applied image steganography, implemented quotient value difference and the LSB methods to implant information within a unique block of an absolute moment for extracting the coded image. Their proposed embedding method contains three steps: applying the quotient value difference and the LSB replacement to embed secret message, embedding additional bit by changing both the high mean and the order of low, then adding up the secret digits by replacing the bitmap of smooth blocks. Chang et al. [36] designed an optimal LSB method for hiding the image into another image using a genetic algorithm that searches for an optimal approximated image hiding. The experiment results showed that the stego image and the image cover are alike. The work of ref. [37] discussed the design of a parallel processing image method based on reactive agents that would detect the image features. They suggested a technique for continuity perception using a multi-agent system where agents can check an image containing light and dark rings. Agents were given names, darkening agent and lightening agent, and were able to exchange messages in asynchronous manner. Thampi and Sekaran [38] proposed an image steganalysis method that depends on image feature, steganography, and mobile agents. They showed that the important features of an image could be concealed inside an image without altering the quality. A mobile agent can manage the query phase of a steganographic system. The projected system provided high efficiency in hiding the message bits and quick message extraction. The authors of ref. [39] implemented agent software to select the best cover object from a database of cover images to hide a specific message using several features. The proposed agent helped in enhancing the stego image quality from the server. Zeng et al. [40] designed a framework for a hybrid deep-learning that can utilize quantization and truncation for large-scale JPEG steganalysis. They conducted extensive experiments on 500,000 cover images extracted from Image-Net and found out that the combination of quantization and truncation improves the uncovering performance by a clear margin. We agree with the proposed work of ref. [41] for image steganography using the LSB method if used with a software agent which would conceal and obtain the hidden message from images. AbdelRaouf in ref. [42] uses adaptive LSBs to propose a novel data hiding technique for steganography images based on human visual properties LSB. In order to improve the visual presentation of the output stego image, they employed two approaches: first, the human eye sensitivity to RGB color channels; second, photographs usually concentrate on their middle region, allowing the secret message to be hidden in a spiral pattern that runs from the image's edges to its core. Fateh et al. in ref. [43] suggested an enhanced LSB matching technique. Their proposed scheme consists of two phases: message insertion and message extraction. They converted the secret message into a bit-stream in the embedding process and then divided the bit-stream into a series of blocks with n bits in each block, and they hid those n bits in selected pixels. Swain [44] discusses high-capacity data, steganography technology mistreatment differentials, and substitution mechanisms. Segmenting the image into 3 × 3 pixel blocks without overlapping to provide clear region that can be encrypted correctly. The least important piece replacement is employed on the least big piece for each rectangle pixel, and QVD is also applied to the remaining six pieces. Priyadharshini et al. [45] used steganography to add another layer of protection to the medical picture. For example, "The medical image is encrypted using a one-time pad encryption algorithm, and the encrypted image is then implanted into a cover image to create a stego image, making the device more resilient to the intruder" [45]. Gupta et al. in ref. [46] introduced information protection for people who exchange information with one another. They compared and contrasted various methods of image steganography replacement techniques. They used replacement techniques for the LSB and the Most Significant Bit. The secret message was concealed into an image file, which was decoded afterward to reveal details. Sasmal et al. in ref. [47] used the pixel indicator technique to hide details in RGB images, where at least two major bits were used as opposed to one for the networks. The presence of data in the other two channels was shown by the colors red, green, or blue. Random nature indicator bits are generated in the channel based on the picture.

Image steganography using LSB method
LSB is a simple steganography insertion method in which the lower bit of the original image, in particular, is substituted by a bit of the confidential message [48]. The 8 bit planes of an image detail the LSB plane of the replaced message during the embedding process, as illustrated in Figure 4.
In a 24 bit image, a single bit can be used from the RGB color components since every pixel is saved as a byte. Therefore, every pixel may store 3 bits of Payload data [49]. For more illustration, the binary representation of the number 200 is equal (11001000). When embedding the binary equivalent of the number 200 in the modified image grid, a replacement process is applied to the rightmost binary value in the first 8th bytes of the 3 pixels grid, resulting in a replacement of the 8 bit value (00101101) from the original grid above by the value (00101101) in the modified grid. Though the integer 200 was substituted with the LSB of the first 8 bytes, only 3 bits actually need to be changed on the cover image based on the resulted embedded message. This indicates that not all the LSBs are needed to be changed. Usually, the variation between the original file and the stego one is not perceptible to the human visual system, as exemplified below by an original image grid of 3 pixels times 24-bit, as can be viewed in Table 1: The main disadvantage of the LSB is related to its weak binary system of encoding and decoding. However, several advantages that encouraged the authors to use the LSB algorithm in image steganography include its robustness, capability to embed sizable messages, high similarity in generated input/output image, methodology included in other complicated algorithms, and straightforward when applied.

Experiment design using LSB embedding and extracting algorithm
For implementation setting up, the authors reviewed several databases in search of a benchmark steganographic dataset; our findings indicated a need for building one. The most popular ones in the google hits are Lena and Baboon, Lena, ImageNet, COCO and Wikiart.org, BOSSbase and celebA, MNIST and celebA, USC-SIPI, Div2K, SZUBase, Pascal VOC, BOWS2, BURSTbase, ALASKA, Greenspun, NRCS, NRCS, UCID, Kodak PhotoCD PCD0992, STEGRT1, and BOSSrank. These datasets vary in total size, training/testing samples, image size/ quality, image format, and the creation purpose. The initial decision was made to select a dataset created mainly for steganography with training/test samples for gray images; size of datasets being not less than 10K with at least 512 × 512 dimensions. For the purpose of this work, we had to form criteria for the cover image as well as the number of features, which eventually would affect the processing time. It was observed that the size of the hidden message correlates with the quality and size of the image. Thus, the final decision was based on five characteristics: the creation purpose, image size, image quality, size of the database, and training/testing samples. Therefore, the BOSSbase was the best choice for this work since more than 10K uncompressed huge resolution images. This dataset was created for steganography purposes and converted to grayscale.
In this work, we present the embedding and the extracting LSB algorithm for hiding a secret message in images in subsections A and B. Then, we show the implemented pseudo-random generator for the hiding process to increase the security of the message hidden. Figure 5 depicts the embedding process.

Agent system properties and ensemble classification
An agent is software built to act in a specific environment to perform an independent action to meet its designed objective. The properties of the software agent are listed as following [50]: • Autonomous: autonomous is one property that distinguishes an agent from an object; thus, the agents are independent and capable of making their own decisions. • Situated: the agent is situated in an environment.
• Being able to identify changes in the environment.
• Has skills and can offer services.
• Flexibility: an agent is flexible in terms of being responsive in which the agent can observe its surroundings and react to transformation, proactive as the agent can show resourceful actions and take the initiative when needed, and socially in which the agent can interact with other agent or human to find solutions to problems.
An agent can be classified as a mobile or learning agent. They can also be classified based on the tasks they do, such as agents that collect information or agents that filter emails or control architecture or sensitivity. Further, the agent can apply an Ensemble classifier for different parameters as Payload and LSB methods for the best cover image and image steganography. The agent can arbitrarily divide the dataset into training/testing, which equals 2/3 and 1/3 of the data samples, respectively, for Ensemble Classification. The Payload was set to 0.2, meaning a single bit of secret message is inserted into every  defined (n = 3) pixel of the original image. The Ensemble classifier performance in both training and testing was evaluated in two different scenarios. The first scenario is tested with message length ranging between 16777 and 55929 bits using the English language with a minimum 20% training dataset. The following sequence of (1,0) displays the binary representation. 010001100110000101110100011011010110000101101000001000000100001001100001011011110111010-0011010000110110101100001011011100010000000001010 The second scenario uses a bilingual (Arabic/English) message in the range between 16777 and 55929 bits. The following sequence of (1,0) displays the binary representation with a maximum 50% training dataset. 0100011001100001011101000110110101100001011010000010000001000010011000010110111101110100 011010000110110101100001011011100010000000001010 1100010100011000110011110010001010010000011 0001001111100100010011001000100110010001110010000011000100111110010001001100011000111000101 10111001000101110010001100010000011000100111110010001001100011000111000101101110010010101100 1000101 The Receiver Operating Characteristics (ROC) curves show both Ensemble classifier scenarios in Figures 6 and 7. The area under the ROC curve displays the accuracy measure; if the Ensemble classifier has an area of 1.0, it means that the accuracy is perfect. The vertical axis represents the True Positive Rate, while the horizontal axis represents the False Positive Rate. The closer the curve to the top, the more accurate the classifier becomes. It is clear that a strong accuracy rate was generated using bilingual messages; the reason could be related to the training techniques.  Toward agent-based LSB image steganography system  911 6 The proposed method using agent-based steganography system The proposed agent system would perform the embedding and extracting the secret message's task in an image for the end-user. The recommended selection should be based on some extracted statistical features from an image. Hence, the agent would analyze several image properties; and based on the tested properties results, the agent would select the best cover image to perform steganography. The image statistical feature properties calculated by the agent are: • Histogram: it is a plot diagram for displaying the numerical distribution of data indicating gray level values against the pixels' number.
where N(g) is some pixels at gray level g, and M is some pixels in an image. where I(r,c) is the value of the image pixel. • Standard deviation: represents the square root of variance. It will identify the contrast in an image • Entropy: entropy is a measure bits' number needed for coding the image's data. The entropy increases if the pixels' values distributed fall more within the gray area. The designed steganographic agent seeks to find a cover image from the database with high variance, deviation, and entropy. The agent selects the object's cover suitable to insert a less or nearly similar message to the cover image size. The framework of proposed steganography-based agents is presented in Figure 8. In summary, the agent would be situated at random on the image (the environment). Selecting a proper cover image based on the above-mentioned six statistical features (Histogram, Mean, Standard deviation, Entropy, Variance, and Energy) for steganography is highly significant as it impacts the result obtained significantly from the proposed system and influenced the security of the produced stego image.

The implementation
An agent helps in the steganography task by deciding on the best cover image from a set of images; thus, the selection of the cover image is highly significant because it impacts the security of the stego systems and the visual appearance artifacts after performing the steganography task. The agent analyzes the images' features and accordingly selects the images to perform LSB steganography on them with minimum artifacts. The image features include mean, entropy, variance, contrast, energy, and standard deviation. For example, the agent would look for images with high contrast, entropy, and energy value to be used as cover images for high Payload. Table 2 presents an example of the six extracted statistical features from a grayscale cover image Lena downloaded from the SIPI image database page with a 256 × 256 dimension The implementation of the features' extraction by applying the LSB steganography algorithm (see Section 4) was conducted using Matlab. In this context, an architecture based on software agents was developed using Matlab that works as a development platform, receiving the requests and processing their respective requisitions. Below is a snippet of Matlab code for the embedding.  The software agent performs the decision-making; the architecture is characterized as a simple reflection agent due to the user's limited interaction and is relatively autonomous. The agent performs a preestablished action, thus being purely reactive. When the user is interested in performing some tasks (insert an image, secret message, steganography), the system sends a request to the agent to execute the task; the agent performs the request and responds to the user whether the task was executed or not as illustrated in Figure 9.

Evaluation of stego images
Steganographic techniques are commonly assessed using three criteria: imperceptibility, capacity, and security. Imperceptibility is considered the most important, but in the following subsections, all three are discussed in subsection A-D below [51,52]. A further important numerical metric is the peak signalto-noise ratio outlined in subsection E.

Imperceptibility
Reducing any suspicions about the Payload presence in cover work is very critical. Any speculation about the integrity of the cover detracts from the purpose of stenography and invites cryptanalysis.

Payload capacity
Capacity represents the size ratio between the cover medium and the secret message [53]. Steganography aims to hide Payload; hence, the more Payload capacity an algorithm achieves, the better this aim is served. There is, however, a balance between the capacity's Payload and invisibility/imperceptibility.

Securityrobustness against statistical attack
Statistical attacks aim to detect a Payload's embedding by applying a set of statistical tests of image data. Some steganographic systems generate signatures or artifacts when hiding a secret message. An algorithm must not leave an artifact to guide statistical attacks [52].

Securityrobustness against image manipulation
During the transmission of a stego message over a communication channel, changes might occur through channel noise. It is also cropping, rotating, or resizing, causing the Payload to be corrupted. Vulnerability to corruption depends on the method used for embedding the Payload. An embedding algorithm should show as little vulnerability as possible [27,46]. 8.5 PSNRpeak signal to noise ratio PSNR indicates a performance image measure alteration captured during a Payload embedding procedure [54]. PSNR measures the level of similarity that the cover and the stego share. PSNR uses decibels (db) for measurements. It can be performed on stego photos to evaluate the quality. A considerable PSNR value reflects a high-quality image which indicates that both the original photo and the stego photo are very similar to each other [55][56][57][58][59]. To calculate PSNR using log: where (255) is the maximum 8 bits value representation of a pixel; while MSE indicates the mean squared error or difference between the cover and the stego photo in pixel's values, given as where M and N represent the photo's dimensions, x and y denote the photo coordinates, C x y , denotes the cover photo, and S x y , represents the stego photo. The authors considered the LSB steganography method using the developed steganography agentbased technique to embed a random secret message into the original images. In this pass of evaluation, the above six different features were implemented for the set 0.2 Payload [60][61][62][63][64][65][66][67][68][69][70][71][72][73]. The training/testing samples were set both equal to 50%. Figure 10 shows the very strong accuracy rate for the developed agentbased LSB steganography and its capability to select the best cover image for the provided secret message size, almost without noticeable changes to the original image as shown in Figure 11(a-c).
The primary study limitations include no standard steganography dataset, and new techniques such as deep-learning could be used. Quantum technology is recommended to handle multi-agents, multilingual, and multiprocessing systems.

Conclusion
The past few years have revealed a growing interest in image steganography research. Three essential parameters used in the design process of a steganography algorithm are Payload, security, and fidelity. The Payload is known as the amount of hidden information embedded in the cover object. Security is the inability of the steganalysis system to discover the embedded secret messages. Fidelity is also known as imperceptibility, which refers to how hard it is for humans to distinguish the image's cover from the secret message. Deciding on a proper image to implant a secret message to an end-user requires an understanding of the cover image, which may not be compatible with the length of the secret message. This work investigated a novel steganography technique based on the agent technology framework using LSB. The experiment used six statistical feature measures: histogram, mean, standard deviation, entropy, variance and energy. A steganography Ensemble classifier was implemented to evaluate the suggested metrics using ROC curve. The result shows that the designed agent-based system could select the best cover image for the provided secret message size to avoid visual artifact.
For future work, multi-processing multi-agent software can be designed to handle massively comparative studies with different techniques and generate a single dataset from all available open-access steganography datasets with unified features and parameters.
Acknowledgment: The authors, therefore, gratefully acknowledge DSR's technical and financial support.

Conflict of interest:
The authors declare that there is no conflict of interest regarding the publication of this paper.