HIDING DIGITAL DATA IN IMAGE STEGANOGRAPHY USING SUBSTITUTION AND ADVANCED ENCRYPTION STANDARD ALGORITHM (AES) SHEIKH HIBBATUL ARIF BIN SHAIKH AHMAD BACHELOR OF COMPUTER SCIENCE (COMPUTER NETWORK SECURITY) UNIVERSITI SULTAN ZAINAL ABIDIN 2018
HIDING DIGITAL DATA IN IMAGE STEGANOGRAPHY USING
SUBSTITUTION AND ADVANCED ENCRYPTION STANDARD
ALGORITHM (AES)
SHEIKH HIBBATUL ARIF BIN SHAIKH AHMAD
BACHELOR OF COMPUTER SCIENCE
(COMPUTER NETWORK SECURITY)
UNIVERSITI SULTAN ZAINAL ABIDIN
2018
i
DECLARATION
I hereby declare that this report is based on my original work except for quotations
and citations, which have been duly acknowledged. I also declare that it has not been
previously or concurrently submitted for any other degree at Universiti Sultan Zainal
Abidin or other institutions.
________________________________
Sheikh Hibbatul Arif Bin Shaikh Ahmad
Faculty of Informatics and Technology UNISZA
Date : ..................................................
ii
CONFIRMATION
This is to confirm that:
The research conducted and the writing of this report was under my supervisor.
________________________________
Name : ..................................................
Date : ..................................................
iii
DEDICATION
Firstly and foremost, praised to Allah, the Most Gracious and the Most
Merciful for blessing me and giving me the opportunity to undergo and complete this
final year project.
I would like to take this opportunity to express my heartiest gratitude to my
supervisor, Puan Nor Aida Binti Mahiddin, for her teachings, kindness, patience, and
ideas towards this project.
Finally, I would like to thanks to Faculty of Informatics and Computing for the
chance to expose and explore students with this project. I would like to thank all the
lectures in Faculty of Informatics and Computing especially for giving me a great
support to complete the final year project.
iv
ABSTRACT
Steganography is the art or science in hiding. It is origin from the Greek work where
stegano (hiding) + graphy (writing). It is hiding a message rather than encoding it.
Basically it can be understand as hiding something into another something else. That
few problems nowadays when a few cases reportedly that some privacy and
confidential data had been steal from an unauthorized parties. Steganography is one of
the most powerful techniques to conceal the existence of hidden secret data inside a
cover object. Images are the most popular cover object for steganography and in this
project image steganography is propose. For easy way of to send secure data, this
project purpose to used substitution and Advanced Encryption Standard algorithm
(AES). The proposed method of this study is by using substitution and Advanced
Encryption Standard (AES) algorithm to design image steganography. In the proposed
method each image sample is converted into bits and then the text data is embedded.
AES is a symmetric-key algorithm is used to replace DES for more secure. Symmetric
(also known as secret-key) ciphers use the same key for encrypting and decrypting, so
the sender and the receiver must both know and use the same secret key. This project
expected to produce a stego image that can hide message that could be very secure.
Keywords: Steganography, Image Steganography, AES
v
ABSTRAK
Steganografi adalah seni atau sains dalam konsep bersembunyi. Ia berasal dari
perkataan Yunani di mana stegano (bersembunyi) + grafik (menulis). Pada asasnya ia
dapat difahami sebagai menyembunyikan sesuatu ke dalam sesuatu yang lain.
Terdapat beberapa masalah telah berlaku apabila beberapa kes dilaporkan dimana
maklumat privasi dan data sulit telah mencuri dari pihak yang tidak berwajib.
Steganography adalah salah satu teknik yang paling tepat untuk menyembunyikan
kewujudan data rahsia. Imej steganography adalah kaedah paling popular untuk
steganografi dan imej steganography telah dicadangkan untuk projek ini. Untuk
memudahkan penghantaran data yang lebih selamat, projek ini menggunakan kaedah
penggantian dan algoritma Advanced Encryption Standard (AES). Kaedah cadangan
kajian ini adalah untuk merekabentuk steganografi imej. Dalam kaedah yang
dicadangkan setiap sampel imej diubah menjadi bit dan kemudian data teks
dibenamkan. AES adalah algoritma yang menggunakan kunci simetrik untuk
menggantikan DES supaya lebih selamat. Symmetric (juga dikenali sebagai rahsia)
yang menggunakan kunci yang sama untuk menyulitkan dan menyahsulit, jadi
penghantar dan penerima mesti mengetahui dan menggunakan kunci rahsia yang
sama. Projek ini dijangka menghasilkan imej stego yang boleh menyembunyikan
mesej supaya lebih selamat untuk digunakan.
Kata kunci: Steganografi, Steganografi Imej, AES
vi
CONTENTS
PAGE
DECLARATION i
CONFIRMATION ii
DEDICATION iii
ABSTRACT iv
ABSTRAK v
CONTENTS vi
LIST OF TABLES viii
LIST OF FIGURES ix
CHAPTER I INTRODUCTION
1.1 Background 1
1.2 Problem statement 2
1.3 Objectives 2
1.4
1.5
Scopes
Limitation Of Work
3
4
1.6 Summary 4
CHAPTER II LITERATURE REVIEW
2.1 Introduction 5
2.2
2.3
Comparison Between Algorithms
Summary
5-9
10
vii
CHAPTER III METHODOLOGY
3.1 Introduction 11
3.2
3.3
3.4
Methodology Used
3.2.1 Analysis Phase
3.2.2 Planning Phase
3.2.3 Design Phase
3.2.4 Build and Testing Phase
3.2.5 Development Phase
System Requirement
Summary
12
12
13
13-17
18
18
19
20
REFERENCES 21
viii
LIST OF TABLES
TABLE TITLE PAGE
2.1 First table in chapter 2 5-9
3.3.1 First table in chapter 3 19
3.3.2 Second table in chapter 3 19
ix
LIST OF FIGURES
FIGURE TITLE PAGE
3.1 First figure in chapter 3 12
3.2 Second figure in chapter 3 14
3.3 Third figure in chapter 3 15
3.4
3.5
Fourth figure in chapter 3
Fifth figure in chapter 3
16
17
1
CHAPTER I
INTRODUCTION
1.1 BACKGROUND
Information is the communication of knowledge intelligence. It is appear that
information will explain and describing of that thing. Information security is one of
the most challenging problems in today's technological world. In the transmission of
secret data over the public network (Internet), a few cases reportedly that some
privacy and confidential data had been steal from an unauthorized / unintended
parties. So, it is important to secure the information. Steganography is chosen to solve
this problem. Steganography is the art of the most powerful technique to hiding the
data. The use of Steganography also has an important role in strengthening national
security. Steganography is defined as secret hiding. It can also be regarded as secret
sharing since messages can be shared secretly and it hard to be hacked. For this
project, it will purpose to implement of an image steganography in order to prevent
from extracting the data which is hidden in the cover image. I take choose the image
and hide secret information using substitution technique and Advanced Encryption
Standard (AES) algorithm to provide an extra layer of security. AES is a symmetric-
key algorithm which means that same key is used for both decryption and encryption
of data.
2
1.2 PROBLEM STATEMENT
Information security is one of the most challenging problems in today's
technological world. In the transmission of secret data over the public network
(Internet), a few cases reportedly that some privacy and confidential data had been
steal from an unauthorized / unintended parties.
1.3 OBJECTIVES
In my project I primarily concentrated on the data security issues when
sending the data over the network using image steganography. The main objectives of
this project are:
1. To design image steganography algorithm using substitution technique
2. To develop image steganography for store secret message in image
3. To prevent data or information being viewed by third party by using
encryption
3
1.4 SCOPES
Focuses on hiding the data by using substitution technique
Using AES algorithm combined with substitution technique
1.4.1 User scope
The scope includes two main users. First, is the sender and secondly is the
receiver. It is directly send from the sender to its receiver.
USER: Sender and receiver.
Sender: (embedding process)
Choose an image to cover the secret message
Write the message
Enter key pair
Select encode process and send to the receiver
Receiver: (extraction process)
Select decode process
Enter private key pair
Get the real message
4
1.5 LIMITATION OF WORK
Image steganography will be saved in format image.png only.
The format of hidden message must be in text only
1.6 SUMMARY
In this chapter, focuses on the project background, problem statements,
objectives, and scopes of the project. The purpose for this project was identified to
overcome the problem that occurs in the environment. Besides, the function of the
project and the limit of the project also were identified.
5
CHAPTER II
LITERATURE REVIEW
2.1 INTRODUCTION
The main objective of this project is to hide message in Image Steganography using
substitution technique combine with Advanced Encryption Standard (AES) algorithm.
In this chapter, it will discuss about comparison between algorithms. It can be
guideline to develop a new system so that the new system can provide a better
functionality compared to the old system.
2.2 COMPARISON BETWEEN ALGORITHMS
Algorithm Description Environment
Advanced Encryption
Standard (AES)
Algorithm
Basically, generates random pixel
position. Here, information become more
secure because the algorithm selects the
position randomly using AES. AES is a
symmetric-key algorithm that replace
DES for more secure. It use the same key
for both decryption and encryption of
data.
It is used in
defense
organizations so
that data can be
safely circulated,
it is used in
smart identity
cards.
6
Algorithm Description Environment
Genetic Algorithm
Genetic Algorithm is the technique of AI
providing nearly optimal solutions. It is a
technique for optimization and search,
which is based on the Darwinian
principles of survival and reproduction
(Goldberg 1989). The GA processes
populations of chromosomes
(individuals), hich replace one population
with another successively
Genetic
operators are
used for
individuals in the
population to
generate a next
generation of
individuals.
Discrete Wavelet
Transform (DWT)
Algorithm
The DWT represents an image as a sum
of wavelet functions, known as wavelets,
with different location and scale. It
represents the data into a set of high pass
(detail) and low pass (approximate)
coefficients. The input data is passed
through set of low pass and high pass
filters.
This work dealt
with the
techniques for
steganography in
dwt domain as
related to image
science.
7
Algorithm Description Environment
Blowfish Algorithm
Blowfish is a symmetric encryption
algorithm, meaning that it uses the same
secret key to both encrypt and decrypt
messages. Blowfish is also a block
cipher, meaning that it divides a message
up into fixed length blocks during
encryption and decryption.
Blowfish is
public domain,
and was
designed by
Bruce Schneier
expressly for use
in performance-
constrained
environments
such as
embedded
systems.
Data Encryption
Standard (DES)
Algorithm
The Data Encryption Standard (DES) is
an outdated symmetric-key method of
data encryption. Once the go-to,
symmetric-key algorithm for the
encryption of electronic data, DES has
been superseded by the more secure
Advanced Encryption Standard (AES)
algorithm.
-
8
Algorithm Description
Rivest-Shamir-Adleman
(RSA) Algorithm
RSA algorithm is a message encryption
cryptosystem in which two prime numbers are
taken initially and then the product of these
values is used to create a public and a private
key, which is further used in encryption and
decryption.
Chaos Based Least
Significant Bit
Steganography (C-Lsb)
Algorithm
In the proposed method the logistic chaotic
map is used to encrypt the secret message and
then embedded into the cover image using the
base embedding technique. The logistic map
is used to encrypt the secret data bits before
embedding to enhance the security of the
image steganography as the secret data bits
are not embedded directly into the cover
image. Consider a secret image of resolution
H×W where H is the height and W is the
width of the image. Chaos theory can be
applied in multiple parts of the secret image
with different initial conditions for each part
to take the advantage of its sensitiveness to
initial conditions, provide unpredictability and
enhance the security.
9
Algorithm Description
Contourlet Wavelet
Transform
Contourlets form a multiresolution directional
tight frame designed to efficiently
approximate image made of smooth regions
separated by smooth boundaries. The
Contourlet transform has a fast
implementation based on a Laplacian Pyramid
decomposition followed by directional
filterbanks applied on each bandpass subband.
Bit Plane Complexity
Segmentation (BPCS)
BPCS steganography was introduced by Eiji
Kawaguchi and Richard O. Eason, to
overcome the short comings of traditional
steganographic techniques such as Least
Significant Bit (LSB) technique, Transform
embedding technique, Perceptual masking
technique. This traditional technique has
limited data hiding capacity and they can hide
up to 10 – 15% of the vessel data amount.
BPCS steganography makes use of important
characteristic that of human vision. In BPCS,
the vessel image is divided into “informative
region” and “noise-like region” and the secret
data is hidden in noise blocks of vessel image
without degrading image quality.
10
2.3 SUMMARY
In this chapter, the algorithm had been explained like Advanced Encryption
Standard (AES), Genetic Algorithm, Discrete Wavelet Transform (DWT) Algorithm,
Blowfish Algorithm, Data Encryption Standard (DES) Algorithm, Rivest-Shamir-
Adleman (RSA) Algorithm, Chaos Based Least Significant Bit Steganography (C-
Lsb) Algorithm, Contourlet Wavelet Transform, and Bit Plane Complexity
Segmentation (BPCS). Also I make a comparison with 9 of the algorithm to know
which better to apply in my project.
11
CHAPTER III
METHODOLOGY
3.1 INTRODUCTION
This chapter will be discussed about the project methodology that being used.
The project methodology should be systematic and able to solve all the problems
arising in the system analysis to ensure all the processes, techniques, methods,
approaches and technologies of the project are well defined. There are many types of
methodology that can be applied and used in the development of the system. The
approach must be chosen correctly so that it is suitable to the development of the
project. It is an important step of development since it will guide researchers through
the project development. By using the methodology, it can ensure an exact process
and increases the probability of achieving the desired final objective.
12
3.2 METHODOLOGY USED
Agile eXtreme Programming (XP) methodology is used in this project.
Figure 3.1 Agile eXtreme Programming (XP)
This methodology is a radical agile methodology that focuses more on the
project’s process and addressing the analysis, development and test phases. The
advantages focus on short feedback loops and the practices can be combined with
other approaches to supplement them. It means that if the user gives negative feedback
when using it, the project will loop back to initial or any phases until it fulfils the
project requirement.
3.2.1 Analysis Phase
Analysis phase is a first phase in this method that needs to know the
knowledge related to the field of science computer. For this project more knowledge
about image steganography are gained and gathered. The ways of gathering the
information are by reading the research paper, journal or search on the website about
ANALYSIS
PLANING
TESTING BUILD &
TEST
DESIGN
DEVELOP
13
image steganography. In this analysis, phase follows the concept of finding the
problem. After determine the problem statement of this project, at this phase will
discover the solution to overcome those problems. Then, the title of the project has
been discussed with the supervisor.
3.2.2 Planning Phase
Literature review is done study on other’s work which relates to image
steganography. By comparing the advantages and disadvantages of the other work
stated in literature review will help in produce the product in overcoming the problems
regarding to the image steganography. This phase is much related to the previous
phase when the problem statement has been listed out for the previous systems and
become important to brainstorm a new idea to solve the previous system’s problem.
The solutions to improve that previous system’s advantage is briefly write and discuss
it with the supervisor. To meet requirement in producing this project, the scope
(sender and receiver) had been analysed and observe.
3.2.3 Design Phase
In the design phase starts with the project’s overall flow before going to a
specific algorithm. The algorithm writes based on the chosen technique which is
substitution and Advanced Encryption Standard (AES).
14
System Design
General Framework Design
Figure 3.2 shows that the block diagram of steganography and the general concept of
the overall project.
Figure 3.2 Block diagram of image steganography
The secret message to be transmitted is embedded inside a cover image. Then,
the stego key is also used to provide security. Using substitution technique and AES
algorithm secret message is embedded into the cover image. The resultant file is called
stego image and this stego image is transmitted to the receiver side. At the receiver
side stego image is decoded using the stego key to extract the secret message.
15
Advanced Encryption Standard (AES) Algorithm
AES is a symmetric-key algorithm that replace DES for more secure.
Symmetric (also known as secret-key) ciphers use the same key for encrypting and
decrypting, so the sender and the receiver must both know and use the same secret
key.
Embedding/Encryption Process
Steganography layer
Cover image
Secret Message
128–bits encryption key Encryption stego
image
Encryption/Decryption Layer
Figure 3.3
In this process two inputs are provided to substitution technique. First Input is
the cover image in which secret message is embedded and second is secret message
itself. Output of this process is Stego Image ( image with secret message) .
SUBSTITUTION TECHNIQUE
STEGO IMAGE WITH
SECRET MESSAGE
AES ENCRYPTION
ALGORITHM
16
Encryption/Decryption Layer
Encryption/Decryption Layer
128- bits Encryption Key
Encryption Stego Image
Secret
Data
Steganography Layer
Figure 3.4
In this layer the stego image is encrypted using AES algorithm. At the receiver end
reverse process is applied by decrypting the stego image. Figure 3.3 show how
message extraction and decryption is done.
AES ENCRYPTION
ALGORITHM
DECRYPTION STEGO
IMAGE
SUBSTITUTION TECHNIQUE
17
Figure 3.5 shows the use case diagram
Step 1: Sender choose the image
Step 2: Write a secret message
Step 3: Select encode process and send to receiver
Step 4: Receiver select decode process
Step 5: Enter the key
Step 6: Get the secret message
CHOOSE IMAGE ENTER SECRET
MESSAGE
SELECT NEXT TO
ENCODE ENTER KEY
SENDER
RECEIVER DECRYPT
MESSAGE USING
KEY
RETRIVE
MESSAGE
18
3.2.4 Build and Testing Phase
This phase is fully focused on the coding. Start to write coding based on the
written algorithm. In this project, MATLAB is fully used to process all the code. After
coding writing, the code will be tested simultaneously according to expected result. If
the tool does not function as expected, the project will loop back to previous phases
until it performs the project requirement. In this phase is also including the
implementation of the chosen technique.
3.2.5 Development Phase
After there is no error in the code, the combination of the interface design will
be acquired. Then, MATLAB will be use to complete this project. I choose MATLAB
because it has several advantages over other methods or languages. One of the most
important features of the MATLAB interface is the help. It is very thorough and I can
learn almost anything I need from it.
19
3.3 System Requirement
This section will show the list of all software and hardware that involve in the
development process.
3.3.1 Software Requirement
Software requirement of this project are:
SOFTWARE DESCRIPTION
MatLab To process all the code
Microsoft Office 2010 To prepared the report
3.3.2 Hardware Requirement
Hardware requirement of this project are:
HARDWARE DESCRIPTION
Laptop Intel corei7
RAM:8GB
OS:WINDOWS 10
Use to develop the application
Hard disk To back up the data project
20
3.4 SUMMARY
This chapter discuss of the methodology selected to implement image
steganography. Methodology is very important in system and application
development. There are lots of different software development methodology that
available and can be used to develop any kind of application. All of the activities in
each phase in methodology are explained so that it can be understood easily. Every
phase of the tool development is based on the project methodology described before.
Moreover, the details of software and hardware specification also listed in this
chapter.
21
REFERENCES
1. International Journal of Enhanced Research in Science Technology &
Engineering, ISSN: 2319-7463 Vol. 3 Issue 6, June-2014, pp: (241-245),
Impact Factor: 1.252, Available online at: www.erpublications.com
2. IOSR Journal of Computer Engineering (IOSR-JCE) e-ISSN: 2278-0661,p-
ISSN: 2278-8727, Volume 18, Issue 1, Ver. IV (Jan – Feb. 2016), PP 39-43
www.iosrjournals.org
3. Annual Int'l Conference on Intelligent Computing, Computer Science &
Information Systems (ICCSIS-16) April 28-29, 2016 Pattaya (Thailand)
4. International Journal of Computer & Organization Trends –Volume 3 Issue 7 –
August 2013
5. International Journal of Computer Science and Communication Engineering
IJCSCE Special issue on “Recent Advances in Engineering & Technology”
NCRAET-2013
6. Indian Journal of Science and Technology, Vol 9(39), DOI:
10.17485/ijst/2016/v9i39/86878, October 2016
7. International Journal of Computer Applications (0975 – 8887) Recent Trends
in Future Prospective in Engineering & Management Technology 2016
8. I.J. Image, Graphics and Signal Processing, 2014, 8, 19-24 Published Online
July 2014 in MECS (http://www.mecs-press.org/) DOI:
10.5815/ijigsp.2014.08.03