Top Banner
1 MINI PROJECT ON “STEGANOGRAPHY” Submitted to CS Department, Institute of Engineering and Technology,Bundelkhand University,Jhansi,For the fulfilment of the degree of B.Tech(Computer Science &Engineering) INSTITUTE OF ENGINEERING & TECHNOLOGY (Vth SEM-2015-2016) Er.B.B.Niranjan Er.Vijay Kumar Verma Lecturer Head of Department Computer Sc.& Engg. Dept. Computer Sc.& Engg. Dept IET,BU,JHANSI(UP) IET,BU,JHANSI(UP) Er.Vijay Kumar Verma 1.SHIVAM PORWAL(131234040048) (Mini Project Incharge) 2.NIKITA BISWAS (131234040028) Computer Sc.& Engg. Dept. 3.NIHAL RAWAT (131234040027) IET,BU,JHANSI(UP) 4. KUSHAL SINGH (131234040021)
26

IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

Feb 11, 2017

Download

Engineering

Shivam Porwal
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

1

MINI PROJECT

ON

“STEGANOGRAPHY”

Submitted to CS Department, Institute of Engineering and

Technology,Bundelkhand University,Jhansi,For the fulfilment of the degree of

B.Tech(Computer Science &Engineering)

INSTITUTE OF ENGINEERING & TECHNOLOGY

(Vth SEM-2015-2016)

Er.B.B.Niranjan Er.Vijay Kumar Verma

Lecturer Head of Department

Computer Sc.& Engg. Dept. Computer Sc.& Engg. Dept

IET,BU,JHANSI(UP) IET,BU,JHANSI(UP)

Er.Vijay Kumar Verma 1.SHIVAM PORWAL(131234040048)

(Mini Project Incharge) 2.NIKITA BISWAS (131234040028)

Computer Sc.& Engg. Dept. 3.NIHAL RAWAT (131234040027)

IET,BU,JHANSI(UP) 4. KUSHAL SINGH (131234040021)

Page 2: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

2

INSTITUTE OF ENGINEERING & TECHNOLOGY,

BUNDELKHAND UNIVERSITY,JHANSI

CERTIFICATE

This is to certify that the project report entitled “IMAGE

STEGANOGRAPHY”is a bonafide record of the project work done

by the students:

1.SHIVAM PORWAL (131234040048)

2.NIKITA BISWAS (131234040028)

3.NIHAL RAWAT (131234040027)

4. KUSHAL S. KUSHWAHA (131234040021)

In partial fulfilment of the requirement for the 5th semester of

COMPUTER SCIENCE & ENGINEERING in Institute of

Engineering Technology,

Bundelkhand University ,Jhansi.

Er.Vijay Kumar Verma Er.B.B.Niranjan

(Mini Project Incharge) (Mini Project Guide)

Computer Sc.& Engg. Dept. Computer Sc.& Engg.

Dept

IET,BU,JHANSI(UP) IET,BU,JHANSI(UP)

Page 3: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

3

ACKNOWLEDGEMENT

This Project itself is an acknowledgement to the

inspiration, drive and technical assistance contributed by many

individuals. This project would have never seen the light of this

day without the help and guidance I have received.

I express my gratitude to Er. Vijay Kumar Verma ,

Head, Department of Computer Science & Engineering, Institute

of Engineering & Technology, Bundelkhand University ,Jhansi ,

for providing me with excellent infrastructure and awesome

environment that laid potentially strong foundation for my

professional life .

I own an incalculable debt of my all staffs of

Department of Computer Science & Engineering for their direct

and indirect help.

I extend my heartfelt thanks to my parents, teacher,

friends, and well-wishers for their support and timely help.

Shivam porwal(131234040048) Nikita Biswas(131234040028)

Nihal Rawat(131234040027) Kushal S.Kushwaha(131234040021)

Page 4: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

4

DECLARATION

I hereby declare that the project work entitled “STEGANOGRAPHY”

Is submitted in partial fulfilment of the requirements for

the 5th semester

B.Tech(Computer Science & Engineering) and it is a

report of the original work done by me during the period

of July – December in Institute of Engineering &

Technology, Bundelkhand University, Jhansi.’

Shivam porwal(131234040048) Nikita Biswas (131234040028)

Nihal Rawat (131234040027) Kushal Singh kushwaha(131234040021)

Place: Jhansi

Date: ---------------

Page 5: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

5

CONTENTS

Chapter no Name Page No

1 Steganography at

Large

1.1 Introduction 1.2 Where hidden data

hides

1.3 What does the project do

7

2 Problem Statement 10

3 Objective 11

4 Module Description

4.1 Interface Module

Diagram

4.2Data Flow Diagram

12

5 Software Support

5.1 Technical details

15

6 Image Steganography

6.1 Implementation

6.2 Encoding process

6.3 Decoding process

16

7 LSB Algorithm

6.1 Implementation

18

8 User Manual 20

9 Summary 25

10 Bibliography 26

Page 6: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

6

Abstract

Steganography is the art of hiding the fact that

communication is taking place, by hiding

information in other information. Many different

carrier file formats can be used, but digital images

are the most popular because of their frequency on

the Internet. For hiding secret information in

images, there exists a large variety of stenographic

techniques some are more complex than others and

all of them have respective strong and weak points.

Different applications have different requirements

of the steganography technique used. For example,

some applications may require absolute invisibility

of the secret information, while others require a

larger secret message to be hidden. This project

intends to give an overview of image steganography,

its uses and techniques. It also supports

steganography in Audio files. For a more secure

approach, the project encrypts the message using

secret key and then sends it to the receiver. The

receiver then decrypts the message to get the

original one.

Page 7: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

7

1. Steganography at Large

1.1 Introduction

Steganography derives from the Greek word steganos,

meaning covered or secret, and graphy (writing or drawing).

On the simplest level, steganography is hidden writing,

whether it consists of invisible ink on paper or copyright

information hidden in an audio file.

Where cryptography scrambles a message into a code to

obscure its meaning, steganography hides the message

entirely. These two secret communication technologies can

be used separately or together—for example, by first

encrypting a message, then hiding it in another file for

transmission. As the world becomes more anxious about the

use of any secret communication, and as regulations are

created by governments to limit uses of encryption,

steganography’s role is gaining prominence.

What Steganography essentially does is exploit human

perception, human senses are not trained to look for files

that have information hidden inside of them, although

there are programs available that can do what is called

Steganalysis (Detecting use of Steganography.)

Steganography hide the secrete message within the host data set and

presence imperceptible and is to be reliably communicated to a

receiver. The host data set is purposely corrupted, but in a covert

way, designed to be invisible to an information analysis.

Page 8: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

8

1.2 Where Hidden Data hides?

It is possible to alter graphic or sound files

slightly without losing their overall viability for the

viewer and listener. With audio, you can use bits of

file that contain sound not audible to the human ear.

With graphic images, you can remove redundant bits

of color from the image

and still produce a picture that looks intact to human

eye and is difficult to discern from its original.

It is in those bits that stego hides its data. A

stego program uses an algorithm, to embed data in

an image or sound file, and a password scheme to

allow you to retrieve information.

1.3 What does the project do?

- Hiding the text message in an image file .

- Encryption of the same message, so as to

support more secure steganography.

- The decoding of the message, decryption and

source message retrieval are also supported.

Page 9: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

9

2. Problem Statement:

The former consists of linguistic or language forms of

hidden writing. The later, such as invisible ink, try of hide

messages physically. One disadvantage of linguistic

steganography is that users must equip themselves to have

a good knowledge of linguistry. In recent years, everything

is trending toward digitization. And with the development

of the internet technology, digital media can be transmitted

conveniently over the network. Therefore, messages can be

secretly carried by digital media by using the

steganography techniques, and then be transmitted

through the internet rapidly

Steganography is the art of hiding the fact that

communication is taking place, by hiding information in

other information. Many different carrier file formats can

be used, but digital images are the most popular because of

their frequency on the internet. For hiding secret

information in images, there exists a large variety of

steganography techniques some are more complex than

others and all of them have respective strong and weak

points.

So we prepare this application, to make the information

hiding more simple and user friendly.

Page 10: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

10

3. Objective

The goal of steganography is covert communication. So, a

fundamental requirement of this steganography system is that

the hider message carried by stego-media should not be sensible

to human beings.

The other goal of steganography is to avoid drawing suspicion

to the existence of a hidden message. This approach of

information hiding technique has recently became important in a

number of application area

This project has following objectives:

To product security tool based on steganography

techniques.

To explore techniques of hiding data using encryption

module of this project

To extract techniques of getting secret data using

decryption module.

Steganography sometimes is used when encryption is not

permitted. Or, more commonly, steganography is used to

supplement encryption. An encrypted file may still hide

information using steganography, so even if the encrypted file is

deciphered, the hidden message is not seen.

Page 11: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

11

4. Module Description

Home:

This page will have the home display of the software and it will

have the link to other modules also. Once the module is open it can

then link to the database and retrieve the settings from the database.

This module is also responsible to apply the settings on the other

modules. This module will have only database reading capabilities and

not writing.

Hide / Encrypt the data :

Create a File using the Text editor : This module will be used

to create a file that will contain the Plaint text with no

formatting. Also the file created under this module will not be

saved in the system and can and will only be saved as a

Encrypted (Visual encryption) or will be concealed under an

image file.

Import file: In this module we will be able to import a file from

the computer and that will be concealed under an image file.

Unhide / Decrypt the data:

Import file: This module will have the ability to import file(s). It

will be able to decrypt, Unhide the file from the image file and it

will also be able to retrieve the message from the image files

generated by the encryption module using the Visual

Cryptography.

Page 12: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

12

4.1 Interface Module Diagram :

Home Page

Hide / Encrypt the data

Create a File using the Text

editorImport a file

Unhide / Decrypt the

data

Import a file

User interface Preferences

setup

DB to save User

preferences

Page 13: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

13

4.2 DATA FLOW DIAGRAM

Level-0 Diagram :

Level-1 Diagram :

Process

Database

OutputInput

Home

Hide /Encrypt

Unhide /Decrypt

User preferences

Database

Input Output

Process

Input Output

Process

Page 14: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

14

5. Software Support Operating system:

Windows or GNU/Linux JDK (1.7) :

The Java Development Kit (JDK) is an implementation of

either one of the Java SE, Java EE or Java ME platforms released by

Oracle Corporation in the form of a binary product aimed at Java

developers on Solaris, Linux, Mac OS X or Windows.

Java is fast, secure, and reliable. I am using Java because of some

the most desirable features of Java. Some of those are list below-

Security

Portability

Java Architecture

Object-Oriented Robust

JDBC (Java Database Connectivity)

Swing :

Swing, which is an extension library to the AWT, includes new

& improved components that enhance the look and functionality of

GUIs. Swing can be used to build Standalone swing GUI Applications as

well as Servlets and Applets. It employs model/view design

architecture. Swing is more portable and more flexible than AWT.

Swing is built on top of AWT and is entirely written in Java, using

AWT’s lightweight component support. The architecture of Swing

components makes it easy to customize both their appearance and

behavior.

Page 15: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

15

6. Image Steganography

6.1 Implementation:

- Technical Details:

o Using java.awt.Image, ImageIO

o The package contains all the necessary classes and

methods along with interfaces that are necessary for the

manipulation of the images.

6.2 The Encoding Process:

- The steganography technique used is LSB coding.

- The offset of the image is retrieved from its header.

- That offset is left as it is to preserve the integrity of the

header, and from the next byte, we start our encoding

process.

- For encoding, we first take the input carrier file i.e. an image

file and then direct the user to the selection of the text file.

- Creation of User Space:

o User Space is created for preserving the original file, so

that all the modifications are done in the user space.

o In the object of BufferedImage, using ImageIO.read

method we take the original image.

o Using createGraphics and drawRenderedImage method

of Graphics class, we create our user space in

BufferedImage object.

- The text file is taken as input and separated in stream of bytes.

- Now, each bit of these bytes is encoded in the LSB of each

next pixel.

- And, finally we get the final image that contains the encoded

message and it is saved, at the specified path given by user,

in PNG format using ImageIO.write method.

Page 16: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

16

6.3 The Decoding Process: The offset of the image is retrieved from its header. - Create the user space using the same process as in the

Encoding. - Using getRaster() and getDataBuffer() methods of

Writable Raster and DataBufferByte classes. The data of

image is taken into byte array. - Using above byte array, the bit stream of original text

file, is retrieved into the another byte array. - And above byte array is written into the decoded text

file, which leads to the original message.

Start Application

Encryption Decryption

Image file

BMP image file

Image Message

file

Page 17: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

17

7. LSB ALGORITHM

7.1 Implementation:

Structure of image files is that an image is created from pixels

that any pixel created from three colors ( red, green and blue

said RGB) each color of a pixel is one byte information that

shows the density of that color. Merging these three color makes

every color that we see in these pictures. We know that every

byte in computer science is created from 8 bit that first bit is

Most-Significant-Bit (MSB) and last bit Least-Significant-Bit

(LSB), the idea of using Steganography science is in this place;

we use LSB bit for writing our security information inside

pictures. So if we just use last layer (8st layar) of information, we

should change the last bit of pixels, in other hands we have 3 bits

in each pixel so we have 3*hight*width bits memory to write

our information. But before writing our data we must write

name of data(file), size of name of data & size of data. We can do

this by assigning some first bits of memory (8st layer).

Page 18: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

18

Encryption Process

IMAGE FILE INFORMATION FILE

ENCRYPT IMAGE FILE

Decryption Process

ENCRYPT IMAGE FILE

INFORMATION FILE IMAGE FILE

Page 19: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

19

8. User Manual

The Embed stegonographic message box will

get opened where the message is to be

embedded

Page 20: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

20

Then click on the OPEN tab.

Type the message to be embedded

Select the original image and than click to

EMBED tab.

Page 21: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

21

Than click to SAVE INTO NEW FILE tab .

Staganographed image get formed.

Page 22: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

22

To decode steganographic image.

Select the open tab.

Page 23: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

23

Select the steganographed image

and click the DECODE tab.

Page 24: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

24

The decode message will displayed in

DECODED MESSAGE box.

Page 25: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

25

9. Summary

Steganography is a really interesting subject and outside of the

mainstream cryptography and system administration that most

of us deal with day after day.

Steganography can be used for hidden communication. We have

explored the limits of steganography theory and practice. We

printed out the enhancement of the image steganography system

using LSB approach to provide a means of secure

communication. A stego-key has been applied to the system

during embedment of the message into the cover image.

This steganography application software provided for the

purpose to how to use any type of image formats to hiding any

type of files inside their. The master work of this application is in

supporting any type of pictures without need to convert to

bitmap, and lower limitation on file size to hide, because of

using maximum memory space in pictures to hide the file.

Steganography, like cryptography, will play an increasing role in

the future of secure communication in the “digital world”.

Page 26: IMAGE STEGANOGRAPHY JAVA PROJECT SYNOPSIS

26

10. Bibliography

Books AND Whitepapers

1. T. Morkel Information and Computer Security Architecture (ICSA) Research group

University of Pretoria, 0002, Pretoria, South Africa

2. V. K. Pachghare, Cryptography and Information

Security , Prentice-hall Of India Pvt Ltd

Websites www.sans.org

www.idrbt.ac.in/

(Institute of Development and Research in Banking Technology,Hyderabad)

www.oracle.com

www.slideshare.net