Keywords

1 Introduction

In today’s environment, information technology is the most important factor [1,2,3]. Based on this fact, computer applications are still being developed to better manage financial and personal data in a safe manner [4,5,6,7]. These data are incredibly valuable in every way, and we must protect them from illegal access. The process of preventing and detecting unwanted data, computer, or network usage is known as security [8]. Preventative measures assist us in preventing unauthorized users from gaining access to any component of the computer system [9]. Detection aids in determining whether someone attempted to break into the system, if they were successful, and what they did. We may employ a variety of encryption approaches to attain that security. However, data encryption is no longer sufficient, and we must additionally safeguard the existence of data if we want to achieve good security [10, 11].

The Rivest-Shamir-Adleman (RSA) Algorithm becomes necessary at this point. However, we must keep in mind that neither cryptography nor the RSA method can guarantee entire security for data or information, thus we must use both approaches to obtain necessary security. There are a variety of ways to accomplish this, but we’ll focus on techniques for modifying information in such a manner that the receiver can reverse the change and recover the original content [10, 12]. Although the RSA method is sometimes mistaken with cryptography, there are several significant and clear distinctions between the two. Because the cypher text is a scrambled output of the plaintext in cryptography, the attacker can predict that encryption has been conducted and so use decryption techniques to obtain the secret data in some scenarios, the RSA Algorithm is generally preferable over cryptography [12]. Furthermore, cryptographic approaches frequently necessitate a lot of computer power to execute encryption, which can be a big problem for small devices that don’t have enough computing power [8]. To disguise the data in this paper, a bitmap (bmp) picture will be employed. The pixels will be used to insert data into the picture. The RSA technique may then be used to recover the concealed data inside the picture [8].

The remainder of the paper is structured as follows: Sect. 2 will discuss some related works, Sect. 3 to present the Image Data Hiding Algorithm for Donathan Hutchings, Sect. 4 contains the System Implementation Using RSA Algorithm, Sect. 5 gives the system evaluation, and the final Sect. 6 to conclude the paperwork.

2 Related Works

Kuo et al. has proposed a reversible adaptive data concealing technique which is a novel strategy based on the histogram and slope method that improves data concealing capacity while simultaneously increasing efficiency and maintaining image quality [13]. Ma et al. has another strategy which was introduced, they used a method called reversible data hiding (RDH). The space for data embedding is discovered in this method by examining the redundancy in the provided picture. Because of the storage capacity of secret data and the visual quality of embedded images, this approach is the finest of all the techniques in literature survey. In addition, when compared to other methods, this has a low computing complexity [14]. Xioatian et al. proposed another technique for partitioning an image into many encrypted shares to safeguard it [15]. When sufficient shares were obtained, the image can be losslessly retrieved. The study implements an image encryption algorithm using Shamir’s secret sharing methods. Ref. [16] introduced a unique reversible data hiding in encrypted images (RDHEI) technique that synchronizes embedding and re-encryption and is well implemented by a data hider that uses a permutation ordered binary (POB) number system. This approach uses two peak locations for embedding, but it completely disregards the previous idea of a shifting process. The proposed method’s superiority was confirmed by the experimental results.

Another high-capacity RDHEI technique based on multi-MSB (most significant bit) prediction and Huffman coding was introduced in ref. [17]. Initially, the multi-MSB of each pixel was adaptively anticipated and marked in the original image using Huffman coding. The image was then encrypted using the stream cypher approach. Finally, utilizing multi-MSB replacement, the empty space was utilized to embed more data. The proposed approach achieved a higher embedding capacity, according to the experimental data.

In [12] a new hybrid approach combining RSA and steganography was introduced. The RSA technique was employed to encrypt and decode the secret file for image compression in the study. Furthermore, the two algorithms were used to compress images for both lossy and lossless compression techniques. This approach has a larger capacity, allowing the total message bits to be reduced by up to 25% of the original message bits. Achieving an average PSNR score of above 40db and SSIM nearest to the unit also demonstrates good stego-image quality.

It is more broadly concerned with establishing and analyzing protocols that are resistant to adversarial impact and are linked to various aspects of information security, including data secrecy, data integrity, authentication, and non-repudiation. However, the modern cryptography brings together mathematics, computer science, and electrical engineering. Cryptography applications include ATM cards, computer passwords, and electronic commerce. The usage of a key file, full-volume encryption, and plausible deniability are only a few of the features. The broad availability of software that performs these activities has significantly disadvantaged the area of digital forensics. Most of the open-source encryption software allows users to build virtual encrypted drives that can only be accessed with a certain key. These programs make data practically impossible to read without the required key by employing advanced encryption algorithms and techniques.

3 Image Data Hiding Algorithm for Donathan Hutchings

This algorithm embeds the text inside a graphic file and creates a key file to be used to read the message later.

Input: Image File, Secret_Message.

  1. a.

    Determine the size of the Image File.

  2. b.

    Determine the length of the Secret_Message.

  3. c.

    Determine the offset to use when embedding the Secret_Message. //This gives a reliable starting position based on the sizes of the Image_File and Secret_Message.

  4. d.

    Loop through the Image_File data and begin placing one Secret_Message byte at a time.

  5. e.

    Make sure we are not at the end of the Secret_Message. //This keeps the loop above to continue swapping the Image_File byte with the Secret_Message byte.

  6. f.

    Expand our key data array. //This array stores the locations of each Secret_Message byte.

  7. g.

    Store the location of the whole Secret_Message byte.

  8. h.

    Create a new Image_File with the Secret_Message inside.

  9. i.

    Create the key file.

Output: Stego_Image.

Input: Stego_Image _File.

This algorithm reads the message stored in a graphics file.

  1. a.

    Determine the size of the Image_File.

  2. b.

    Determine the length of the Secret_Message.

  3. c.

    Read the Image_File byte data into a byte array.

  4. d.

    Read our message location data from the key file.

  5. e.

    Loop through the Image_File data to find our message and construct our actual Secret_Message.

  6. f.

    Get the message byte from the Image_File data.

  7. g.

    Convert the byte data back to our original Secret_Message.

Output Secret_Message.

3.1 Implementation

The use case diagram depicts the system’s users, its components, and the interactions that exist between them (Fig. 1 and Fig. 2).

Fig. 1.
figure 1

Data retrieval process

Fig. 2.
figure 2

Use case diagram

3.2 User Interface Design

When you launch the programme, the first interface that displays on the screen is illustrated is Fig. 3, Encrypt Image and Decrypt Image are the two-tab options for encryption and decryption, respectively. The right top panel displays image information such as size, height, and width.

Fig. 3.
figure 3

Interface

3.3 Image Tab Encryption

The equation should be submitted in the equation editor and should be keyed in as below in editable text:

  1. a.

    To encrypt an image, go to the encrypt image tab (Fig. 4).

Fig. 4.
figure 4

Encryption tab

  1. b.

    Click the “Browse” button next to the Load Image textbox to load an image. Select the Image file that you wish to use to hide your information and click the Open button in the file open dialogue box that appears (Fig. 5).

Fig. 5.
figure 5

Load Image interface

  1. c.

    The image file will open and look like the Fig. 6 below. Then, next to the Load File textbox, select the “Browse” button.

Fig. 6.
figure 6

Load image preview

  1. d.

    The file open dialogue box will appear once more; select any file you want to hide within the image and click the open button (Fig. 7).

Fig. 7.
figure 7

Open file dialog for the encryption file

  1. e.

    Encrypting the file is the next step. When you click the “Encrypt” button, a save dialogue box will appear, asking you to choose a location for the new image file and a name for it (Fig. 8 and Fig. 9).

Fig. 8.
figure 8

Save file dialogue box

Fig. 9.
figure 9

Interface after successful encryption

3.4 Image Tab Decryption

  1. a.

    To decrypt an image, go to the decrypt image tab (Fig. 10).

Fig. 10.
figure 10

Decrypt image tab

  1. b.

    After that, click the “Browse” button to enter the Open file dialogue box, where you must select the image that is encrypted and contains concealed data. Click on the Open button after selecting the image file (Fig. 11).

Fig. 11.
figure 11

Open encrypted file dialog box

  1. c.

    The image file looked like the Fig. 12 below:

Fig. 12.
figure 12

Encrypted image file display

  1. d.

    Now, next to the “Save file to” textbox, click “Browse” button. It will bring up a “Browse for Folder” dialogue box. It will prompt you to choose a path or folder to extract the hidden file from. Click the Ok button after selecting the folder (Fig. 13).

Fig. 13.
figure 13

Save file dialog box

  1. e.

    Now, click the Decrypt button, which will decrypt the image and save the secret file to the specified folder. The status bar, which is located at the bottom of the screen, displays the message for successful decryption (Fig. 14).

Fig. 14.
figure 14

Interface after successful decryption

4 System Implementation Using RSA Algorithm

This system was implemented using a parallel approach strategy. We construct a basic system that implements the RSA Algorithm based on the algorithm. The system is known as the Data Hiding System (DHS). According to the system’s framework, the first layer is for login purposes, and the second layer is for concealing, retrieving, and finally displaying concealed message file information interface. Below are the several user interfaces that make up the Data Hiding System (Fig. 15):

Fig. 15.
figure 15

Read hidden message interface

This form is used to decipher the secret message in the image. The user gets shown the hidden message in the picture file after selecting the image (Fig. 16).

Fig. 16.
figure 16

View message file details interface

This form is used to access the database of information about the hidden message pictures.

5 Evaluation

The equation should be submitted in the equation editor and should be keyed in as below in editable text:

The bitmap (BMP) format is the image file format utilized in this paper. Within the Microsoft Windows operating system, the BMP file format is used to store graphic files. BMP files are often uncompressed and hence big. The ease of use and widespread acceptance of BMP files in Windows programmes are two advantages of utilizing them. As a result, this picture type was chosen to be utilized in our paper. Because the BMP picture is quite huge in size, the pixels in the image are also relatively large. As a result, it has more room for binary codes to be encoded. In this new approach, we test various sizes of BMP pictures to observe the varied amounts of data being contained in the image, to improve the number of characters that may be hidden. Table 1 displays the various testing findings as well as a comparison of different sizes in a BMP picture using steganography software. As cover pictures, these BMP images are utilized.

Table 1. Comparison of different sizes in bitmap images.

As a result of the new system’s examination about various photos, we can infer that the method appears to downsize any size of bmp image from its original size to 286 KB, which greatly aids in data un-detection when sent over networks. The data concealment programme will hide the messages to be transmitted within an image file. This file may then be forwarded to the recipient by attaching it to the current message service. The receiver uses his copy of the data hiding software to read the concealed message in the image file after getting it as a mail attachment.

6 Conclusion

In this paper, a new system was created by utilizing Microsoft Visual Basic Programming Language and the Microsoft Access database to handle the system’s data. Moreover, a suggested Data Hiding System’s design was thoroughly explored, and the Donathan Hutchings technique was employed in implementation. The successful implementation of this paper ensures that the results of this research can be used by other researchers in the field of data information security; the benefits of the proposed strategies are illustrated through experimental data which increases the level of confidentiality of information exchange over the internet; access to information by malicious individuals such as hackers will no longer be possible because they will be unable to determine which form of media was used to hide the information; and government monitoring will no longer be possible because malicious individuals such as hackers will be unable to determine which form of media was used to hide the information. Therefore, the documentations in this paper are strongly suggested for comparable steganography data concealment studies. Finally, there were several suggestions made such as efforts to construct a steganography data concealment system in the future.