Professional Documents
Culture Documents
Design and Implementation Proposed Encod PDF
Design and Implementation Proposed Encod PDF
By
Nada Abdul Aziz Mustafa
Under Supervision of
Dr. Fadhil S.Abed
@@
@@
ﻜ ﻢ
))ﻳﺮﻓ ﻊ ﺍﷲ ﺍﻟﺬﻳﻦَﺁﻣﻨﻮﺍ ﻣﻨ ﹸ
ﻭﺍﻟﹼﺬﻳﻦ ﺃﹰﻭﺗﻮﺍ ﺍﻟﻌﻠﻢ ﺩﺭﺟﺎﺕٍ((
ﺻﺪﻕ ﺍﷲ ﺍﻟﻌﻈﻴﻢ
)ﺳﻮرة اﻟﻤﺠﺎدﻟﺔ ،اﻵﻳﺔ ( 58
II
Supervisor Certification
I certify that this thesis was prepared under my supervision at the
University of Sulaimania, as partial fulfillment for the degree of Master
of Computer Science.
Signature:
Supervisor: Dr. Fadhil S. Abed
Date:
Signature:
Name:
Head of Mathematics and Computer Department
Date:-
Signature:
Name: Dr. Solav Faeq Muhammad Ali
Chairman of the college committee of Higher Studies
Date:-
III
I hereby certify that this thesis has been checked by me and after
indicating all the grammatical and spelling mistakes; the thesis was given
again to the candidate to make the adequate corrections. After the second
reading, I found that the candidate corrected the indicated mistakes.
Therefore, I certify that this thesis is free from mistakes.
Name:
Date:
Signature:
IV
Committee Certification
We certify that we have read this thesis entitled “Design and
Implementation Proposed Encoding and Hiding Text in an Image”,
and as a committee, examined the student (Nada Abdul Aziz) in its
contents and what is related with it and then in our opinion it is adequate
as a thesis for the degree of Master of Science in Computer Science.
Signature: Signature:
Name: Name:
Date: / / Date: / /
(Supervisor) (Chairman)
Signature: Signature:
Name: Name:
Date: / / Date: / /
(Member) (Member)
Signature:
Name:
Date:
(Dean of the College of Basic Education)
V
Abstract
and its activity. Thus, the proposed algorithm for this research can be
divided into two main parts: hiding the text of the sender, and extracting
it by the receiver. More over, part can be divided into many procedures
done by the program Delphi 5.
VII
Dedication
Acknowledgements
It’s a great pleasure for me in presenting this thesis to acknowledge
the help of Great Allah the Almighty for all His blessings and guidance,
which greatly helped me to finish this research.
List of Contents
Qura'anic Verse - - - - - - - I
Supervisor Certification- - - - - - II
Linguistic Evaluation Certification - - - - III
Committee Certification - - - - - IV
Abstract - - - - - - - - V
Dedication - - - - - - - - VII
Acknowledgements - - - - - - VIII
Chapter one
General Introduction
1.1 Introduction - - - - - - - 1
1.2 History of Steganography - - - - - 3
1.3 Suggestions in Steganography Systems- - - 4
1.4 Literature Survey - - - - - - 7
1.5 The Aim of the Work - - - - - 10
1.6 Layout of the Thesis - - - - - 10
X
Chapter two
Foundation of Cryptography
2.1 Introduction - - - - - - - 12
2.3.2.3 NTRU - - - - - 19
2.5 Certificate - - - - - - - 28
2.6 Cryptanalysis - - - - - - - 29
XI
Chapter Three
Steganography Techniques
3.1 Introduction - - - - - - - 31
3.2 Steganography Types - - - - - 32
3.3 Kinds of Steganography - - - - - 33
3.3.1 Hiding Information in Text - - - 33
3.3.2 Hiding Information in Images - - - 34
3.3.3 Hiding Information in Audio - - - 34
3.4 Compression Techniques - - - - - 35
3.5 Image and Transform Domain - - - - 36
3.6 Types of Image Domain - - - - - 36
3.7 Types of Transform Domain - - - - 38
3.8 Conflicting Requirements - - - - 39
3.9 JPEG Standard Compression (color image) - - 40
3.9.1 Image Transformation from RGB to YCbCr 41
3.9.2 Image Blocks - - - - - 41
3.9.3 DCT Stage - - - - - 42
3.9.4 Quantization Stage - - - - 43
3.9.5 DC Coding and Zig-Zag Sequence - - 45
3.9.6 Entropy Coding - - - - - 45
3.10 Embedding And Detecting - - - - 46
3.11 Performance Measures - - - - - 47
3.11.1 Determine the Evaluation Criteria - - 48
3.12 Objective Fidelity Criteria - - - - 49
3.13 Detecting Steganography - - - - 50
3.13.1 Steganalysis - - - - - 51
3.13.2 Attacks to Steganographic Systems - - 51
XII
Chapter four
System design and Evaluation
4.1 Introduction - - - - - - - 54
4.2 The Proposed Hiding System - - - - 55
4.2.1 Cryptography Stage - - - - 55
4.2.1.1 RSA Algorithm - - - - 56
4.2.1.2 Digital Signature - - - 61
4.2.2 Steganography - - - - - 63
4.2.2.1 Least Significant Bits (2-LSB) - 63
4.2.2.2 DCT method - - - - 68
4.3 Hiding Bits - - - - - - - 70
4.4 Information about Extracting Stage - - - 75
4.4.1 Extracting Bits - - - - - 76
4.5 System Implementation - - - - - 86
4.5.1 System Requirements - - - - 86
4.5.2 Design System - - - - - 86
4.5.3 System Steps - - - - - 88
4.6 Experiment Result - - - - - - 105
XIII
Chapter five
Conclusion and Suggestions for Future Work
5.1 Conclusion - - - - - - - 112
5.2 Suggestions for Future Work - - - - 114
References - - - - - - - - 116
XIV
List of Abbreviations
Symbol Description
JPEG Joint Photographic Expert Group.
BMP Bit Map.
GIF Graphic Interchange Format.
DES Data Encryption Standard.
AES Advanced Encryption Standard.
OTP One-Time Pad.
NTRU Ntru public key method( number of theory).
RSA (Rivest-Shamir-Adelman).
CA Certificate Authority.
OSI Open System Infrastructure.
TCP/IP Transmission Control Protocol/ Internet Protocol.
LSB Least Significant Bit.
DCT Discrete Cosine Transform.
RGB Red, Green, Blue.
DFT Discrete Fourier Transform
LFSR Liner Feedback Shift Register.
YCbCr Luminance / Chrominance.
NIST National Institute for Standards and Technology.
SKC Secret Key Cryptography.
ASCII American Standard Code for Information Interchange
PSNR Peak Signal-to-Noise Ratio.
WWWI The First World Wide War.
XV
List of Figures
Page
Figure 2.1 Encryption and Decryption 12
Figure 2.2 Types of classical ciphers 13
Figure 2.3 Block ciphers 16
Figure 2.4 Public key encryption and decryption 17
Figure 2.5 Encryption in digital signature 26
Figure 3.1 Steganography types 23
Figure 3.2 Categories of steganography 33
Figure 3.3 Categories of image steganography 36
Figure 3.4 Trade-off among undetectability, capacity and robustness 40
Figure 3.5 Baseline JPEG encode 40
Figure 3.6 Steganography mechanism 46
Figure 4.1 Embedding stage 55
Figure 4.2 Generate public key 56
Figure 4.3 Inverse number in finite field key 58
Figure 4.4 Fast exponent ional 59
Figure 4.5 Converting number to binary 12 bits 60
Figure 4.6 Encrypting the digital signature 62
Figure 4.7 Cover-image and text before hiding 67
Figure 4.8 Stego-image and text after extracting 67
Figure 4.9 Encoding and hiding digital signature and text 70
Figure 4.10 Block outline to hiding one bit in the block 74
Figure 4.11 Decoding stage signature 76
Figure 4.12 Block diagram for extracting and printing text 79
Figure 4.13 Cover-image and text before hiding 80
Figure 4.14 Stego-image and text after extracting 81
Figure 4.15 Cover-image and text before hiding 83
Figure 4.16 Stego-image and text after extracting 84
Figure 4.17 proposed system implementation 87
Figure 4.18 Address the proposed system 88
Figure 4.19 Enter password 88
Figure 4.20 Starting choice form 89
Figure 4.21 First choice (Load Image BMP) 89
Figure 4.22 Open picture dialog form 90
Figure 4.23 Cover-image 90
Figure 4.24 Digital signature 91
Figure 4.25 Sender key, receiver key 92
Figure 4.26 Receiver key 92
Figure 4.27 keys for decryption signature 93
Figure 4.28 Encryption signature 93
Figure 4.29 load text 94
Figure 4.30 Load text from file 94
Figure 4.31 plain text 95
Figure 4.32 Directly enter text 95
Figure 4.33 Public key 96
Figure 4.34 Private key 96
Figure 4.35 Encryption text 97
XVI
General Introduction
1.1 Introduction
Digital communication has become an essential part of infrastructure
nowadays, a lot of applications are internet-based and in some cases it is
desired that the communication be made secret. Two techniques are
available to achieve this goal:
One is Cryptography, where the sender uses an encryption key to scramble
the message, this scrambled message is transmitted through the insecure
public channel, and the reconstruction of the original, unencrypted message
is possible only if the receiver has the appropriate decryption key. The
second method is Steganography, where the secret message is embedded in
another message, image or audio [Sha02].
There are two main directions in information hiding: protecting only
against the detection of a secret message by a passive adversary, and hiding
data so that even an active adversary cannot remove it. The classic situation,
known as Simmons “Prisoners Problem”, is the following: Alice and Bob
are in jail and try to discuss an escape plan, but all their communication can
be observed by the warden. If their plan or the fact that they are discussing
an escape plan were detected they would be transferred to a more secure
prison. So they can only succeed if Alice can send messages to Bob so that
the warden can’t even detect the presence of a secret [Ach98].
Steganographic techniques can be used to hide data within digital
images with little or no visible change in the perceived appearance of the
image and can be exploited to export sensitive information. Since images are
frequently compressed for storage or transmission, effective steganography
must employ coding techniques to counter the errors caused by lossy
Chapter One:General Introduction 2
Carriers of such messages may resemble innocent images, audio, video, text.
The hidden message may be plaintext, cipher text [Rob01].
1.2 History of Steganography
Steganography has been widely used in historical times, especially
before cryptographic systems were developed. The earliest recordings of
steganography were by the Greek historian Herodotus in his chronicles
known as "Histories" and date back to around 440 B.C. Herodotus recorded
two stories of steganographic techniques during that time in Greece. The
first stated that king Darius of Susa shaved the head of one of his prisoners
and wrote a secret message on his scalp [Cum04]. When the prisoner’s hair
grew back, he was sent to the king's son in law Aristogoras in Miletus
undetected. The second story also came from Herodotus, which claims that a
soldier named Demeratus needed to send a message to Sparta that Xerxes
intended to invade Greece. Back then, the writing medium was text written
on wax-covered tablets. Demeratus removed the wax from the tablet, wrote
the secret message on the underlying wood, recovered the tablet with wax to
make it appear as a blank tablet and finally sent the document without being
detected. Romans used invisible inks, which were based on natural
substances such as fruit juices and milk. This was accomplished by heating
the hidden text, thus revealing its contents [Dun02]. Invisible inks have
become much more advanced and are still in limited use today. During the
15th and 16th centuries, many writers including Johannes Trithemius (author
of Steganographia) and Gaspari Schotti wrote on steganagraphic techniques
such as coding techniques for text, invisible inks, and incorporating hidden
messages in music [Ande98].
Between 1883 and 1907, further development can be attributed to the
publications of Auguste Kerckhoff and Charles Briquet. These books were
Chapter One:General Introduction 4
• LSB in BMP – when embedding a message in a “raw” image, that has not
been changed with compression, such as a BMP, there exists a trade-off
between the invisibility of the message and the amount of information that
can be embedded. A BMP is capable of hiding quite a large message, but the
fact that more bits are altered results in a larger possibility that the altered
bits can be seen with the human eye [Bra00]. The main disadvantage
regarding LSB in BMP images is surely the suspicion that might arise from a
very large BMP image being transmitted between parties, since BMP is not
widely used anymore.
Suggested applications: The JPEG file format can be used for most of the
applications of steganography, but is especially suitable for images that have
to be communicated over an open-system environment like the internet.
hidden information is scattered throughout the image, while not changing the
statistical properties.
1. Uruba I., (2001): The system is applied on colour –image and used LSB
method, it depends on the ASCII value of character and compares it with
the value of palette of pictures then if equally, the position of value
palette substitutes in other places.
4. Alawy S., (2004): An improved method has been introduced in this work
to hide a text in an image with JPEG format without drawing suspicion
about the hidden text, and not effective with JPEG compression.
The JPEG format uses a Discrete Cosine Transform (DCT) to transform
successive (8 x 8 pixel) blocks of the image into 64 DCT coefficients
each. Afterwards the coefficients are quantized by using a quantization
table. After this stage two coefficients from each block of quantized DCT
coefficients are used to hide the text bits.
6. Davidson L. and Paul G., (2005): In this work defined a framework for
hidden message location based on image restoration. Hiding a message in
an image effectively decreases the probability of an image, or put another
way, increases the energy of an image. They defined two energy
functions for color and grayscale images. This allows to measure the
probability/energy of each pixel. The outliers in an image are the most
energized (i.e. least probable) pixels. The results indicate that the stego
images contain more energy than their cover counterparts. They believe
That results could be improved by dividing the image into similar
regions using spatial clustering techniques or Kohonen self organized
maps and apply our approach to identify outliers in each region.
8.Naji A. and Zaidan A., (2009): In this work the information was
encrypted before hiding it by AES method; this method is very strong, it
is a 128-bit key, they hide information in EXE file. It is impossible for
the attacker to guess the information hiding inside the EXE file because
Chapter One:General Introduction 10
of the difficulty of guessing the real size of EXE file. The hidden
information should be decrypted after retracting the information.
Besides chapter one, the introduction, the thesis consists of other four
chapters, these are:
1. Chapter two: entitled "Foundation of Cryptography", it includes the
information about cryptography definition, classification and also
focuses on RSA-Public-key cryptography and digital signature.
2. Chapter three: entitled "Steganography Techniques", it includes the
information hiding classification and methods, and it focuses on DCT
method. The chapter describes also the steganographic media and
hiding data in images.
3. Chapter four: entitled "System design and Evaluation", it provides a
full description of the design and implementation of the proposed
Chapter One:General Introduction 11
Foundation of Cryptography
2.1 Introduction
Cryptography is the art and science of transforming (encrypting)
information (plaintext) into an intermediate form (ciphertext) which
secures information in storage or transit [Kum03]. As opposed to
steganography, which seeks to hide the existence of a message,
cryptography seeks to render a message unintelligible even when the
message is completely exposed [Con07]. Nowadays when more and more
sensitive information is stored on computers and transmitted over the
internet, we need to ensure information security and safety. Figure (2.1)
shows the encryption and decryption in cryptography.
Hi KEY Z2 KEY Hi
Transposition Substitution
ciphers ciphers
Affine Cipher
may be of any length, and because encrypting the same plaintext under
the same key always produces the same output, several modes of
operation have been invented which allow block ciphers to provide
confidentiality for messages of arbitrary length.
The earliest modes described in the literature provide only
confidentiality or message integrity, but do not perform both
simultaneously. Other modes have since been designed which ensure both
confidentiality and message integrity in one pass [Dwo01]. A block cipher
Chapter Two: Foundation of Cryptography 15
Block 2
Cipher text
From: Layan Tal
Key xu@u40%um
messages, but only someone with the hidden key may decode them.
Public-key cryptosystems have two primary uses, encryption and digital
signatures. In their system, each person gets a pair of keys, one called the
public key and the other called the private key. The public key is
published, while the private key is kept secret [Kum03]. The need for the
sender and the receiver to share secret information is eliminated; all
communications involve only public keys, and no private key is ever
transmitted or shared. In this system, it is no longer necessary to trust the
security of some means of communications. The only requirement is that
public keys are associated with their users in a trusted (authenticated)
manner [Mat98]. Anyone can send a confidential message by just using
public information, but the message can only be decrypted with a private
key. Furthermore, public-key cryptography can be used not only for
privacy (encryption), but also for authentication (digital signatures) and
other various techniques. Figure (2.4) shows the use of public keys.
Hello Hello
Transmit
Cik58 Decipher
Encipher
Cik58 With hidden
With public
key
key
• Key generation.
• Encryption
• Decryption.
RSA involves a public key and a private key. The public key can
be known to everyone and is used for encrypting messages. Messages
encrypted with the public key can only be decrypted using the private
key. The keys for the RSA algorithm are generated in the following way
[Dur02]:
The public key is the product of two randomly selected large prime
numbers, and the secret key is the two primes themselves [SEF02]. The
algorithm encrypts data using the product, and decrypts it with the two
primes, and vice versa. A mathematical description of the encryption and
decryption expressions is shown below:
Encryption: C = m (mod n)
e
Decryption: m = c (mod n)
d
Where:
( e * d ) = 1 (mod( p − 1 ) * ( q − 1 )) .
The public key is the pair of numbers (n, e) . The private key is the
pair of numbers (n, d ) . This algorithm is secure because of the great
mathematical difficulty of finding the two prime factors of a large
number, and of finding the private key ( d ) from the public key ( e )
[Dur02]. This is difficult because the only known method of finding the
two prime factors of a large number is to check all the possibilities one by
one, which isn't practical because there are so many prime numbers.
Chapter Two: Foundation of Cryptography 22
Every day, people sign their names to letters, credit card receipts,
and other documents, demonstrating they are in agreement with the
contents. That is, they authenticate that they are in fact the sender or
originator of the item. This allows others to verify that a particular
message did indeed originate from the signer. Written signatures are also
vulnerable to forgery because it is possible to reproduce a signature on
other documents as well as to alter documents after they have been signed
[Esc00].
1. Authentication
2. Integrity
d B
[Kum03]:
S = d B (m ) .
e A
(S ) to Alice. He need not send m as well; it can be computed from S.
the presumed sender of the signature. She then extracts the message with
Chapter Two: Foundation of Cryptography 27
m = eB (S )
Where:
d B
: Bob's privet key, e A
: Alice's public key
d A
:Alice's privet key, e B
: Bob's public key
2. Choose e A
such that 1〈eA 〈ϕ (n) with gcd ( e A,
ϕ (n)) = 1 .
3. Calculate d A
such that e .d
A A
≡ 1modϕ (n) .
4. Keep d A
, p, q secret and publish ( e A , n ).
dA
5. Sign the message S ≡ (m) (mod n) .
Receiver B [Tra92]:
1. Use the private key d B
to decrypts the cipher text to knows who is
the sender.
2. Extract the message with public key for the sender
m≡ Se A
(mod n ) .
Chapter Two: Foundation of Cryptography 28
2.5 Certificate
A certificate is a piece of information that proves the identity of a
public-key’s owner. Like a passport, a certificate provides recognized
proof of a person’s (or entity) identity [CGI04]. Certificates are signed and
delivered securely by a trusted third party entity called a Certificate
Authority (CA). As long as Bob and Alice trust this third party, the CA,
they can be assured that the keys belong to the persons they claim to be.
6) Other information
The recipient can now verify few things about the issuer to make
sure that the certificate is valid and belongs to the person claiming its
ownership:
4) Verify the issuer’s certificate signature, hence making sure it has not
been altered [Bar08].
Chapter Two: Foundation of Cryptography 29
2.6 Cryptanalysis
Cryptanalysis refers to the study of ciphers, ciphertext, or
cryptosystems (that is, to secret code systems) with a view to finding
weaknesses in them that will permit retrieval of the plaintext from the
ciphertext, without necessarily knowing the key or the algorithm. This is
known as breaking the cipher, ciphertext, or cryptosystem [Chr06].
Steganography Techniques
3.1 Introduction
Steganography is the practice of hiding private or sensitive
information within something that appears to be nothing out of the
usual, it is often confused with cryptology because the two are
similar in the way that they both are used to protect important
information. The difference between the two is that steganography
involves hiding information so it appears that no information is
hidden at all.
If a person or persons view the object that the information is
hidden inside of, he or she will have no idea that there is any
hidden information, therefore the person will not attempt to decrypt
the information.
Steganography comes from the Greek word steganos which
literally means “covered” and graphia which means “writing”, i.e.
covered writing. In the modern day, the word usually refers to
information or a file that has been concealed inside a digital
picture, video or audio file [Hab06].
What steganography essentially does is exploiting human
perception, human senses are not trained to look for files that have
information hidden inside them, although there are programs
available that can do what is called steganalysis (detecting use of
steganography).
The most common use of steganography is to hide a file inside
another file.
Chapter Three: Steganography Techniques 32
Steganography
Steganography
JPEG Patchwork
Secure Copyright
Steganograph Marking
Undetectability Robustness
RGB Y Cb Cr
8*8
DCT Quant Zig-
Zag
Huffman
01101
The following equations are used to compute the RGB values from
YCbCr .
n −1 n −1
(2 x + 1)iπ ⎞ ⎛ (2 y + 1) jπ ⎞
cos ⎛⎜
1
G ij =
4 CC ∑ ∑ P
i j
x =0 y =0
xy
⎝ 16
⎟ cos ⎜
⎠ ⎝ 16
⎟ (3.3)
⎠
n −1 n −1
(2 x + 1)iπ ⎞ ⎛ (2 y + 1) jπ ⎞
cos ⎛⎜
1
P Xy = 4
∑∑ C C G
i =0 j =0
i j ij
⎝ 16
⎟ cos ⎜
⎠ ⎝ 16
⎟
⎠
(3.4)
Where:
1
C ,Ci j
=
2
(for i , j=0)
1, otherwise
This is the step where the information loss occurs (in addition to
some unavoidable loss because of the finite precision calculations
in other steps). Table (3.2) shows Y component quantization table,
table (3.3) shows Cb and Cr component quantization table [TSC02].
Sender Receiver
Decrypt
Encrypt
Embed Extract
Stego key Stego key
Send to
your public key. In embedding the information this way, you can
reduce the chance of a third party attacker getting hold of the stego
object and decoding it to find out the secret information [Cac01].
Having passed through the encoder, a stego object will be
produced. A stego object is the original cover object with the secret
information embedded inside. This object should look almost
identical to the cover object as otherwise a third party attacker can
see embedded information. Having produced the stego object, it
will then be sent off via some communications channel, such as
email, to the intended recipient for decoding. The recipient must
decode the stego object in order for them to view the secret
information [Sol01]. The decoding process is simply the reverse of
the encoding process. It is the extraction of secret data from a stego
object.
In the decoding process, the public or private key that can
decode the original key that is used inside the encoding process is
also needed so that the secret information can be decoded.
Depending on the encoding technique, sometimes the original
cover object is also needed in the decoding process. After the
decoding process is completed, the secret information embedded in
the stego object can then be extracted and viewed [Cha01].
P( g ) = N ( g ) / M (3.7)
L−1 2
V ( g ) = ∑ (g − g ) p( g )
− (3.9)
g =0
Where:
g :stego colour
L−1
Entropy = − ∑ [ p( g )] log [ p( g )] (3.10)
g =0 2
⎛ [ f (x, y)]2 ⎞
PSNR= 10log10 ⎜⎜ ⎟
⎟ (3.11)
⎝ MSE ⎠
1 m−1 n −1
MSE = ∑∑ [f ( x, y) − g( x, y)]2 (3.12)
mxn y=0 x =0
where f(x, y) and g(x, y) represent the input and the output image.
3.13.1 Steganalysis
Steganalysis compares the properties of an unaltered file to
one that contains embedded information [Gur03].
Checking for file sizes and suspicious situations may work
in detecting the use of steganography, but do not provide any solid
evidence [Pas00].
• Basic Attacks
Basic attacks take advantage of limitations in the design of the
embedding techniques. Simple spread spectrum techniques, for
example, are able to survive amplitude distortion and noise
addition but are vulnerable to timing errors. It is possible to
alter the length of a piece of audio without changing the pitch
and this can also be an effective attack on audio files [Cum04].
• Robustness Attacks
Robustness attacks attempt to diminish or remove the presence
of a watermark. Although most techniques can survive a variety
of transformations, compression, noise addition, etc, they do not
cope so easily with combinations of them or with random
geometric distortions.
• Presentation Attacks
Presentation attacks modify the content of the file in order to
prevent the detection of the watermark [Bra00].
• Interpretation Attacks
Interpretation attacks involve finding a situation in which the
assertion of ownership is prevented . Robustness is usually used
Chapter Three: Steganography Techniques 53
Secret Digital
message signature
Cover image
RGB
Encryption
Separation
R, G, B
Stream of bits
Hide stage
Save image
(stego image)
Begin
n= (p * q)
gcd No
(e, φ(n ) )=1
Yes
End
The public key needs two prime numbers to find (n and φ(n )). The
algorithm bellow is used to check if the number is prime or not.
The private key is used for decrypted messages. The private key
for the RSA algorithm is generated by the following algorithm (inverse
method). Figure (4.3) shows the general description to find the private
key for the RSA.
Chapter Four: System Design and Evaluation 58
Begin
Q = X3 div Y3
T1 = X1 – ( Q*Y1)
T2 = X2 – ( Q*Y2)
T3 = X3 – ( Q*Y3 )
No inverse Yes Y3 =0
D=0
No
Yes
Y3 >1
No
Yes
Y2 > 0 D = Y2 mod φ(n )
No
Y2 = Y2 + φ(n )
D = Y2
Yes
Y2 < 0
No
End
After finding these keys, the public key is used to encrypt the
secret message. The algorithm below shows the encryption of the secret
message. Figure (4.4) shows the general description to encrypt the secret
message by using the public key for the RSA.
Convert to a decimal
number (txt)
Convert e to a stream of bits ( h )
C=1
2
C = C mod n
No
h (bit = 1)
Yes
C = (C * txt ) mod n
No
End h
Yes
Cipher = C
No
End message
Yes
End
Begin
C = number
Message (numbers) S='' B=''
No Yes
C mod 2 =0
S = S + '1' S = S + '0'
C = C div 2
No
C=0
Yes
Add '0' to S
B= reverse S
Cph = B
No
End
message
Yes
60
Chapter Four: System Design and Evaluation 61
Begin
C=1
2
C = C mod n1
No
h1i (bit = 1)
Yes
C = (C * dgt ) mod n1
No
End h1
Yes
N=C , C=1
2
C = C mod n2
No
h2i (bit = 1)
Yes
C = (C * N ) mod n2
No
End h2
Yes
Cipher = C
No
End signature
4.2.2 Steganography
Each steganographic method has its own advantages and
disadvantages. The 2-LSB method is clear, very simple to implement, and
if the encoded image is transmitted perfectly with no error, when it is
decoded, there will be no data lost in the text ( digital signature and
message). The disadvantages of the 2-LSB method lies in that if the form
of stego image is changed in any way ( resized or compression to JPEG ),
the entire text could be lost. The size of stego image is very high,
therefore it needs more time when it is transmitted via the internet.
The above disadvantages lead to suggest a new method to embed
text in the cover image. The new method used covers image bitmap (24
bit) and produces stego image JPEG format. The stego image in our case
is a small size, it needs less time when it is transmitted via the internet,
and if it is changed ( JPEG to bitmap or recompressed more than one
time) the entire text will be kept.
Test 1:
The testing of this example is preformed by taking the secret text
(49927 characters) and the cover-image (352*288). Figure (4.7) shows
the cover image and the text before encryption and hiding. Figure (4.8)
shows the stego-image and the text after extracting and decryption. Table
(4.1) shows the PSNR( equation (3.11)), MSE (equation(3.12)) for each
colour , text length, and hiding time. Table (4.2) shows the entropy
(equation(3.10)), variance (equation (3.9)) and energy equation(3.8)) of
each colour in the cover and stego image.
Chapter Four: System Design and Evaluation 67
1. Load a colour image (bitmap format 24 bits), and part the colours
into the red, green, and blue.
2. Convert the image formula from RGB to YCbCr, equation(3.1).
3. Separate the image components Y, Cb, Cr into blocks, each one
consists of 64 pixels (8*8).
4. Transform each block (8*8) pixels to spatial frequency domain via
the forward DCT, equation(3.3).
5. Combine the stream of bits of the digital signature and the secret
message.
6. Embed the stream of bits in the cover image. In each block embed
one bit in the DC element. This step will be described in detail
later on.
7. Quantize these blocks with quantization coefficients. The DCT
coefficients are divided by their corresponding quantization
coefficients ( quantization table ) and rounded to the nearest
integer.
8. Quantize DCT coefficients by multiplying the same quantization
tables that are used in a compression stage to obtain DCT
coefficients.
9. Inversing DCT is applied in this step in each block, equation(3.4).
10. Reconstruct the image by combining all the blocks.
11. Transform the image formula from YCbCr to RGB, equation(3.2).
12. Save the stego image in JPEG format.
Chapter Four: System Design and Evaluation 70
Begin
Convert to ( YCbCr )
Secret Digital
Block 8 x 8 message Signature
Encryption
DCT stage
Stream of bits
Hiding stage
Quantize stage
Inverse quantize
Inverse DCT
Combine blocks
1. From each block (8*8) one DCT coefficient is chosen to hold the
bit. This coefficient is in position (0,0). Compute the quantize DC
coefficient ( dc ) .
2. If (dc) is an odd number and the bit ('1'), or (dc) is an even number
and bit ('0'), no change happens in the original block pixels. Bring a
new block and a new bit to continue or work and hide them.
3. If (dc) is an odd number and the bit ('0'), or (dc) is an even number
and bit ('1'), there must be a change in the original block
coefficients until (dc) value satisfies the relationship in point (2).
How can be satisfied in this work.
Compute the new Quantize DC coefficient without rounding
(dc1).
dc1 = (block (0,0) / 16 (4.2)
Df=dc-dcl (4.3)
Np=0.5-df (4.4)
DCT stage
DCT coefficients
605.10 -62.22 7.41 3.21 -7.79 0.29 0.04 0.08
28.83 -39.44 14.03 0.04 -8.27 -0.28 -0.34 0.08
69.09 72.09 71.20 66.20 63.46 65.95 69.08 69.05
65.22 64.22 64.10 63.10 64.46 64.46 63.31 62.08
62.18 62.18 65.31 69.31 71.97 73.97 74.33 75.33
72.03 74.80 78.97 81.10 80.80 80.35 82.16 84.39
72.04 74.82 78.05 81.18 83.35 86.12 88.05 89.16
62.27 60.04 59.05 62.18 69.35 75.12 74.03 69.15
dc = (round ( 605.10 / 16 )) = 38
Yes
( dc = even)
& (bit='0')
bring new
bit and new
No
block
(dc= odd)
& (bit='1')
Yes
No
1
Chapter Four: System Design and Evaluation 74
Yes No
df = (dc – dc1 ) = 0.19 dc >dc1 df = (dc1 – dc )
DCT stage
dc = (round ( 599.10 / 16 )) = 37 2
Figure (4.10): Shows block outline to hiding one bit in the block
Chapter Four: System Design and Evaluation 75
Begin
Convert to (bmp)
Convert to YCbCr
Block
(8 x 8) pixels
DCT stage
Extract stage
Digital signature
Print message
Print digital
signature
End
block diagram for extracting bits from the stego-image. Some steps are
implemented to extract the bits :
DCT stage
dc = round ( 592.77 / 16 ) = 37
Yes No
(dc= odd number)
1
Chapter Four: System Design and Evaluation 79
No
Sign = Sign + ch
ch = ' # ' Text =text + ch
Yes
End
Figure (4.12): Shows the block diagram for extracting and printing text
Test 1:
The testing of this example is performed by taking the secret text
(110 characters) and the cover-image (352*288). Figure (4.13) shows the
cover image and the secret message before encryption and hiding. Figure
(4.14) shows the stego-image and the text after extraction and decryption.
Table (4.4) shows the PSNR(equation(3.11)), MSE(equation(3.12)) of
each colour , text length, compression ratio and hiding time. Table (4.5)
shows the entropy(equation(3.10)), variance(equation(3.9)) and
energy(equation(3.8)) of each colour in the cover and stego image.
Test 2:
The testing of this example is preformed by taking the secret text
(120 characters) and the cover-image (352*288). Figure (4.15 ) shows the
cover image and the text before encryption and hiding. Figure (4.16)
shows the stego-image and the text after extraction and decryption. Table
(4.6) shows the PSNR, MSE for each colour , text length, compression
ratio and hiding time. Table (4.7) shows the entropy, variance and energy
of each colour in the cover and stego image.
Chapter Four: System Design and Evaluation 83
Main Screen
1. Embedding message
2. Extracting Message
3. Test before embedding
4. Test after embedding
5. Exit
Choice Op
No
Op <= 5
5 4 3 Yes 2 1
Variance
Variance Print text & Save image
signature jpeg
Entropy
Entropy
Exit Exit
Comp. ratio
Comp. ratio
Exit
Hiding time
Exit
The figure (4.20) asks the user to choose the type of operation.
• Digital Signature
This choice will lead to four main choices ( Load Signature,
Sender Key, Receiver Key and Encryption Signature). Figure (4.24)
shows the first choice load signature. This option is used to enter the
digital signature from the window after choosing the load signature
option.
Sender Key
This option is used to enter the (p, q, e) that are used in the sender key in
encrypting the digital signature. Figure (4.25) shows this choice.
Chapter Four: System Design and Evaluation 92
Encryption Signature
This option is used to encrypt the digital signature by using the public key
for the receiver. Figure (4.28) shows this choice.
• RSA Algorithm
This choice will lead to three main choices ( Load Text, Public
Key, and Encryption Text). Figure (4.29 ) shows the first choice load text.
This option contains two choices (Text From File, Input Text).
Public Key
This option is used to enter the (p, q, e) that are used in the public
key used in encrypting the text. Figure (4.33) shows this choice.
Encryption Text
This option is used to encrypt the text by using the public key.
Figure (4.35) shows this choice.
• Save Image
This option can be used to save the stego-image. When the user
clicks on this option, the save picture dialog form will appear and asks the
user about the name and location that will be used to save the stego-
image (JPEG file format). Figure (4.37) shows the save picture dialog
form.
♦ Extracting Message
The second step with the proposed system is extracting the
message. This choice will lead to five main choices (Load Stego Image ,
Enter Signature Key, Enter Private Key, Decryption Text and Print plain
Text). Figure (4.38) shows these options.
Chapter Four: System Design and Evaluation 99
• Decryption Text
This option can be used to decrypt the digital signature by using
keys and the decryption of the text by using the private key. Figure (4.43)
shows the decryption of the text option.
Chapter Four: System Design and Evaluation 102
Figure (4.45): Results without embedding the text and the signature
Figure (4.46): Results after embedding the text and the signature
Barrow and Lion bitmap images of size 352*288 are applied as cover
images. Figure (4.48) shows the two cover images.
a b
Test 2:
In this experiment, the system that has been used to embed the message
contains (93) characters, and the digital signature contains (5) characters.
Figure (4.51) shows the embedding stage. Figure (4.52) shows the
extracting stage. Table (4.10) and (4.11) show the results of the
experiment.
The table (4.12) shows the difference between 2-LSB and the proposed
hiding DCT method:
Table (4.12): The difference between 2-LSB and the proposed hiding
DCT method
CHAPTER
FIVE
Chapter five: Conclusion and Suggestions for Future Work 112
5.1 Conclusions
The proposed system provides the JPEG method with the digital
signature and RSA cipher and hopes for a embedding text in an image. A
number of conclusions were derived from this study:-
between the sender and the receiver, in this system there is no need
for the knowledge of original cover in the extraction process.
7. The proposed system does not affect the image quality; we can say
it is not noticeable for human eyes. To prove this we show the
cover-image and the stego –image to a team of 15 persons to take
their opinion if there is any difference between the stego-image and
the cover-image and their answer that there is no difference
between both images.
Chapter five: Conclusion and Suggestions for Future Work 114
9. The energy criteria values between the cover and stego image in
the proposed hiding DCT method approximately are equal. This
helps to prevent suspecting the attacker.
10. The compression ratio depends on the data in an image itself, and
hiding time depends on the method of the steganography.
11. If use 8 bits to represent the character, this helps to hide more
characters in an image(352*288) but with a low security (length of
RSA key equals 256). Therefore, the researcher change the 8 by 12
bits to represent the character to get more security (length of RSA
key equals 4095 with the same size images).
References
[AAs00]
American Association,"Digital Signature Guidelines Tutorial",
Section of Science and Technology Information Security Committee,
ISSN 0453-3312, 2000.
[Ach98]
Achin C.,"An Information-Theoretic Model for Steganography".
MIT Laboratory for Computer Science 545 Technology Square.
Cambridge, USA, May 13, 1998. Lecture Notes in Computer Science,
Springer, p.p.101-555,1998.
[Ahu95]
Ahumada A., Horng R., "Smoothing DCT Compression Artifacts"
NASA Ames Research Center. Stanford University, LNCS # 537,
p.p.189-205, 1995.
[Ala04]
Alawy S., "Robust Information Hiding Techniques Using JPEG",
Master of Science in Computer Science, Iraq university, 2004.
[And82]
Andrew C., "Theory and Application of Trapdoor Functions",
Computer Science Division, University of California, Berkeley,
California 94720-0272, 1982.
[Ande98]
Anderson R. & Fabien A. P., "On The Limits of Steganography".
IEEE Journal of Selected Areas in Communications, Special Issue on
Copyright & Privacy Protection. ISSN 0733-8716, May 1998.
[Ash04]
Ashraf A.,"Comparative Analysis of Multi-Percicion Arithmetic
Libraries for Public key Cryptography" , thesis in M.Sc., George
Mason University, ISSN 0131-9212, 2004.
[Bar08]
Barker E. & Barker W., "Recommendation for Key Management
Part 2:Best Practices for Key Management Organization", NIST
Special Publication, ISSN 3502-4331, 2008.
References 117
[Ben04]
Bennett K., "Linguistic Steganography: Survey, Analysis, And
Robustness Concerns For Hiding information text", Master of
Science in Computer Science, Center for Education and Research in
Information Assurance and Security, 2004.
[Bena87]
Benaloh J.C., "Verifiable Secret-Ballot Elections". Ph.D. thesis, Yale
University, New Haven, YALEU/DCS/TR-561, 1987.
[Ber04]
Berger D.F., "A Scalable Architecture for Public Key Distribution
Acting in Concert with Secure DNS", Master of Science in Computer
Science, August 2004.
[Bra00]
Brainos A.C., "A Study of Steganography and The Art of Hiding
Information", Master of Science in Computer Science, East Carolina
University, 2000.
[Cac01]
Cacciaguerra S. & Ferretti S., "Data Hiding: Stganography and
Copyright Marking". Department of Computer Science, University
of Bologna Mura A. Zamboni 7, 40127 Bologna, Italy, 2001.
[Can07]
Canniere C., "Analysis and Design of Symmetric Encryption
Algorithms", Master in Computer Science, Katholieke Universities
Leuven (Бельгия), Department of Electrical Engineering, the degree
of doctor, 2007.
[Car07]
Carter B. & Magoc T., "Classical Ciphers and Cryptanalysis",
London University, Department of computer science, September 11,
p.p.173-206, 2007.
[CGI04]
CGI Group Inc., "Public Key Encryption and Digital Signature",
Received 2/6/2004, Accepted 13/8/2004.
[Cha01]
Chandramouli R., Kharrazi M. & Memon N., "Image Steganography
and Steganalysis: Concepts and Practice", Department of Electrical
References 118
[Chr06]
Christensen C., "Cryptography of the Vigenère Cipher", MAT/CSC
483, Master in Computer Science, 2006.
[Con07]
Conrad E., "Explanation of the Three Types of Cryptosystems",
February 6th, London University, ISSN 0521-8521, 2007.
[Cum04]
Cummins J., Diskin P., Lau S.& Parlett R., "Steganography and
Digital Watermarking". School of Computer Science. The University
of Birmingham, LNCS # 222, p.p. 100-212, 2004.
[Cur02]
Currie D.L. & Irvine C.E., "Surmounting the Effects of Lossy
Compression on Steganography". Fleet Information Warfare Center
and Computer Science Department , NAB Little Creek, LNCS # 193,
p.p. 601-334, 2002.
[Cve05]
Cvejic N. & Seppnen T., "Watermark Bit Rate in Diverse Signal
Domains". World Academy of Science. Engineering and Technology,
Received 3/3/2005, Accepted 11/6/5.
[Dab04]
Dabeer O., Sullivan K., Chandrasekaran S. & Manjunath B. S.,
"Detection of Hiding in the Least Significant Bit", IEEE.
Transactions on Signal Processing, VOL. 52, NO. 10, October, 2004.
[Dav05]
Davidson L. and Paul G., "Locating Secret Messages in Images",
Computer Science, SUNY Albany, 1400 Washington Avenue, Albany,
NY 12222, (2009),USA.
[Der06]
Dereich S. & Scheutzow M., "High-resolution quantization and
entropy coding for fractional Brownian motion". Institut four
Mathematic, TU-Berlin, p.p.509-404, 2006.
References 119
[Dun02]
Dunbar B., "A detailed Look at Steganographic, Techniques and
their use in an Open-Systems Environment" SANS Institute 2002,
As part of the Information Security Reading Room, 01/18/2002.
[Dur02]
Durfee G., "Cryptanalysis Of RSA Using Algebraic And Lattice
Methods", Master in Computer Science, June 2002.
[Dwo01]
Dworkin M., "Recommendation for Block Cipher Modes of
Operation Methods and Techniques", NIST Special Publication 800-
38A Edition, 2001.
[Esc00]
Escalante R.M., "Socio-Legal Issues Affecting the Use of Digital
Signatures for Secure E-commerce Transactions", Master in
computer Science, A Caribbean Perspective University of the West
Indies, Trinidad, 2000.
[Fri03]
Fridrich J. and Goljan M., "Digital image steganography using
stochastic modulation", Department of Electrical and Computer
Engineering, SUNY Binghamton, Binghamton, NY, 13902-6000,
USA,2003.
[Gay06]
Gayyar M.E., "Watermarking Techniques Spatial Domain Digital
Rights Seminar", thesis submitted for the partial fulfillment of the
degree of doctor of philosophy in Mathematics Media Informatics
University of Bonn Germany, 2006.
[Gol01]
Goldreich O., "Foundations of Cryptography: Basic Tools",
Cambridge University Press, Master in Computer Science, 2001.
[Gon00]
Gonz´alez F.P. & J. Hern´andez, "A tutorial On Digital
Watermarking, Dept. Technology Communications, Spain, LNCS #
104, p.p. 66-12, 2000.
References 120
[Gur03]
Gurijala A. & Deller J.R.,"Watermarking with Objective fidelity
And Robustness Criteria", Michigan State University, Department of
Electrical & Computer Engineering / 2120 EB East Lansing, MI
48824 USA,2003.
[Hab06]
Habes A., "Information Hiding in BMP image Implementation,
Analysis and Evaluation". Thesis: Master in Computer Science,
Saint Petersburg Institute for Informatics and Automation. Russian
Academy of Sciences, February 26, 2006.
[Ham02]
Hamami, M., "Information Hiding attack in Image" , Master in
Computer Science, Iraqi commission for computer &Informatics,
Informatics Institute for Postgraduate Studies 2002.
[Hop04]
Hopper H., "Toward a theory of Steganography", School of
Computer Science, Carnegie Mellon University, CMU-CS-04-157,
July 2004.
[ITU92]
International Telecommunication Union, "Information Technology-
Digital Compression and Coding of Continuous-Tone Still Images
Requirements and Guidelines, Recommendation T.81,1992.
[Ibr07]
Ibraheem A., " Hiding Data Using LSB-3", Dept. of Computer
Science, College of Education, University of Basrah, Basrah, Iraq.
ISSN 2695 1817, Received 5/3/2007 , Accepted 19/9/2007.
[Jos02]
Jose S., "Key Recovery and Message Attacks on NTRU-Composite",
Master in Computer Science, DoCoMo Communications
Laboratories USA, Inc. USA, 2002.
[Kak09]
Kak A., " Classical Encryption Techniques", Avinash Kak, Purdue
University, p.p.350-105, 2009.
References 121
[Kre04]
Krenn J., "Steganography and Steganalysis", London university,
LNCS # 969, p.p. 25-98, Received 3/1/2004 , Accepted 15/8/2004.
[Kum03]
Kumar M., "Cryptographyic Study of Some Digital Signature
Schemes", a thesis submitted for the partial fulfillment of the degree
of doctor of philosophy in Mathematics, 2003.
[Lai01]
Lai M. K., "Knapsack Cryptosystems: The Past and the Future",
Department of Information and Computer Science University of
California, LNCS # 661, p.p. 88-11, 2001.
[Mat98]
Matsui M., "Linear Cryptanalysis Method for DES Cipher", Master
in Computer Science, Computer & Information System Laboratory,
Mitsubishi Electric Corporation 5-1-1, Japan – 1998.
[Meh99]
Mehuron W., "Data Encryption Standard (DES)", U.S. Department
Of Commerce / National Institute of Standards and Technology,
LNCS # 510, p.p. 17-22, October 1999.
[Mor02]
Morkel T., Eloff J.H.P.& Olivier M.S.,"An overview of Image
Steganography", Information and Computer Security Architecture
(ICSA)Research Group Department of Computer Science, University
of Pretoria, Pretoria, South Africa, LNCS # 410, p.p. 88-81, 2002.
[Naj09]
Naji A. and Zaidan A., "Cryptography and Steganography",
IJCSNS International Journal of Computer Science and Network
Security, Electrical and Computer Engineering Department,
International Islamic University Malaysia, 53100 Gombak, Kuala
Lumpur, Malaysia. VOL.9 No.5, May 2009.
[Ora98]
Oranchak D., "Evolutionary Algorithm for Decryption of
Monoalphabetic Homophonic Substitution Ciphers Encoded as
Constraint Satisfaction Problems", NTU School of Engineering and
Applied Science Roanoke, VA 24018, 1998.
References 122
[Pas00]
Pastorfide E. & Flores G. A., "An Image Steganography Algorithm
for 24-bit Color Images Using Edge-Detection Filter", CMSC 190
Special Problem, Institute Of computer Science, p.p.112-208, 2000.
[Por02]
Por L.Y., Lai W.K., and Alireza Z., "A Comprehensive
Steganographic Tool Using Enhanced LSB Scheme", Faculty of
Computer Science and Information Technology University of
Malaya, LNCS # 125, p.p. 26-71, 2002.
[Pou98]
Poupard G. & Stern J., "Security analysis of practical
authentication, and signature generation, Advance in Cryptology" ,
Eurocrypt - 98, LNCS # 1403, p.p. 422 - 436 Springer Verlag, 1998.
[Poy03]
Poynton C., "YUV and luminance considered harmful", Received
1/2/2003, Accepted 22/8/2003.
[Ric03]
Richer P., "Steganalysis: Detecting hidden information with
computer forensic analysis", This paper is from the SANS Institute
Reading Room site, SANS Institute,2003.
[Rit06]
Ritter T., "Learning About Cryptography, A Basic Introduction to
Crypto", LNCS # 758, p.p. 37-44, January 2006.
[Riv99]
Rivest R., Shamir A., & Adleman L., " A Method for Obtaining
Digital Signatures and Public-Key Cryptosystems", Computer
Science, Massachusetts Institute of Technology, Cambridge, 1999.
[Rob01]
Robila S., "Steganography (Steganalysis)", Victor Habrahamashon
Institute, CMPT-495,2001.
[Sch00]
Schneier B., "Cryptanalysis", 2000.
http://www.bletchleypark.net/cryptology/cryptanalysis.html.
References 123
[Seb89]
Seberry J. & Pieprzyk J., "Cryptography: An Introduction to
Computer Security", Prentice-Hall, Received 12/5/1989, Accepted
13/11/1989.
[SEF02]
The Shodor Education Foundation, Inc, "RSA Cryptology", This
project is supported, in part, by the National Science Foundation ,
LNCS # 950, p.p. 86-91, 2002.
[Sha02]
Sharma N., Bhatia J. S.& Gupta N., "An Encrypto-Stego Technique
Based Secure Data Transmission System", LNCS # 123, p.p. 58-19,
2002.
[Shi01]
Shih T.Y. & Liu J.K., "On the Performance of JPEG2000 for Aerial
Photo Compression", Department of Civil Engineering National
Chiao-Tung University, Received 21/6/2001, Accepted 9/12/2001.
[Sid99]
Siddiqui K.,"Covert Channels Over TCP/ IP & Protocol
Steganography : A Survey", Master in Computer Science, Lahore
University of Management Sciences, 1999.
[Sil00]
Silva E., "The Best Transform in the Replacement Coefficients and
the Size of the Payload Relationship Sense", Master in Computer
Science, Department of Electrical and Computer Engineering, Tufts
University Medford, MA, USA, 2000.
[Sol01]
Solanki K., Sullivan K., Madhow U. & Manjunath B. S., "Provably
Secure Steganography: A Chie Ving Zero K-L Divergence Using
Statistical Restoration", Dept. of Electrical and Computer
Engineering University of California at Santa Barbara, LNCS # 324,
p.p. 21-11, 2001.
[Ste01]
Steffen A., "Secure Network Communication Part II Public Key
Cryptography", LNCS # 999, p.p. 20-10, Received 2/12/2000,
Accepted 11/4/2001.
References 124
[Tra92]
Trappe W. & Washington L., " Introduction to cryptography with
coding theory", New Jersey: Prentice Hall, Rivest R. MD5, 1992.
Algorithm[Online]Available:
http://www.kleinschmidt.com/edi/md5.htm.
[TSC02]
Technical Standardization Committee on AV & IT Storage Systems
and Equipment, "Exchangeable image file format for digital still
cameras", Exif Version 2.2, Published by Japan Electronics and
Information Technology Industries Association, Established in April,
LNCS # 870, p.p. 80-99, 2002 .
[Uru01]
Uruba I., "Hiding Text in Image" M.Sc. Thesis, University of
technology, Computer Science Department, London University,
2001.
[Wei01]
Weise J., "Public Key Infrastructure Overview", Global Security
Practice, Sun Blue Prints, OnLine:
ttp://www.sun.com/blueprints, Part No.: 816-1279-10, August
2001.
[Wri99]
Wright D., "Public-key cryptography", Department of Computer
Science, University of London, LNCS # 110, p.p. 76-20, December 19,
1999.
[Yam03]
Yamane A., Iyota T., Choi Y., Kubota Y. & Watanabe K., "A Study
on Propagation Characteristics of Spread Spectrum Sound Waves
Using a Band-Limited Ultrasonic Transducer", Faculty of
Engineering, Soka University, Received October 20, 2003; accepted
December 5, 2003.
ﻣﺴﺘﺨﻠﺺ اﻟﺒﺤﺚ
ﻟﻘﺪ ﺷﻬﺪ ﻋﺎﻟﻤﻨﺎ اﻟﺤﺪﻳﺚ ﺛﻮرة ﻓﻲ ﻋﺎﻟﻢ اﻟﻤﻌﻠﻮﻣﺎت اﻟﺮﻗﻤﻴﺔ اﻟﺘﻲ ﺗﺮآﺖ ﺁﺛﺎرهﺎ ﻋﻠﻰ ﻣﺠﺘﻤﻌﺎﺗﻨﺎ
وﺣﻴﺎﺗﻨﺎ .وﻓﻲ ﻣﻘﺎﺑﻞ ذﻟﻚ ،ﺑﺮزت ﺗﺤﺪﻳﺎت آﺜﻴﺮة ﺗﻤﺜﻠﺖ ﻓﻲ ﺳﻬﻮﻟﺔ اﻟﻮﺻﻮل إﻟ ﻰ ﺗﻠ ﻚ اﻟﻤﻌﻠﻮﻣ ﺎت
وآﺸﻔﻬﺎ ،ﺧﺎﺻﺔ إذا ﻣﺎ ﻋﻠﻤﻨﺎ أن ﻗﺴﻤﺎ ﻣﻨﻬﺎ ذات أهﻤﻴﺔ آﺒﻴﺮة وﺗﺘﻄﻠﺐ اﻟﺤﻤﺎﻳ ﺔ واﻟ ﺴﺮﻳﺔ ﻷﺳ ﺒﺎب
ﻣﺘﻨﻮﻋ ﺔ .وﻣ ﻦ اﺟ ﻞ اﻟﺤﻔ ﺎظ ﻋﻠ ﻰ اﻟﻜﺜﻴ ﺮ ﻣ ﻦ ه ﺬﻩ اﻟﻤﻌﻠﻮﻣ ﺎت واﻟﺒﻴﺎﻧ ﺎت اﻟﺘ ﻲ ﺗﺘﻄﻠ ﺐ اﻟ ﺴﺮﻳﺔ،
ﺑﺮزت اﻟﺤﺎﺟﺔ إﻟﻰ اﺧﺘﺮاع أﻧﻈﻤﺔ ﺣﻤﺎﻳﺔ ،وﻣﻦ ﺑﻴﻨﻬﺎ ﻣﻮﺿ ﻮع ﺑﺤﺜﻨ ﺎ اﻟ ﺬي ﻳﺘﻨ ﺎول دراﺳ ﺔ وﺑﻨ ﺎء
ﻧﻈﺎم ﻣﻘﺘﺮح ﻣﻦ ﺷﺎﻧﻪ اﻟﻘﻴﺎم ﺑﻬﺬﻩ اﻟﻤﻬﻤﺔ.
وﻣﻦ أﺟﻞ ﺿﻤﺎن ﺳﺮﻳﺔ أآﺜﺮ ﻟﻠﺒﻴﺎﻧﺎت وﺻﻌﻮﺑﺔ آﺸﻔﻬﺎ ،ﻓﻘﺪ ﺣﺎوﻟﻨﺎ اﻗﺘﺮاح ﻧﻈﺎم ﻳ ﺪﻣﺞ ﻣ ﺎ ﺑ ﻴﻦ
اﻟﺘﺸﻔﻴﺮ واﻹﺧﻔﺎء ﻣﻦ أﺟﻞ إﺿﺎﻓﺔ ﻣﺴﺘﻮﻳﺎت أﻣﻨﻴﺔ أﺧﺮى.
ﻳﻌﺘﻤ ﺪ ﻧﻈﺎﻣﻨ ﺎ اﻟﻤﻘﺘ ﺮح ﻋﻠ ﻰ ﺗﻬﻴﺌ ﺔ ﺑﻴﺎﻧ ﺎت اﻟ ﺼﻮر ﻟﻠﺨﻄ ﻮة اﻟﺘﺎﻟﻴ ﺔ )(DCT,Quantization
ﻣ ﻦ ﺧ ﻼل ﻋﻤﻠﻴ ﺔ اﻹﺧﻔ ﺎء واﺳ ﺘﺨﺪام ﻣ ﺴﺘﻮﻳﻴﻦ ﻣ ﻦ اﻷﻣﻨﻴ ﺔ :ﺧﻮارزﻣﻴ ﺔ أل RSAواﻟﺘﻮﻗﻴ ﻊ
اﻟﺮﻗﻤﻲ ،وﻣﻦ ﺛﻢ ﻧﺨﺰن اﻟﺼﻮرة ﻋﻠﻰ ﺷﻜﻞ JPEGوﻓﻲ هﺬﻩ اﻟﺤﺎﻟﺔ ﺗﻜﻮن اﻟﺮﺳﺎﻟﺔ اﻟ ﺴﺮﻳﺔ ﻧ ﺼﺎ
ﻋﺎدﻳ ﺎ ﻣ ﻊ ﺗﻮﻗﻴ ﻊ رﻗﻤ ﻲ ،ﺑﻴﻨﻤ ﺎ ﻳﻜ ﻮن اﻟﻐﻄ ﺎء ﺻ ﻮرة ﻣﻠﻮﻧ ﺔ .وﻋﻨﺪﺋ ﺬ ،ﻓ ﺎن ﻧﺘ ﺎﺋﺞ اﻟﺨﻮارزﻣﻴ ﺔ
ﺗﺨ ﻀﻊ ﻟﻌ ﺪة ﻣﻌ ﺎﻳﻴﺮ ﻟﺘﻘﻴﻴﻤﻬ ﺎ ﺗﺜﺒ ﺖ آﻔﺎﻳ ﺔ ه ﺬﻩ اﻟﺨﻮارزﻣﻴ ﺔ وﻓﻌﺎﻟﻴﺘﻬ ﺎ .وﻋﻠﻴ ﻪ ﻓ ﺈن اﻟﺨﻮارزﻣﻴ ﺔ
اﻟﻤﻘﺘﺮﺣﺔ ﻟﻬﺬا اﻟﺒﺤﺚ ﻳﻤﻜﻦ ﺗﻘﺴﻴﻤﻬﺎ إﻟﻰ ﻗﺴﻤﻴﻦ رﺋﻴﺴﻴﻴﻦ :إﺧﻔﺎء اﻟﻨﺺ ﻣﻦ اﻟﻤﺮﺳ ﻞ ،وﻓﺘﺤ ﻪ ﻣ ﻦ
اﻟﻤﺴﺘﻠﻢ .وآ ﻞ واﺣ ﺪ ﻣ ﻦ ه ﺬﻳﻦ اﻟﻘ ﺴﻤﻴﻦ ﻳﻤﻜ ﻦ ﺗﻘ ﺴﻴﻤﻪ إﻟ ﻰ ﻋ ﺪة إﺟ ﺮاءات ﻳﻘ ﻮم ﺑﺄداﺋﻬ ﺎ ﺑﺮﻧ ﺎﻣﺞ
.Delphi 5
@@
@™í—ä@öbÑ‚gì@Ñ“m@Õà@Öïjmì@âïá—m
@ @bà@òŠí–@À
@óïäbáïÝÜa@óÉàbu@O@óïbýa@óïiÜa@óïÝØ@ݪ@¶a@óà‡Õà@óÜbŠ
@ @pbjb¨a@ãíÝÈ@À@nub¾a@óuŠ†@Þïä@pbjÝnà@æà@övØ
@ @@ÞjÔ@æà
@ @ôÑ—àîÉÜa@‡jÈ@õ‡ä
@ @@Óa‹’g@o¥
@@ ‡jÈ@çbáÝ@ÞšbÐ@N†
@ @Ãbj’@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ßìýa@ÊïiŠ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@óïŠ
2010@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1431@@@@@@@@@@@@@@@@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@ @@ @2709
@@óØòìóåï
ÜüÙŽïÜ@õómŠíØ@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@@
@aìóØ@熊bàˆ@õŠbïäaŒ@ôäbéïu@óÜ@ôåïi@òìóîü‚ói@ôÙŽï’Šü’@çbáŽîíä@ôäbéïu@@ @@@
@òìó÷@ ŠójàaŠóióÜ@ L@ òŠbî†@ òìóäb¹bîˆ@ ì@ çb¹bØóÜóàüØ@ Šóói@ çbîó−óq@ æŽîí’
@ìóäbîŠbïäaŒ@ ìó÷@ üi@ ´“îó @ ôäbb÷ói@ óÜ@ a‡Üóè@ õŠó@ ŠûŒ@ ôØóïîŠbÙnÜóèŠói
@ì@çŠûŒ@ôØóïïÙä‹ @çòìb‚@çbïÙï’ói@aìóØ@çbáïäaŒ@Šó ó÷@ômójîbmói@L@ôån‚Šò†
@bu@ N@ æ’óšóàóè@ ôØóîüè@ ‡äóš@ ŠóióÜ@ óîóè@ òìóånaŠbq@ ì@ Žïéä@ ói@ ônîíŽïq
@ônîíŽïq@ óïïåŽïéä@ ói@ çbïnîíŽïq@ aìóØ@ óäbîŠbïäaŒ@ ãóÜ@ ŠûŒ@ ôånaŠbq@ õìbåŽïqóÜ
@ômóibi@ a‡äbîíŽïäóÜ@ L@ a‡ Üóè@ õŠó@ ´aŠbq@ ôäbØóàónï@ õòìóåîŒû†
@Žôäaíni@óØ@òìa‹Ø@Œbïå“Žïq@ôÙŽïàónï@ô䆋Øbåïi@ìòìóåï ÜüÙŽïÜ@óØ@çbàóØòìóåïÜüÙŽïÜ
@@N@oŽïnjÜóè@óØŠó÷@ãói
@bî@ çbØóåŽîì@ bî@ çbØóäbîói@ íŽïä@ ôäbØóïåŽïéä@ óàbä@ ôØûŠòìbä@ ôäbb÷@ ói@ óîüi@@@@@@
@õŒbïå“Žïq@ a‡äbá Üìóè@ óîüi@ L@ @ a‹Øò†@ Ò’óØ@ çbØóïïäò†@ óïïû†@ bî@ çbØóÔò†
@ô䆋؆bîŒ@ ìbåŽïqóÜ@ pbÙi@ Øóî@ @ õónŽîìb÷@ ò‹Ñ’@ ìòìó䆊b’@ óØ@ æîóÙi@ ÚŽïàónï
@@N@óÙî†@ôånaŠbq@ôÙŽïnb÷@‡äóš
@Žõ‡äóè@ ô䆋Øò†bàb÷@ ói@ oŽïóiò†@ o“q@ çbàóØòìa‹ØŒbïå“Žïq@ óàónï@
@ìòìó䆊b’@ôŽîŠóÜ@H@ DCT , Quantization@I@‹m@õìbäóè@üi@óåŽîì@õóàbåäbîói
@L@ íõŠbØòŠbàˆ@ ô䆋Øììˆaì@ ì@ ômóïïàŒŠaí‚@ Z@ ´aŠbq@ ônb÷@ ìì†@ ôäbåŽïèŠbØói
@ôÙŽïÔò†@ónŽïiò†@óØóïïåŽïéä@óàbä@ómóÜby@ãóÜ@ì@JPEG@@õòíŽï’@ŠóóÜ@óØóåŽîì@çb’bq
@ôØóîóåŽîì@ óØòŠóÙï’üqa†@ óîóäaìóÜ@ L@ õŠbØòŠbàˆ@ ô䆋Øììˆaì@ Žßó óÜ@ ôîbb÷
@æî‡äóš@ Šói@ ónŽîìóØò†@ çbØóïïàŒŠaí‚@ óàb−ó÷Šò†@ bìó÷@ L@ ì@ oŽïiò†@ ÂäòŠìbäòŠ
@óîüi@ LoŽïåŽïá
Üóò†@ õŠóîŠbØ@ ìómóïïàŒŠaí‚@ ãó÷@ õbäaím@ ôä‡äbäóÜóè@ üi@ ŠòíŽïq
@ô’ói@ìì†@Šóói@µäaímò†@óîòìóåïÜüÙŽïÜ@ãó÷@üi@óîòìa‹ØŒbïå“Žïq@ómóïïàŒŠaí‚@ãó÷
@çóîýóÜ@ õòìó䆋Ø@ L@ ìåàbîóq@ óÜ@ ×ò†@ õòìó䆊b’@ Z@ æîóÙi@ ô’óia†@ ôØòŠó
@ÚŽîìbäóè@‡äóš@üi@oŽî‹Ùi@•óia†@óîa‡äaímóÜ@ó’ói@ìì†@ãóÜ@ÛóîŠóè@Lòìò‹ Šòíàbîóq
N@oŽïnò‡ Üóè@ôŽïq@@Delphi 5@ôàa‹ û‹q@óØ
@@@ @
@熋Ø@†üØ@ói@õŒbïå“Žïq@:@熋َïuói@Žôu@ì@æîaî†
@ @a†óåŽîì@óÜ@×ò†@ñòìó䆊b’@ì
@@
@@
@@
@ @ôäbáŽïÝ@õüÙäaŒ@O@@ômòŠóåi@õò†ŠòìŠóq@ôvïÜüØ@ói@òìa‹Ø@•óÙ“Žïq@óØóîóàbä
@ônäaŒ@óÜ@‹Žïnubà@@õóÝq@ôäbåŽïè@oò†ói@@Žíi@ŠóØìaìóm@ôÙŽï’ói@Ûòì
@ @ŠómíïràüØ
@@
@@
@@
@ @çóîýóÜ
@ @ôÑ—à@îÉÜa@‡jÈ@õ‡ä
@@
@@
@ @’ŠóqŠóói
@ @‡jÈ@çbáÝ@ÞšbÐN†
@@
@@
@ @pbií’@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@ @ãóØóî@ôÉïiòŠ@@@@@@@@@@@@@@@@@ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@Žôàó’òŠ
@ @2010@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@1431@@@@@@@@@@@@@@@@@@ @@ @@@@@@@@@@@@@@@@@@@@@@@@@@ @@@ @@2709