STEGANOGRAPHY USING IMAGES - Mu.edu.sa

Transcription

Kingdom of Saudi ArabiaMajmaah UniversityMinistry of Higher EducationFaculty of scienceDept. of Computer ScienceSTEGANOGRAPHY USING IMAGESByGhadeer Fahad AlfuhaidID:351204862Supervised by:T. Hajer brahimThis Project Documentation is submitted in partial fulfillment for therequirement for the Degree of B.Sc. inComputer Science and informationApril /2018STEGANOGRAPHY USING IMAGESI

Committee Report Page: This is to certify that the project team has submitted their workon time and that the Committee has reviewed the content and evaluated the work. Thefollowing is a committee report page example:COMMITTEE REPORTWe certify that we have read this graduation project report as examiningcommittee, examined the student in its content and that in our opinion it isadequate as a project document for B.Sc. in Computer Science andinformation.Supervisor:Examiner1:Name: . . . . . . .Examiner2:Name: . . . . . . . . Name: . . . . . . .Signature. . . . . . Signature . . . . . . Signature . . . . .Date: / /Date: / /Date: / /STEGANOGRAPHY USING IMAGESII

DEDICATIONWe all have dreams. But in order to make dreams come into reality, it takes an awful lot ofdetermination, dedication, self-discipline, and effort.And without the support of our caring and darling people this project will just stay adream.I like to dedicate this project:To my beloved mothers, fathers and family, without you the life is tasteless and the road isendless. You are the most important thing in my world.To my friends, the ones who made the best memories of my life and the ones who made itworthy to walk the extra mile while we were about to give up.STEGANOGRAPHY USING IMAGESIII

ACKNOWLEDGMENTFirstly, we would like to express our sincere gratitude to our project supervisor T. HajerBrahim, for the continuous support of this project and his patient guidance, enthusiasticencouragement and useful critiques, motivation, and immense knowledge.We would like to thank the rest of our thesis committee, T.Nora Alneghaimshi, for theirguidance helped, insightful comments and encouragement, also for the hard question whichincited me to widen my research from various perspectives. Our sincere thanks also go toall the staff members of the department for the valuable information provided by them intheir respective fields. We are grateful for their cooperation during the period of our project.Finally, we would like to thank our family for supporting us spiritually during working onthe project and our friends who gave us moral support and encouragement throughout theproject study.STEGANOGRAPHY USING IMAGESIV

ABSTRACTData hiding is the art of hiding data for various purposes such as; to maintain private data,secure confidential data and so on. Securely exchange the data over the internet network isvery important issue. So, in order to transfer the data securely to the destination, there aremany approaches like cryptography and steganography. In this project we propose a LSB& DCT-based steganographic method for hiding the data by applying Least Significant Bit(LSB) algorithm for embedding the data into the images which is implemented throughthe Microsoft .NET framework using the C#.NET.Keywords: Least Significant Bit, Discrete Cosine Transform, Steganography.STEGANOGRAPHY USING IMAGESV

TABLE OF CONTENTSDEDICATION. IIIACKNOWLEDGMENT . IVABSTRACT .VTABLE OF CONTENTS. VILIST OF TABLES . VIIILIST OF FIGURES . IXLIST OF SYMBOLS, ABBREVIATIONS AND NOMENCLATURE.XCHAPTER 1 : INTRODUCTION . 111.1 INTRODUCTION . 111.2 PROJECT DEFENITION . 111.3 STATEMENT OF PROBLEM. 121.4 PROJECT OBJECTIVES . 121.5 ARCHITECTURE & COMPONENTS . 121.6 PROJECT SCOPE . 131.7 STEGANOGRAPHY ARCHITECTURE . 131.7.1 STEGANOGRAPHY TYPES . 151.7.2 STEGANOGRAPHY ALGORITHMS . 161.8 ORGANIZATION CHART AND RESPONSIBILITIES . 181.9 SUMMARY. 18CHAPTER 2 : LITERATURE REVIEW . 19INTRODUCTION . 192.1 SIMILAR SYSTEMS COMPARISON . 192.2.1 WHITE NOISE STORM. 192.2.2 STEGODOS . 202.2.3 STEGCURE . 202.3 SIMILAR TOOLS COMPARISON . 212.4 RECOMMENDATIONS . 21CHAPTER 3 : SYSTEM ANALYSIS . 233.1 INTRODUCTION . 233.2 STAKEHOLDERS . 233.4 NON-FUNCTIONAL REQUIREMENTS . 25STEGANOGRAPHY USING IMAGESVI

3.5 SEMI-FORMAL REQUIREMENTS . 263.5.1 GENERAL USE CASE DIAGRAM. 263.5.2 ACTORS . 263.5.4 HARDWARE AND SOFTWARE REQUIREMENTS . 273.6 PREDESIGN . 303.7 CONCLUSION. 30CHAPTER 4 : SYSTEM DESIGN . 314.1 INTRODUCTION . 314.2 STRUCTURAL VIEW . 314.2.1 CLASS DIAGRAM . 314.3 BEHAVIORAL VIEW . 324.3.1 SEQUENCE DIAGRAM . 324.3.2 ACTIVITY DIAGRAM . 324.3.3 DATA FLOW DIAGRAM . 34CHAPTER 5 : IMPLEMENTATION & TESTING. 355.1 SCREEN SHOTS OF THE SYSTEM:. 355.2 DEFINITION AND THE GOAL OF TESTING . 415.3 METHODS OF TESTING . 435.3.1 UNIT TESTING . 435.3.2 VALIDATION TESTING . 435.3.3 OUTPUT TESTING. 445.3.4 INTEGRATION TESTING . 445.4 USER ACCEPTANCE TESTING . 455.5 BLACK BOX AND WHITE BOX TESTING . 455.6 TEST CASES . 46CHAPTER 6 : CONCLUSION AND FUTURE RECOMMENDATION . 476.1 CONCLUSIONS . 476.2 FUTURE RECOMMENDATIONS . 47REFERENCES . 48APPENDICES . 49EMBED FILE CODING . 49EXTRACT FILE CODING . 52STEGANOGRAPHY USING IMAGESVII

LIST OF TABLESTable 2-1: Similar tools comparison . 21Table 3-1: Stakeholders . 23Table 3-2: Use case description – Embedding process . 24Table 3-3: Use case description – Extracting process . 25Table 5-1: Test Cases . 46STEGANOGRAPHY USING IMAGESVIII

LIST OF FIGURESFigure 1-1: Pure Steganography . 15Figure 1-2: Secret Key Steganography . 16Figure 1-3: Public Key Steganography . 16Figure 3-1: Use case diagram . 26Figure 4-1: Class diagram . 31Figure 4-2: Sequence diagram - . 32Figure 4-3: System Activites Activity Diagram . 33Figure 4-4: Context Diagram . 34Figure 5-1: Embed File - Encryption Phase . 35Figure 5-2:Extract File - Decryption Phase . 36Figure 5-3:Choose a cover file dialog . 37Figure 5-4: Choose a file to embed dialog . 38Figure 5-5:Save as dialog. 38Figure 5-6:Select Encryption Type Message box . 39Figure 5-7: Decrypt file successfully message . 39Figure 5-8: Hide file successfully message . 40Figure 5-9:Test Information Flow . 42STEGANOGRAPHY USING IMAGESIX

LIST OF SYMBOLS, ABBREVIATIONS AND NOMENCLATURELSBLast Significant BitDCTDiscrete Cosine TransformSTEGANOGRAPHY USING IMAGESX

CHAPTER 1 : INTRODUCTION1.1 INTRODUCTIONThe growing use of Internet needs to take attention while we send and receivepersonal information in a secured manner. For this, there are many approaches that cantransfer the data into different forms so that their resultant data can be understood if it canbe returned back into its original form. This technique is known as encryption. However, amajor disadvantage of this method is that the existence of data is not hidden. If someonegives enough time then the unreadable encrypted data may be converted into its originalform.A solution to this problem has already been achieved by using a “steganography”technique to hide data in a cover media so that other cannot notice it. The characteristics ofthe cover media depends on the amount of data that can be hidden, the perceptibility of themessage and its robustness.In this document, I propose a new system for hiding data stands on many methodsand algorithms for image hiding where I store on data file, called sink file in an image filecalled as container image. The primary objective is to use steganography techniques so asto provide more security and simultaneously using less storage.1.2 PROJECT DEFENITIONIn this project, we propose to develop a system to hiding data by using"STEGANOGRAPHY" technique as I used many methods stands on some techniques tohave at the back-end a software for hiding data based on hiding algorithms.After studying the data hiding algorithms we found many ways to hiding data byusing the multimedia files and the main question for me was "Where hidden data hides?" aswe found by our search to know where the data hides it's important to know what is the filetype of the data that it shall be hidden and the cover file type so it is possible to alter graphicor sound files slightly without losing their overall viability for the viewer and listener. Withaudio, you can use bits of file that contain sound not audible to the human ear. With graphicimages, you can remove redundant bits of color from the image and still produce a pictureSTEGANOGRAPHY USING IMAGES11

that looks intact to human eye and is difficult to discern from its original. It is in those bitsthat stego hides its data.By the final of our research we developed a software uses an algorithm, to embeddata in an image; The purposed system is called "Steganography", the aim of this project isto encrypt the data; the meaning of encrypt is to hide the data over an image using differentsteganographic algorithms, in this system LSB is the algorithms that we use to hiding thedata.1.3 STATEMENT OF PROBLEMThis project addresses the security problem of transmitting the data over internetnetwork, the main idea coming when we start asking that how can we send a messagesecretly to the destination? The science of steganography answers this question. Usingsteganography, information can be hidden in carriers such as images, audio files, text files,videos and data transmissions.In this document, we proposed some methods and algorithms of an image steganographysystem to hide a digital text of a secret message.1.4 PROJECT OBJECTIVESIn this project we primarily concentrated on the data security issues when sending thedata over the network using steganographic techniques.The main objectives of our project are to product security tool based on steganographytechniques to hider message carried by stego-media which should not be sensible to humanbeings and avoid drawing suspicion to the existence of hidden message.1.5 ARCHITECTURE & COMPONENTSIn the proposed system we concentrate on finding some algorithm to hide the datainside images using steganography technique. An algorithm is designed to hide all the datainputted within the image to protect the privacy of the data. Then, the system is developedbased on the new steganography algorithm.STEGANOGRAPHY USING IMAGES12

This proposed system provides the user with two options encrypt and decrypt thedata, in encryption the secret information is hiding in with image file, and on the other sidethe decryption is getting the hidden information from the stego image file, and also the usercan show the image size after and before the encryption.The processes of encryption and decryption of the data file consists of: Providing security for the data to be transmitted through network usingsteganography.Proposing an approach for hiding the data within an image using a steganographicalgorithm which provides better accuracy and quality of hiding.Microsoft Techniques is used through the .NET framework to extensively analyze thefunctions of the LSB algorithm in steganography. Texts and other file formats are encryptedand embedded into an image file which is then transferred to the destination.1.6 PROJECT SCOPEOur project scope is developed for hiding information in any image file to ensurethe safety of exchange the data between different parties and provide better security duringmessage transmission.The scope of the project is implementation of steganography tools for hidinginformation includes any type of information file and image files and the path where theuser wants to save image and extruded file. We will use LSB technique; the proposedapproach is to use the suitable algorithm for embedding the data in an image files; we willshow a brief of this algorithm that we used to hiding data.1.7 STEGANOGRAPHY ARCHITECTURESteganography is the art of hiding and transmitting data through apparentlyinnocuous carriers in an effort to conceal the existence of the data, the word Steganographyliterally means covered or hiding writing as derived from Greek. Steganography has itsplace in security. It is not intended to replace cryptography but supplement it. [1]Hiding a message with Steganography methods reduces the chance of a messagebeing detected. If the message is also encrypted then it provides another layer of protection.STEGANOGRAPHY USING IMAGES13

Therefore, some Steganographic methods combine traditional Cryptography withSteganography; the sender encrypts the secret message prior to the overall communicationprocess, as it is more difficult for an attacker to detect embedded cipher text in a cover. Ithas been used through the ages by ordinary people, spies, rulers, government, and armies.There are many stories about Steganography. [1]For example, ancient Greece used methods for hiding messages such as hiding Inthe field of Steganography, some terminology has developed. The adjectives 'cover','embedded', and 'stego' were defined at the information hiding workshop held in Cambridge,England. The term "cover" refers to description of the original, innocent massage, data,audio, video, and so on. Steganography is not a new science; it dates back to ancient times.[1]Hidden information in the cover data is known as the "embedded" data andinformation hiding is a general term encompassing many sub disciplines, is a term arounda wide range of problems beyond that of embedding message in content. The term hidinghere can refer to either making the information undetectable or keeping the existence of theinformation secret. [1]Information hiding is a technique of hiding secret using redundant cover data suchas images, audios, movies, documents, etc. This technique has recently become importantin a number of application areas. For example, digital video, audio, and images areincreasingly embedded with imperceptible marks, which may contain hidden signatures orwatermarks that help to prevent unauthorized copy. It is a performance that inserts secretmessages into a cover file, so that the existence of the messages is not apparent. [1]Research in information hiding has tremendous increased during the past decadewith commercial interests driving the field. Although the art of concealment “hiddeninformation” as old as the history, but the emergence of computer and the evolution ofsciences and techniques breathe life again in this art with the use of new ideas, techniques,drawing on the computer characteristics in the way representation of the data, well-knowncomputer representation of all data including ( Multimedia) is binary these representationsare often the digital levels and areas and change values-aware of slight not aware or felt byMeans sensual of human such as hearing, sight, the advantage use of these properties to hidedata in multimedia by replace the values of these sites to the values of data to be hidden,STEGANOGRAPHY USING IMAGES14

taking into account the acceptable limits for the changeover, and not exceeded to preventdegradation media container with a change becomes aware and felt by human. It should benoted here that although the art of hidden information come in the beginning of the computerand its techniques However, the seriousness of the work in the stenography as a stand-alonescience started in 1995. [1]1.7.1 Steganography TypesAs it is known there is much communication between people and organizationsthrough the use of the phone, the fax, computer communications, radio, and of course all ofthese communications should be secure. There are basically three Steganography types: Pure Steganography.Secret key Steganography.Public key Steganography.1.7.1.1 Pure SteganographyPure Steganography is a Steganography system that doesn't require prior exchangeof some secret information before sending message; therefore, no information is requiredto start the communication process: the security of the system thus depends entirely on itssecrecy. [1]Figure 1-1: Pure SteganographyIn most applications, pure Steganography is preferred, since no stego-key must beshared between the communication partners, although a pure Steganography protocolsdon't provide any security if an attacker knows the embedding method. [1]1.7.1.2 Secret Key SteganographyA secret key Steganography system is similar to a symmetric cipher, where thesender chooses a cover and embeds the secret message into the cover using a secret key. IfSTEGANOGRAPHY USING IMAGES15

the secret key used in the embedding process is known to the receiver, he can reverse theprocess and extract the secret message. [1]Anyone who doesn't know the secret key should not be able to obtain evidence ofthe encoded information. [1]Figure 1-2: Secret Key Steganography1.7.1.3 Public Key SteganographyPublic key Steganography does not depend on the exchange of a secret key. Itrequires two keys, one of them private (secret) and the other public: the public key is storedin a public database, whereas the public key is used in the embedding process. The secretkey is used to reconstruct the secret message. [1]Figure 1-3: Public Key Steganography1.7.2 Steganography AlgorithmsFor encryption and decryption of text messages using the secret keys steganographicsystem uses algorithms known as steganographic algorithms. The mostly used algorithmsfor embedding data into images are: LSB (Least Significant Bit) Algorithm (Our domain)JSteg AlgorithmSTEGANOGRAPHY USING IMAGES16

F5 Algorithm1.7.2.1 LSB AlgorithmLSB embedding is the most common technique to embed message bits DCTcoefficients. This method has also been used in the spatial domain where the least significantbit value of a pixel is changed to insert a zero or a one. A simple example would be toassociate an even coefficient with a zero bit and an odd one with a one-bit value.In order to embed a message bit in a pixel or a DCT coefficient, the sender increasesor decreases the value of the coefficient/pixel to embed a zero or a one. The receiver thenextracts the hidden message bits by reading the coefficients in the same sequence anddecoding them in accordance with the encoding technique performed on it.The advantage of LSB embedding is that it has good embedding capacity and thechange is usually visually undetectable to the human eye. If all the coefficients are used, itcan provide a capacity of almost one bit per coefficients using the frequency domaintechnique. On the other hand, it can provide a greater capacity for the spatial domainembedding with almost 1 bit per pixel for each color component. However, sending a rawimage such as a Bitmap (BMP) to the receiver would create suspicion in and of itself, unlessthe image file is very small. Fridrich et al. proposed a steganalysis method which providesa high detection rate for shorter hidden messages [2].Westfeld and Pfitzmann proposed another steganalysis algorithm for BMP imageswhere the message length is comparable to the pixel count. Most of the popular formatstoday are compressed in the frequency domain and therefore it is not a common practice toembed bits directly in the spatial domain. Hence, frequency domain embeddings are thepreferred choice for image steganography [2].STEGANOGRAPHY USING IMAGES17

1.8 ORGANIZATION CHART AND RESPONSIBILITIESFigure 1-1 : Organizational chart1.9 SUMMARYThis chapter gave an introduction about steganography and the meaning of hidingdata; also, the problem research and the importance of Steganography in transmit the dataover the network, for that reason in this document we propose a system to hiding andembedding the data inside images. Also, it provided what is the purpose and objectives ofour project.STEGANOGRAPHY USING IMAGES18

CHAPTER 2 : LITERATURE REVIEWINTRODUCTIONIn this chapter, we will provide an overview of steganography using LSB to hide the filesinside images using the C#.NET technical computing language, it is developmentenvironment is used in a variety of domains, such as image and signal processing, C# offersmany “toolboxes”, and a simple interface to high-performance libraries, one of the mostadvantages is a large user community with lots of free code and knowledge sharing and theability to process both still images and video. It is popular because of its ease and simplicity.Also, we will mention some programs that have the same approach it is using an encryption.Then, we will give the recommendation that help to develop our program.In this project, use a method of encrypting any data file in an image file. This process ofhiding the data helps to sharing the information with others over the internet networkwithout any potential risk. The proposed system will help to hide the content with in theimage and encryption of data file with in the image will help to make the document muchsecurer.In this research, developed the proposed system by using steganographic algorithm whichis LSB and a technique for hiding capacity and efficiency of hiding the message with in animage.2.1 SIMILAR SYSTEMS COMPARISON2.2.1 White Noise StormWhite Noise Storm is a DOS based tool that could easily embed secret messagesin cover images without any degradation. However, the integrity of the cover imagecould be severely affected by noise. The tool uses LSB steganography technique toembed secret messages in PCX files. The main disadvantage of this tool is the loss ofmany bits that can be used to hold information. Additionally, it uses large cover images tostore information that it could be stored in a smaller cover images using other tools [3].STEGANOGRAPHY USING IMAGES19

2.2.2 StegoDosStegoDos is public domain software that only works on 320x200 pixel images with256 colors. The tool uses LSB steganography technique to hide secret messages. The maindisadvantage of the tool is the size restriction that limits the user’s cover image to320x200 pixels in-order to have a stego-image that is similar to the original one. Anotherdisadvantage is the dependence on the end-of- file character to end the message thatdoes not have any significance work since the message after retrieval appears tocontain garbage [3].Figure 2-1 : StegoDos2.2.3 StegCureStegCure uses three different LSB steganography techniques. In compared with the othertools, StegCure offers a better security and has a user-friendly functionality withinteractive graphical user interface (GUI) and integrated navigation capabilities. Also, itcan prevent any attacks by restricting the user to one attempt to retrie

STEGANOGRAPHY USING IMAGES II Committee Report Page: This is to certify that the project team has submitted their work on time and that the Committee has reviewed the content and evaluated the work. The following is a committee report page example: