read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing...

85
INTRODUCTION Image Processing It generally refers to processing of a two-dimensional picture by a digital computer. A digital image is a representation of a two-dimensional image as a finite set of digital values, called picture elements or pixels. Pixel values typically represent gray levels, colours, heights, opacities etc. Then the image processing focuses on two major tasks Improvement of pictorial information for human interpretation Processing of image data for storage, transmission and representation for autonomous machine perception. Where image processing ends and fields such as image analysis and computer vision start. Securing image transmission, for which two common approaches are image encryption and data hiding. Image encryption is a technique that makes use of the natural property of an image, such as high redundancy and strong spatial correlation, to get an encrypted image based on Shannon’s confusion and diffusion properties. The encrypted image is a noise image so that no one can obtain the secret image from it unless he/she has the correct key. However, the encrypted image is a meaningless file, which cannot 1

Transcript of read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing...

Page 1: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

INTRODUCTION

Image Processing It generally refers to processing of a two-dimensional

picture by a digital computer. A digital image is a representation of a two-

dimensional image as a finite set of digital values, called picture elements or

pixels. Pixel values typically represent gray levels, colours, heights, opacities

etc. Then the image processing focuses on two major tasks Improvement of

pictorial information for human interpretation Processing of image data for

storage, transmission and representation for autonomous machine perception.

Where image processing ends and fields such as image analysis and computer

vision start.

Securing image transmission, for which two common approaches are

image encryption and data hiding. Image encryption is a technique that makes

use of the natural property of an image, such as high redundancy and strong

spatial correlation, to get an encrypted image based on Shannon’s confusion and

diffusion properties. The encrypted image is a noise image so that no one can

obtain the secret image from it unless he/she has the correct key. However, the

encrypted image is a meaningless file, which cannot provide additional

information before decryption and may arouse an attacker’s attention during

transmission due to its randomness in form. An alternative to avoid this problem

is data hiding that hides a secret message into a cover image so that no one can

realize the existence of the secret data.

Public-key cryptography, also known as asymmetric cryptography, is a

class of cryptographic protocols based on algorithms that require two

separate keys, one of which is secret (or private) and one of which is public.

Although different, the two parts of this key pair are mathematically linked. The

public key is used, for example, to encrypt plaintext or to verify a digital

signature; whereas the private key is used for the opposite operation, in these

examples to decrypt ciphertext or to create a digital signature. The term

1

Page 2: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

"asymmetric" stems from the use of different keys to perform these opposite

functions, each the inverse of the other – as contrasted with conventional

("symmetric") cryptography which relies on the same key to perform both.

Public-key algorithms are based on mathematical problems that currently

admit no efficient solution and are inherent in certaininteger

factorization, discrete logarithm, and elliptic curve relationships. It is

computationally easy for a user to generate a public and private key-pair and to

use it for encryption and decryption. The strength lies in the "impossibility"

(computational impracticality) for a properly generated private key to be

determined from its corresponding public key. Thus the public key may be

published without compromising security. Security depends only on keeping the

private key private. Public key algorithms, unlike symmetric key algorithms,

do not require a secure for the initial exchange of one (or more) secret

keys between the parties.

Project Overview

Encryption and data hiding are two effective means of data protection.

While the encryption techniques convert plaintext content into unreadable

ciphertext, the data hiding techniques embed additional data into cover media

by introducing slight modifications. In some distortion-unacceptable scenarios,

data hiding may be performed with a lossless or reversible manner. Although

the terms “lossless” and “reversible” have a same meaning in a set of previous

references, we would distinguish them in this work.

We say a data hiding method is lossless if the display of cover signal

containing embedded data is same as that of original cover even though the

cover data have been modified for data embedding. For example, the pixels with

the most used color in a palette image are assigned to some unused color indices

for carrying the additional data, and these indices are redirected to the most used 2

Page 3: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

color. This way, although the indices of these pixels are altered, the actual

colors of the pixels are kept unchanged. On the other hand, we say a data hiding

method is reversible if the original cover content can be perfectly recovered

from the cover version containing embedded data even though a slight

distortion has been introduced in data embedding procedure. A number of

mechanisms, such as difference expansion, histogram shift and lossless

compression, have been employed to develop the reversible data hiding

techniques for digital images. Recently, several good prediction approaches and

optimal transition probability under payload-distortion criterion have been

introduced to improve the performance of reversible data hiding.

Combination of data hiding and encryption has been studied in recent

years. In some works, data hiding and encryption are jointed with a simple

manner. For example, a part of cover data is used for carrying additional data

and the rest data are encrypted for privacy protection. Alternatively, the

additional data are embedded into a data space that is invariable to encryption

operations. In another type of the works, data embedding is performed in

encrypted domain, and an authorized receiver can recover the original plaintext

cover image and extract the embedded data. This technique is termed as

reversible data hiding in encrypted images (RDHEI). In some scenarios, for

securely sharing secret images, a content owner may encrypt the images before

transmission, and an inferior assistant or a channel administrator hopes to

append some additional messages, such as the origin information, image

notations or authentication data, within the encrypted images though he does not

know the image content. For example, when medical images have been

encrypted for protecting the patient privacy, a database administrator may aim

to embed the personal information into the corresponding encrypted images.

Here, it may be hopeful that the original content can be recovered without any

error after decryption and retrieve of additional message at receiver side.

3

Page 4: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

While the additional data are embedded into encrypted images with

symmetric cryptosystem in the above-mentioned RDHEI methods, a RDHEI

method with public key cryptosystem is proposed. Although the computational

complexity is higher, the establishment of secret key through a secure channel

between the sender and the receiver is needless. With the method, each pixel is

divided into two parts: an even integer and a bit, and the two parts are encrypted

using Paillier mechanism respectively. Then, the ciphertext values of the second

parts of two adjacent pixels are modified to accommodate an additional bit. Due

to the homomorphic property of the cryptosystem, the embedded bit can be

extracted by comparing the corresponding decrypted values on receiver side. In

fact, the homomorphic property may be further exploited to implement signal

processing in encrypted domain. For recovering the original plaintext image, an

inverse operation to retrieve the second part of each pixel in plaintext domain is

required, and then two decrypted parts of each pixel should be reorganized as a

pixel.

This work proposes a lossless, a reversible, and a combined data hiding

schemes for cipher-text images encrypted by public key cryptography with

probabilistic and homomorphic properties. In the lossless scheme, the ciphertext

pixel values are replaced with new values for embedding the additional data into

the LSB-planes of ciphertext pixels. This way, the embedded data can be

directly extracted from the encrypted domain, and the data embedding operation

does not affect the decryption of original plaintext image. In the reversible

scheme, a preprocessing of histogram shrink is made before encryption, and a

half of ciphertext pixel values are modified for data embedding. On receiver

side, the additional data can be extracted from the plaintext domain, and,

although a slight distortion is introduced in decrypted image, the original

plaintext image can be recovered without any error. Due to the compatibility of

the two schemes, the data embedding operations of the lossless and the

4

Page 5: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

reversible schemes can be simultaneously performed in an encrypted image. So,

the receiver may extract a part of embedded data in the encrypted domain, and

extract another part of embedded data and recover the original plaintext image

in the plaintext domain.

Advantage

The advantages of this algorithm are

(i) high capacity

(ii) security is equivalent to the security provided by cryptographic

authentication

(iii) can be applied for the authentication purposes of JPEG files, complex

multimedia objects, audio files, digitized hologram, etc.

Application

In most applications, the small distortion due to the data embedding is

usually tolerable. However, the possibility of recovering the exact original

image is a desirable property in many fields, like legal, medical and military

imaging. Let us consider that sensitive documents (like bank checks) are

scanned, protected with an authentication scheme based on a reversible data

hiding, and sent through the Internet.

5

Page 6: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Literature Review

N. A. Saleh, H. N. Boghdad, S. I. Shaheen, A. M. Darwish, “High Capacity

Lossless Data Embedding Technique for Palette Images Based on

Histogram Analysis,” Digital Signal Processing, 20, pp. 1629−1636, 2010.

Recently data embedding over images has drawn tremendous interest,

using either lossy or lossless techniques. Although lossy techniques can allow

large hiding capacity, host image cannot be recovered with high fidelity. Some

applications require exact recovery of the host image, i.e. in medicine patient

data can be embedded without affecting the medical image. In general lossless

data hiding techniques suffer from limited capacity as the host image should be

kept intact. In this paper a lossless embedding technique is proposed. In this

technique image histograms are analyzed to identify the embedding capacity of

different image types. Histogram maxima and minima are used in embedding

capacity estimation. The proposed technique gives hiding capacity that can

reach up to 50% of the host image size for images with large homochromatic

regions (cartoons-like). In fact, our study showed that the embedding capacity is

not only affected by the host image size but also by its histogram distribution.

The data embedding and extraction is performed using simple processing

operations that can save on power consumption for wireless devices.

On the other hand, as a result of the availability of powerful image

processing software packages such as Photoshop, anyone can easily modify

such digital media for any reason and create unconscious forgeries. How to

prevent a medical image from being maliciously altered, that is, detecting the

tampered parts, has become an important issue. In order to safeguard digital

images, image authentication schemes are the most widely used method.

6

Page 7: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Generally, the authentication codes are usually derived from the prominent

features of the medical image and are directly embedded into the image.

However, the embedding procedure will distort the images. This distortion may

cause the modified medical images to be unable to be used for further diagnosis.

That is to say, the method must have the ability to restore the original content

after the extraction of the authentication codes. Therefore, it is an important

challenge to develop a reversible data-hiding scheme for medical images.

J. Tian, “Reversible Data Embedding Using a Difference Expansion,” IEEE

Trans. on Circuits and Systems for Video Technology, 13(8), pp. 890−896,

2003.

A reversible watermarking algorithm with very high data hiding capacity

has been developed for color images. The algorithm allows the watermarking

process to be reversed, which restores the exact original image. The algorithm

hides several bits in the difference expansion of vectors of adjacent pixels. The

required general reversible integer transform and the necessary conditions to

avoid underflow and overflow are derived for any vector of arbitrary length.

Also, the potential payload size that can be embedded into a host image is

discussed, and a feedback system for controlling this size is developed. In

addition, to maximize the amount of data that can be hidden into an image, the

embedding algorithm can be applied recursively an across the color

components.

Reversible data embedding has drawn lots of interest recently. Being

reversible, the original digital content can be completely restored. We present a

novel reversible data-embedding method for digital images. We explore the

7

Page 8: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

redundancy in digital images to achieve very high embedding capacity, and

keep the distortion low

X. Zhang, “Separable reversible data hiding in encrypted image,”

IEEETrans. Inf. Forensics Security, vol. 7, no. 2, pp. 826–832, Apr. 2012.

The concept of steganography is used in the paper to transmit the data

secretly and safely from one user to another as it hides the data behind image. In

this sender encrypt data using AES algorithm, hides encrypted data in image

using LSB technique and the system auto generate the hide key. Sender sends

the file with the help of existing mailing system. Receiver can perform action

based on key like if he is having only data hiding then he can only get the image

in original form and if he have data hiding and data decryption key then he will

be able to get the original data, it also provides protection for the keys. All these

are done with proper login process. The system generates fake data if the user is

not authenticated in the process of login. In such a way only the authorized user,

who was supposed to get the keys, is able to get the original data.

Zhang suggests a novel method for separable reversible data hiding .Here

content owner first encrypts the original uncompressed image using an

encryption key to produce an encrypted image. Then, the data-hider compresses

the least significant bits (LSB) of the encrypted image using a data-hiding key

to create a sparse space to accommodate the additional data. At the receiver

side, the data embedded in the created space can be easily retrieved from the

encrypted image containing additional data according to the data-hiding key.

Since the data embedding only affects the LSB,a decryption with the encryption

key can result in an image similar tothe original version. When using both of the

encryption and data-hiding keys, the embedded additional data can be

8

Page 9: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

successfully extracted and the original image can be perfectly recovered by

exploiting the spatial correlation in natural image

M. U. Celik, G. Sharma, A. M. Tekalp, and E. Saber, “Lossless Generalized-

LSB Data Embedding,” IEEE Trans. on Image Processing, 14(2), pp. 253–

266, 2005.

A novel lossless (reversible) data-embedding technique, which enables

the exact recovery of the original host signal upon extraction of the embedded

information. A generalization of the well-known least significant bit (LSB)

modification is proposed as the data-embedding method, which introduces

additional operating points on the capacity-distortion curve. Lossless recovery

of the original is achieved by compressing portions of the signal that are

susceptible to embedding distortion and transmitting these compressed

descriptions as a part of the embedded payload. A prediction-based conditional

entropy coder which utilizes unaltered portions of the host signal as side-

information improves the compression efficiency and, thus, the lossless data-

embedding capacity.

In many applications, the loss of host signal fidelity is not prohibitive as

long as original and modified signals are perceptually equivalent. However, in a

number of domains such as military, legal and medical imaging although some

embedding distortion is admissible, permanent loss of signal fidelity is

undesirable. This highlights the need for lossless data embedding2 techniques.

These techniques, like their lossy counterparts, insert information bits by

modifying the host signal, thus inducing an embedding distortion. Nevertheless,

they also enable the removal of such distortions and the exact lossless

restoration of the original host signal after extraction of embedded information.

Particular applications include embedding of DICOM header information into

9

Page 10: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

medical images and providing fragile authentication watermarking for

aerial/surveillance images.

W. Hong, T.-S. Chen, and H.-Y. Wu, “An Improved Reversible Data Hiding

in Encrypted Images Using Side Match,” IEEE Signal Processing Letters,

19(4), pp. 199−202, 2012.

A novel reversible data hiding technique in encrypted images is presented

in this paper. Instead of embedding data in encrypted images directly, some

pixels are estimated before encryption so that additional data can be embedded

in the estimating errors. A benchmark encryption algorithm (e.g. AES) is

applied to the rest pixels of the image and a special encryption scheme is

designed to encrypt the estimating errors. Without the encryption key, one

cannot get access to the original image. However, provided with the data hiding

key only, he can embed in or extract from the encrypted image additional data

without knowledge about the original image. Moreover, the data extraction and

image recovery are free of errors for all images.

RDH techniques have been proposed based on three fundamental

strategies: lossless compressionappending scheme, difference expansion (DE)

and histogram shift (HS). Some recent arts combined the three strategies to

residuals of the image such as prediction errors (PE) to achieve better

performance. Almost all state-ofthe-art RDH algorithms consist of two steps.

The first step generates a host sequence with small entropy, i.e., the host has a

sharp histogram which usually can be realized by using PE combined with the

sorting technique or pixel selection. The second step reversibly embeds the

message in the host sequence by modifying its histogram with methods like HS

and DE.

10

Page 11: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

J. Yu, G. Zhu, X. Li, and J. Yang, “An Improved Algorithm for Reversible

Data Hiding in Encrypted Image,” Proceeding of the 11th International

Workshop on Digital-Forensics Watermark (IWDW 2012), Shanghai, China,

Oct. 31-Nov. 02, 2012, Lecture Notes in Computer Science, 7809, pp. 358-367,

2013.

Recently, more and more attention is paid to reversible data hiding

(RDH) in encrypted images, since it maintains the excellent property that the

original cover can be losslessly recovered after embedded data is extracted

while protecting the image content’s confidentiality. All previous methods

embed data by reversibly vacating room from the encrypted images, which may

subject to some errors on data extraction and/or image restoration. Here, a novel

method is proposed so as to reserve room before encryption with a traditional

RDH algorithm, and thus it is easy for the data hider to reversibly embed data in

the encrypted image. The proposed method can achieve real reversibility, i.e.,

data extraction and image recovery are free of any error.

The methods proposed can be summarized asthe framework, “vacating

room after encryption (VRAE)”. In this framework, a content owner encrypts

the original image using a standard cipher with an encryption key. After

producing the encrypted image, the content owner hands over it to a data hider

(e.g., a database manager) and the data hider can embed some auxiliary data

into the encrypted image by losslessly vacating some room according to a data

hiding key. Then a receiver, may be the content owner himself or an authorized

third party can extract the embedded data with the data hiding encrypted version

according to the encryption key.

11

Page 12: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

W. Puech, M. Chaumont, and O. Strauss, “A Reversible Data Hiding Method

for Encrypted Images,” Security, Forensics, Steganography, and

Watermarking of Multimedia Contents X, Proc. SPIE, 6819, 2008.

Since several years, the protection of multimedia data is becoming very

important. The protection of this multimedia data can be done with encryption

or data hiding algorithms. To decrease the transmission time, the data

compression is necessary. Since few years, a new problem is trying to combine

in a single step, compression, encryption and data hiding. So far, few solutions

have been proposed to combine image encryption and compression for example.

Nowadays, a new challenge consists to embed data in encrypted images. Since

the entropy of encrypted image is maximal, the embedding step, considered like

noise, is not possible by using standard data hiding algorithms. A new idea is to

apply reversible data hiding algorithms on encrypted images by wishing to

remove the embedded data before the image decryption. Recent reversible data

hiding methods have been proposed with high capacity, but these methods are

not applicable on encrypted images. In this paper we propose an analysis of the

local standard deviation of the marked encrypted images in order to remove the

embedded data during the decryption step. We have applied our method on

various images, and we show and analyze the obtained results.

Previous work proposed to embed data in an encrypted image by using an

irreversible approach of data hiding. The challenge was to find an encryption

method robust to noise. Since the entropy of encrypted image is maximal, the

embedding step, considered like noise, is not possible by using standard data

hiding algorithms. A new idea is to apply reversible data hiding algorithms on

encrypted images by wishing to remove the embedded data before the image

decryption. Recent reversible data hiding methods have been proposed with

12

Page 13: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

high capacity but these methods are not applicable on encrypted images. In this

paper we propose an analysis of the local standard deviation of the marked

encrypted images in order to remove the embedded data during the decryption

step.

X. Zhang, “Separable Reversible Data Hiding in Encrypted Image,” IEEE

Trans. Information Forensics & Security, 7(2), pp. 526−532, 2012.

This work proposes a Secure and authenticated discrete reversible data

hiding in cipher images deals with security and authentication. In the first phase,

a content owner encrypts the original uncompressed image using an encryption

key. Then, a data hider may compress the least significant bits of the encrypted

image using a data hiding key to create a sparse space to accommodate some

additional data. With an encrypted image containing additional data, if a

receiver has the data hiding key, receiver can extract the additional data though

receiver does not know the image content. If the receiver has the encryption

key, can decrypt the received data to obtain an image similar to the original one.

If the receiver has both the data hiding key and the encryption key, can extract

the additional data and recover the original content.

Data security basically means protection of data from unauthorized users

or hackers and providing high security to prevent data medication. This area of

data security has gained more attention over the recent period of time due to the

massive increase in data transfer rate over the internet. In order to improve the

security features in data transfers over the internet, many techniques have been

developed like: Cryptography, Steganography. While Cryptography is a method

to conceal information by encrypting it to cipher texts and transmitting it to the

intended receiver using an unknown key, Steganography provides further

13

Page 14: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

security by hiding the cipher text into a seemingly invisible image or other

formats.

Z. Qian, X. Zhang, and S. Wang, “Reversible Data Hiding in Encrypted JPEG

Bitstream,” IEEE Trans. on Multimedia, 16(5), pp. 1486−1491, 2014.

Reversible data hiding (RDH) is just an approach where secret Data is

stuck right into a cover picture in an opposite way. Generally RDH spatial-

domain photographs are encrypted. The planned system encrypts the JPEG bit

stream in to an adequately arranged structure. Then it embeds personal

information in to the secured bit stream by gently adjusting the JPEG stream.

Helpful bits ideal for knowledge hiding are then identified. It will help to

effectively rule the protected bit stream holding key data. To have an ideal

knowledge removal and picture recovery, error modification codes are utilized

in coding the key message. Encryption and embedding keys are utilized in

encryption and embedding processes. The secrete message bits are encoded

with R and embedded into the encrypted bit stream by altering the appended

bits. Utilizing the encryption and embedding keys, the recipient may remove the

embedded information and completely recover the initial image. Once the

embedding key is missing, the initial picture could be approximately recovered

with adequate quality without removing the hidden data.

Generally speaking RDH is employed to embed data in to images which

can be open for data hider. There might n situations by which picture owner

isn't prepared to talk about picture material to data hider. So it's required to add

additional communications such as authentication data etc. to protected image.

Buyer-Seller programs can also be implemented using Treating Knowledge

Hiding technique. In cases like this a supplier encrypts data and embeds an

14

Page 15: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

protected fingerprint written by buyer. Vendor may not able to get fingerprints

of buyer and till buyer does not produce payment he'll not able to access the

first edition of data. Different process by which, protected images are divided

into blocks and by tossing three LSBs of half the pixels in the stop, one touch in

each stop is stuck . At receiver's end, by considering the fluctuation of the pixel

values in most decrypted stop, the secret portions get restored and also the first

picture is recovered.

Drawbacks:

Symmetric cryptosystems have a problem of key transportation. The

secret key is to be transmitted to the receiving system before the actual

message is to be transmitted. Every means of electronic

communication is insecure as it is impossible to guarantee that no one

will be able to tap communication channels. So the only secure way of

exchanging keys would be exchanging them personally.

Cannot provide digital signatures that cannot be repudiated

A disadvantage of using public-key cryptography for encryption is

speed: there are popular secret-key encryption methods which are

significantly faster than any currently available public-key encryption

method.

15

Page 16: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

EXISTING SYSTEM

Combination of data hiding and encryption has been studied in recent

years. In some works, data hiding and encryption are jointed with a simple

manner. For example, a part of cover data is used for carrying additional data

and the rest data are encrypted for privacy protection. Alternatively, the

additional data are embedded into a data space that is invariable to encryption

operations. In another type of the works, data embedding is performed in

encrypted domain, and an authorized receiver can recover the original plaintext

cover image and extract the embedded data. This technique is termed as

reversible data hiding in encrypted images (RDHEI). In some scenarios, for

securely sharing secret images, a content owner may encrypt the images before

transmission, and an inferior assistant or a channel administrator hopes to

append some additional messages, such as the origin information, image

notations or authentication data, within the encrypted images though he does not

know the image content. For example, when medical images have been

encrypted for protecting the patient privacy, a database administrator may aim

to embed the personal information into the corresponding encrypted images.

Here, it may be hopeful that the original content can be recovered without any

error after decryption and retrieve of additional message at receiver side. In, the

original image is encrypted by an exclusive-or operation with pseudo-random

bits, and then the additional data are embedded by flipping a part of least

significant bits (LSB) of encrypted image. By exploiting the spatial correlation

in natural images, the embedded data and the original content can be retrieved at

receiver side. The performance of RDHEI can be further improved by

introducing an implementation order or a flipping ratio. In, each additional bit is

embedded into a block of data encrypted by the Advanced Encryption Standard

(AES). When a receiver decrypts the encrypted image containing additional

data, however, the quality of decrypted image is significantly degraded due to 16

Page 17: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

the disturbance of additional data. In, the data-hider compresses the LSB of

encrypted image to generate a sparse space for carrying the additional data.

Since only the LSB is changed in the data embedding phase, the quality of

directly decrypted image is satisfactory. Reversible data hiding schemes for

encrypted JPEG images is also presented. In , a sparse data space for

accommodating additional data is directly created by compress the encrypted

data. If the creation of sparse data space or the compression is implemented

before encryption, a better performance can be achieved.

Disadvantages:

The disadvantages are –

(i) noisy image forces the algorithm to embed information in higher bit-

plane when the distortions are higher and easily visible

(ii) single bit-plane in a small image does not offer enough space to hide

hash after compression, so two or more bit-planes are required and the

artifacts must be visible

(iii) Capacity is not high enough to embed large payload

17

Page 18: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

SYSTEM ENVIRONMENT

3.1 HARDWARE REQUIREMENTS:

Processor - Pentium –IV

Speed - 1.1 Ghz

RAM - 256 MB(min)

Hard Disk - 20 GB

Key Board - Standard Windows Keyboard

Mouse - Two or Three Button Mouse

Monitor - SVGA

SOFTWARE REQUIREMENTS:-

Operating System : Windows XP/7

Front End : Matlab

3.3 Software Description

MATLAB is a high-performance language for technical computing. It

integrates computation, visualization, and programming in an easy-to-use

environment where problems and solutions are expressed in familiar

mathematical notation. Typical uses include

Math and computation

Algorithm development

Data acquisition

Modeling, simulation, and prototyping

Data analysis, exploration, and visualization

Scientific and engineering graphics

18

Page 19: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Application development, including graphical user interface

building

MATLAB is an interactive system whose basic data element is an array

that does not require dimensioning. This allows you to solve many technical

computing problems, especially those with matrix and vector formulations, in a

fraction of the time it would take to write a program in a scalar non interactive

language such as C or Fortran.

The name MATLAB stands for matrix laboratory. MATLAB was

originally written to provide easy access to matrix software developed by the

LINPACK and EISPACK projects. Today, MATLAB engines incorporate the

LAPACK and BLAS libraries, embedding the state of the art in software for

matrix computation.

MATLAB has evolved over a period of years with input from many

users. In university environments, it is the standard instructional tool for

introductory and advanced courses in mathematics, engineering, and science. In

industry, MATLAB is the tool of choice for high-productivity research,

development, and analysis.

Toolboxes

MATLAB features a family of add-on application-specific solutions

called toolboxes. Very important to most users of MATLAB, toolboxes allow

you to learn and apply specialized technology. Toolboxes are comprehensive

collections of MATLAB functions (M-files) that extend the MATLAB

environment to solve particular classes of problems. Areas in which toolboxes

are available include signal processing, control systems, neural networks, fuzzy

logic, wavelets, simulation, and many others.

19

Page 20: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

The MATLAB System

The MATLAB system consists of five main parts:

Development Environment.

This is the set of tools and facilities that help you use MATLAB functions and

files. Many of these tools are graphical user interfaces. It includes the

MATLAB desktop and Command Window, a command history, an editor and

debugger, and browsers for viewing help, the workspace, files, and the search

path.

The MATLAB Mathematical Function Library.

This is a vast collection of computational algorithms ranging from elementary

functions, like sum, sine, cosine, and complex arithmetic, to more sophisticated

functions like matrix inverse, matrix eigen values, Bessel functions, and fast

Fourier transforms.

The MATLAB Language.

This is a high-level matrix/array language with control flow statements,

functions, data structures, input/output, and object-oriented programming

features. It allows both “programming in the small” to rapidly create quick and

dirty throw-away programs, and “programming in the large” to create large and

complex application programs.

Graphics. MATLAB has extensive facilities for displaying vectors and

matrices as graphs, as well as annotating and printing these graphs. It includes

high-level functions for two-dimensional and three-dimensional data

visualization, image processing, animation, and presentation graphics. It also

includes low-level functions that allow you to fully customize the appearance of

graphics as well as to build complete graphical user interfaces on your

MATLAB applications.

20

Page 21: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

The MATLAB Application Program Interface (API).

This is a library that allows you to write C and Fortran programs that interact

with MATLAB. It includes facilities for calling routines from MATLAB

(dynamic linking), calling MATLAB as a computational engine, and for reading

and writing MAT-files.

A MATLAB GUI is a figure window to which you add user-operated

controls. You can select, size, and position these components as you like. Using

callbacks you can make the components do what you want when the user clicks

or manipulates them with keystrokes.

It can build MATLAB GUIs in two ways:

• Use GUIDE (GUI Development Environment), an interactive GUI

construction kit.

• Create code files that generate GUIs as functions or scripts

(programmatic GUI construction).

The first approach starts with a figure that you populate with components

from within a graphic layout editor. GUIDE creates an associated code file

containing callbacks for the GUI and its components. GUIDE saves both the

figure (as a FIG-file) and the code file. Opening either one also opens the other

to run the GUI.

In the second, programmatic, GUI-building approach, you create a code file

that defines all component properties and behaviors; when a user executes the

file, it creates a figure, populates it with components, and handles user

interactions. The figure is not normally saved between sessions because the

code in the file creates a new one each time it runs.

As a result, the code files of the two approaches look different.

Programmatic GUI files are generally longer, because they explicitly define

every property of the figure and its controls, as well as the callbacks. GUIDE

GUIs define most of the properties within the figure itself. They store the

21

Page 22: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

definitions in its FIG-file rather than in its code file. The code file contains

callbacks and other functions that initialize the GUI when it opens.

MATLAB software also provides functions that simplify the creation of

standard dialog boxes, for example to issue warnings or to open and save files.

The GUI-building technique you choose depends on your experience, your

preferences, and the kind of application you need the GUI to operate.

GUIDE, the MATLAB Graphical User Interface Development

Environment, provides a set of tools for creating graphical user interfaces

(GUIs). These tools greatly simplify the process of laying out and programming

GUIs.

Opening GUIDE

There are several ways to open GUIDE fromthe MATLAB Command line.

Command Result

guide Opens GUIDE with a choice of GUI templates

guide FIG-file name Opens FIG-file name in GUIDE

Laying Out a GUIDE GUI

The GUIDE Layout Editor enables you to populate a GUI by clicking and

dragging GUI components into the layout area. There you can resize, group and

align buttons, text fields, sliders, axes, and other components you add.

Other tools accessible from the Layout Editor enable you to:

Create menus and context menus

• Create toolbars

• Modify the appearance of components

• Set tab order

• View a hierarchical list of the component objects

• Set GUI options

22

Page 23: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Create the Simple Programmatic GUI Code File

Start by creating a file for the example GUI. Because the file will contain

functions, it is a function file as opposed to a script file, which contains a

sequence of MATLAB commands but does not define functions.

1. At the MATLAB prompt, type edit. MATLAB opens a blank document

in the Editor.

2. Type or copy the following statement into the editor. This function

statement is the first line in the file.

function simple_gui2

3. Type or paste these comments into the file following the function

statement. They display at the command line in response to the help

command. Follow them by a blank line, which MATLAB requires to

terminate the help text.

4. Add an end statement at the end of the file. This end statement matches

the function statement. Your file now looks like this.

5. Save the file in your current folder or at a location that is on your

MATLAB path.

A callback is a function that you write and associate with a specific GUI

component or with the GUI figure. It controls GUI or component behavior by

performing some action in response to an event for its component. This

programming approach is often called event-driven programming. When an

event occurs for a component, MATLAB software invokes the component’s

callback that the event triggers. As an example, suppose a GUI has a button that

triggers the plotting of some data. When the GUI user clicks the button, the

software calls the callback you associated with clicking that button. The

callback, which you have programmed, then gets the data and plots it.

A component can be any control device such as a push button, list box, or

slider. For purposes of programming, it can also be a menu or a container such

23

Page 24: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

as a panel or button group. See “Available Components” on page 6-20 for a list

and descriptions of components.

Kinds of Callbacks

The GUI figure and each type of component can trigger specific kinds of

callbacks. The callbacks that are available for each component are properties of

that component. For example, a push button has five callback properties:

ButtonDownFcn, Callback, CreateFcn, DeleteFcn, and KeyPressFcn. A panel

has four callback properties: ButtonDownFcn, CreateFcn, DeleteFcn, and

ResizeFcn. You can—but do not have to—create a callback function for each of

these properties, including callbacks for the GUI figure itself.

MATLAB supports standard data and image formats, including JPEG,

Microsoft Excel, ASCII, and binary files. Low-level I/O functions enable us to

develop custom routines for working with any data format.

MATLAB is case-sensitive in the names of commands, functions, and

variables. It supports a wide range of image processing operations, including

Spatial image transformations

Neighborhood and block operations

Linear filtering and filter design

Transforms

Image analysis and enhancement

Image Formats Supported by Matlab

The main image format supported by MATLAB is JPEG. Most images

are JPEG-images which is the name for one of the most widely used

compression standards for images. If an image is stored it can be seen from the

suffix what format it is stored in. There are mainly four formats of images are

there. They are

24

Page 25: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

(a) Intensity Image (gray scale image)

This is the equivalent to a "gray scale image" and this is the image mostly

used to work with. It represents an image as a matrix where every element has a

value corresponding to how bright/dark the pixel at the corresponding position

should be colored. There are two ways to represent the number that represents

the brightness of the pixel: The double class (or data type). This assigns a

floating number ("a number with decimals") between 0 and 1 to each pixel. The

value 0 corresponds to black and the value 1 corresponds to white. The other

class is called uint8 which assigns an integer between 0 and 255 to represent the

brightness of a pixel. The value 0 corresponds to black and 255 to white. The

class uint8 only requires roughly 1/8 of the storage compared to the class

double. On the other hand, many mathematical functions can only be applied to

the double class.

(b) Binary Image

This image format also stores an image as a matrix but can only color a

pixel black or white (and nothing in between). It assigns a 0 for black and a 1

for white.

(c) Indexed Image

This is a practical way of representing color images. An indexed image

stores an image as two matrices. The first matrix has the same size as the image

and one number for each pixel. The second matrix is called the color map and

its size may be different from the image. The numbers in the first matrix is an

instruction of what number to use in the color map matrix.

(d) RGB Image

This is another format for color images. It represents an image with three

matrices of sizes matching the image format. Each matrix corresponds to one of

the colors red, green or blue and gives an instruction of how much of each of

these colors a certain pixel should use.

25

Page 26: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

The Advantages of MATLAB

MATLAB is a general purpose programming language. When it is used

to process images one generally writes function files, or script files to perform

the operations. These files form a formal record of the processing used and

ensures that the final results can be tested and replicated by others should the

need arise.

MATLAB provides many functions for image processing and other tasks.

Most of these functions are written in the MATLAB language and are publicly

readable as plain text files. Thus the implementation details of these functions

are accessible and open to scrutiny. The defense can examine the processing

used in complete detail, and any challenges raised can be responded to in an

informed way by the prosecution. This makes MATLAB very different from

applications, such as Photoshop.

It should be noted that some MATLAB functions cannot be viewed.

These are generally lower level functions that are computationally expensive

and are hence provided as 'built-in' functions running as native code. These

functions are heavily used and tested and can be relied on with considerable

confidence. Another advantage of MATLAB is that it allows one to ensure

maximal numerical precision in the final result.

In general, image files store data to 8 bit precision. This corresponds to a

range of integer values from 0-255. A pixel in a color image may be represented

by three 8 bit numbers, each representing the red, green and blue components as

an integer value between 0 and 255. Typically this is ample precision for

representing normal images. However as soon as one reads this image data into

memory and starts to process it is very easy to generate values that lie outside

the range 0-255. For example, to double the contrast of an image one multiplies

the intensity values by 2. An image value of 200 will become 400 and

numerical overflow will result. How this is dealt with will vary between image

26

Page 27: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

processing programs. Some may truncate the results to an integer in the range 0-

255; others may perform the mathematical operations in floating point

arithmetic and then rescale the final results to an integer in the range 0-255.

It is here that numerical precision, and hence image fidelity, may be lost.

Some image processing algorithms result in some pixel values with very large

magnitudes (positive or negative). Typically these large values occur at points

in the image where intensity discontinuities occur, the edges of the image are

common sources of this problem. When this image with widely varying values

is rescaled to integers in the range 0-255 much of this range may be used just to

represent the few pixels with the large values. The bulk of the image data may

then have to be represented within a small range of integer values, say from 0-

50. Clearly this represents a considerable loss of image information. If another

process is then applied to this image the problems can then accumulate. Trying

to establish the extent of this problem, if any, is hard if one is using proprietary

software.

Being a general programming language it is possible to have complete

control of the precision with which one represents data in MATLAB. An image

can be read into memory and the data cast into double precision floating point

values. All image processing steps can then be performed in double precision

floating point arithmetic, and at no intermediate stage does one need to rescale

the results to integers in the range 0-255. Only at the final point when the image

is to be displayed and/or written to file does it need to be rescaled. Here one can

use histogram truncation to eliminate extreme pixel values so that the bulk of

the image data is properly represented.

MATLAB is a scientific programming language and provides strong

mathematical and numerical support for the implementation of advanced

algorithms. It is for this reason that MATLAB is widely used by the image

processing and computer vision community. New algorithms are very likely to

27

Page 28: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

be implemented first in MATLAB, indeed they may only be available in

MATLAB.

MATLAB may not be as user friendly as an application like Photoshop,

however, being a general purpose programming language it provides many

important advantages for forensic image processing. It ensures the image

processing steps used are completely documented, and hence can be replicated.

In general, the source code for all image processing functions are

accessible for scrutiny and test. It allows one to ensure numerical precision is

maintained all the way through the enhancement process. Image processing

algorithms available under MATLAB are likely to be more advanced than those

available from other image processing applications.

28

Page 29: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Proposed System

A lossless data hiding scheme for public-key-encrypted images is

proposed. There are three parties in the scheme: an image provider, a data-hider,

and a receiver. With a cryptosystem possessing probabilistic property, the image

provider encrypts each pixel of the original plaintext image using the public key

of the receiver, and a data-hider who does not know the original image can

modify the ciphertext pixel-values to embed some additional data into the

encrypted image by multi-layer wet paper coding under a condition that the

decrypted values of new and original cipher-text pixel values must be same.

When having the encrypted image containing the additional data, a receiver

knowing the data hiding key may extract the embedded data, while a receiver

with the private key of the cryptosystem may perform decryption to retrieve the

original plaintext image. In other words, the embedded data can be extracted in

the encrypted domain, and cannot be extracted after decryption since the

decrypted image would be same as the original plaintext image due to the

probabilistic property. That also means the data embedding does not affect the

decryption of the plaintext image. The sketch of lossless data hiding scheme is

shown in Figure 1.

29

Page 30: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Image encryption

In this phase, the image provider encrypts a plaintext image using the public key

of probabilistic cryptosystem pk. For each pixel value m(i, j) where (i, j)

indicates the pixel position, the image provider calculates its ciphertext value,

where E is the encryption operation and r(i, j) is a random value. Then, the

image provider collects the ciphertext values of all pixels to form an encrypted

image. Actually, the proposed scheme is capitable with various probabilistic

public-key cryptosystems, such as Paillier and Damgard-Jurik cryptosystems.

With Paillier cryptosystem, for two large primes p and q, calculate n = p⋅q, λ =

lcm (p−1, q−1), where lcm means the least common multiple. Here, it should

meet that gcd (n, (p−1) (⋅ q−1)) = 1, where gcd means the greatest common

divisor. The public key is composed of n and a randomly selected integer g in ,

while the private key is composed of λ and 2*nZ

Where

As a generalization of Paillier cryptosystem, Damgard-Jurik cryptosystem can

be also used to encrypt the plaintext image. Here, the public key is composed of

n and an element g in such that g = (1+n)j⋅x mod ns+1 for a known j relatively

prime to n and x belongs to a group isomorphic to Z*n, and we may choose d as

the private key when meeting d mod n ∈ Z*n and d = 0 mod λ. Then, the

encryption in (1) can be rewritten as1*+snZ

30

Page 31: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

where r(i, j) is a random integer in . By applying a recursive version of Paillier

decryption, the plaintext value can be obtained from the ciphertext value using

the private key. Note that, because of the probabilistic property of the two

cryptosystems, the same gray values at different positions may correspond to

different ciphertext values.

Data embedding

When having the encrypted image, the data-hider may embed some additional

data into it in a lossless manner. The pixels in the encrypted image are

reorganized as a sequence according to the data hiding key. For each encrypted

pixel, the data-hider selects a random integer r'(i, j) in Z*n and calculates

if Paillier cryptosystem is used for image encryption, while the data-hider

selects a random integer r'(i, j) in and calculates

Considering the first LSB, if c(i, j) are replaced with c'(i, j), the first LSB in S1

would be flipped and the rest first LSB would be unchanged. So, the first LSB

of the encrypted pixels can be regarded as a WPC, which includes changeable

(dry) elements and unchangeable (wet) elements. In other words, the first LSB

in S1 are dry elements and the rest first LSB are wet positions. By using the wet

paper coding, one can represent on average Nd bits by only flipping a part of dry

elements where Nd is the number of dry elements. In this scenario, the data-hider

may flip the dry elements by replacing c(i, j) with c'(i, j). Denoting the number

of pixels in the image as N, the data-hider may embed on average N/2 bits in the

first LSB-layer using wet paper coding.

Data extraction and image decryption

After receiving an encrypted image containing the additional data, if the

receiver knows the data-hiding key, he may calculate the k-th LSB of encrypted

pixels, and then extract the embedded data from the K LSB-layers using wet 31

Page 32: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

paper coding. On the other hand, if the receiver knows the private key of the

used cryptosystem, he may perform decryption to obtain the original plaintext

image. When Paillier cryptosystem is used,

Similarly, when Damgard-Jurik cryptosystem is used,

The decryption on c'(i, j) will also result in the plaintext value. In other words,

the replacement of ciphertext pixel values for data embedding does not affect

the decryption result.

Reversible Data Hiding Scheme

This section proposes a reversible data hiding scheme for public-key-encrypted

images. In the reversible scheme, a preprocessing is employed to shrink the

image histogram, and then each pixel is encrypted with additive homomorphic

cryptosystem by the image provider. When having the encrypted image, the

data-hider modifies the ciphertext pixel values to embed a bit-sequence

generated from the additional data and error-correction codes. Due to the

homomorphic property, the modification in encrypted domain will result in

slight increase/decrease on plaintext pixel values, implying that a decryption

can be implemented to obtain an image similar to the original plaintext image

on receiver side. Because of the histogram shrink before encryption, the data

embedding operation does not cause any overflow/underflow in the directly

decrypted image. Then, the original plaintext image can be recovered and the

embedded additional data can be extracted from the directly decrypted image.

Note that the data-extraction and content-recovery of the reversible scheme are

performed in plaintext domain, while the data extraction of the previous lossless

scheme is performed in encrypted domain and the content recovery is needless.

The sketch of reversible data hiding scheme is given in Figure 2.

32

Page 33: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Histogram shrink and image encryption

In the reversible scheme, a small integer δ shared by the image provider, the

data-hider and the receiver will be used, and its value will be discussed later.

Denote the number of pixels in the original plaintext image with gray value v as

hv, implying

where N is the number of all pixels in the image. The image provider collects

the pixels with gray values in [0, δ+1], and represent their values as a binary

stream BS1. When an efficient lossless source coding is used, the length of BS1

where H( ) is the entropy function. The image provider also collects the pixels⋅

with gray values in [255−δ, 255], and represent their values as a binary stream

BS2 with a length l2.

B. Data embedding

With the encrypted image, the data-hider divides the ciphertext pixels into two

set: Set A including c(i, j) with odd value of (i+j), and Set B including c(i, j) 33

Page 34: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

with even value of (i+j). Without loss of generality, we suppose the pixel

number in Set A is N/2. Then, the data-hider employs error-correction codes

expand the additional data as a bit-sequence with length N/2, and maps the bits

in the coded bit-sequence to the ciphertext pixels in Set A in a one-to-one

manner, which is determined by the data-hiding key. When Paillier

cryptosystem is used, if the bit is 0, the corresponding ciphertext pixel is

modified as

This way, an encrypted image containing additional data is produced. Note that

the additional data are embedded into Set A. Although the pixels in Set B may

provide side information of the pixel-values in Set A, which will be used for

data extraction, the pixel-values in Set A are difficult to be precisely obtained

on receiver side, leading to possible errors in directly extracted data. So, the

error-correction coding mechanism is employed here to ensure successful data

extraction and perfect image recovery.

Image decryption, data extraction and content recovery

After receiving an encrypted image containing additional data, the receiver

firstly performs decryption using his private key. We denote the decrypted

pixels as m'(i, j). Due to the homomorphic property, the decrypted pixel values

in Set A meet

After retrieving the original coded bit-sequence and the embedded additional

data, the original plaintext image may be further recovered. For the pixels in Set

A, mT(i, j) are retrieved according to the coded bit-sequence,

34

Page 35: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Similarly, the original values of pixels with mS(i, j) = 255−δ are recovered

within [255−δ, 255] according to BS2. This way, the original plaintext image is

recovered.

Combined Data Hiding Scheme

A lossless and a reversible data hiding schemes for public-key-encrypted

images are proposed. In both of the two schemes, the data embedding

operations are performed in encrypted domain. On the other hand, the data

extraction procedures of the two schemes are very different. With the lossless

scheme, data embedding does not affect the plaintext content and data

extraction is also performed in encrypted domain. With the reversible scheme,

there is slight distortion in directly decrypted image caused by data embedding,

and data extraction and image recovery must be performed in plaintext domain.

That implies, on receiver side, the additional data embedded by the lossless

scheme cannot be extracted after decryption, while the additional data

embedded by the reversible scheme cannot extracted before decryption. In this

section, we combine the lossless and reversible schemes to construct a new

scheme, in which data extraction in either of the two domains is feasible. That

means the additional data for various purposes may be embedded into an

encrypted image, and a part of the additional data can be extracted before

decryption and another part can be extracted after decryption. the method is

used to embed the second part of additional data. On receiver side, the receiver

firstly extracts the second part of additional data from the LSB-planes of

encrypted domain. Then, after decryption with his private key, he extracts the

first part of additional data and recovers the original plaintext image from the

directly decrypted image. Since the reversibly embedded data should be

extracted in the plaintext domain and the lossless embedding does not affect the

35

Page 36: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

decrypted result, the lossless embedding should implemented after the

reversible embedding in the combined scheme.

The Real time applications:-

It is popularly used in medical and military applications.

In the field of computing

In bank transactions

ARCHITECTURE

36

Page 37: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

A system architecture or systems architecture is the conceptual model that

defines the structure, behavior, and more views of a system. An architecture

description is a formal description and representation of a system, organized in

a way that supports reasoning about the structures and behaviors of the system.

A system architecture can comprise system components, the externally visible

properties of those components, the relationships (e.g. the behavior) between

them. It can provide a plan from which products can be procured, and systems

developed, that will work together to implement the overall system. 

Data Flow Diagram37

Page 38: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

A Data Flow Diagram (DFD) is a graphical technique that depicts

information flow and the transformations that are applied as data move from

input to output. Data Flow Diagram (DFD) are commonly used to get a pictorial

representation of the various processes occurring within the system, which

shows the minimum content of the data stores. Each data stores should contain

all the data elements that flow in and out. Process modeling involves figuring

out how data will flow within the system and what steps to perform on the data.

This is how the term data processing originated. Process models are drawing in

the form of a set of DFD and these are later used to guide the creation of

processing logic, when the system is physically created. The DFD are central to

the logical system specification. The following are some advantages:

Provide an overview of DFD and the transformation of data.

Act as a good communication tool for users. Several methods have

been devised to control processing activities. One of them is the batch

processing. In addition to batch controls, several other programmed

checks can use for testing the data.

Complete check ensures that all the fields in a record are present and

read in the proper sequence.

Consistency checks refer to the relevance of one type of data or

another.

Reasonable checks evaluate the transaction against standard to

determine whether it meets the test.

Sequence check verifies that data records are in sequence prior to

processing.

38

Input Image

Page 39: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

IMPLEMENTATION39

Histrogram

Shrink

Data extraction in encrypted domain

Data extraction & image recovery plaintext

domain

Decryption

Revisable Data Embedding

Lossless Data Embedding

Image

Encryption

Additional Data 2 Additional Data 1

Original image

Additional data

Additional data

Page 40: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Implementation is the stage of the project when the theoretical design is turned out

into a working system. Thus it can be considered to be the most critical stage in achieving a

successful new system and in giving the user, confidence that the new system will work and

be effective.

The implementation stage involves careful planning, investigation of the existing

system and it’s constraints on implementation, designing of methods to achieve changeover

and evaluation of changeover methods.

The project implemented using MATLAB language.

MODULES

1 .Image Encryption

2. Data Extraction

3. Image Recovery

1. Image Encryption:

The reversible data hiding in encrypted image is investigated in. Most of

the work on reversible data hiding focuses on the data embedding/extracting on

the plain spatial domain. But, in some applications, an inferior assistant or a

channel administrator hopes to append some additional message, such as the

origin information, image notation or authentication data, within the encrypted

image though he does not know the original image content. And it is also

hopeful that the original content should be recovered without any error after

image decryption and message extraction at receiver side. A content owner

encrypts the original image using an encryption key, and a data-hider can

40

Page 41: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

embed additional data into the encrypted image using a data-hiding key though

he does not know the original content.

2. Data Extraction:

We will consider the three cases that a receiver has only the data-hiding

key, only the encryption key, and both the data-hiding and encryption keys,

respectively. With an encrypted image containing embedded data, if the receiver

has only the data-hiding key, he may first obtain the values of the parameters

from the LSB of the selected encrypted pixels. Then, the receiver permutes and

divides the other pixels into groups and extracts the embedded bits from the

LSB planes of each group. When having the total extracted bits, the receiver can

divide them into original LSB of selected encrypted pixels and additional bits.

Note that because of the pseudo-random pixel selection and permutation, any

attacker without the data-hiding key cannot obtain the parameter values and the

pixel-groups, therefore cannot extract the embedded data. Furthermore,

although the receiver having the data-hiding key can successfully extract the

embedded data, he cannot get any information about the original image content.

3. Image Recovery:

In this phase, we will consider the three cases that a receiver has only the data-

hiding key, only the encryption key, and both the data-hiding and encryption

keys, respectively. Note that because of the pseudo-random pixel selection and

permutation, any attacker without the data-hiding key cannot obtain the

parameter values and the pixel-groups, therefore cannot extract the embedded

data. Furthermore, although the receiver having the data-hiding key can

successfully extract the embedded data, he cannot get any information about the

original image content.

41

Page 42: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Experimental Results

SCREEN SHOTS

Step1: For hiding data within a image the first step is to click the input image

select button to get a input

Step 2: Select the input image from the desired location

42

Page 43: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

The selected input

Step 3: To hide a data click data hide button and select the file from the desired path.

43

Page 44: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Selecting the file from the desired location

Step 4: The encrypted image is taken as input

44

Page 45: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Step 5: with the encrypted image some messages are embedded by clicking embedded button

The retrived orginal image

45

Page 46: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Step 6: The encrypted image is decrypted by clicking decrypt key and then the data is extracted.

The extracted data

46

Page 47: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

PSNR Calculations

The term peak signal-to-noise ratio (PSNR) is an expression for the ratio

between the maximum possible value (power) of a signal and the power of

distorting noise that affects the quality of its representation.  Because many

signals have a very wide dynamic range, (ratio between the largest and smallest

possible values of a changeable quantity) the PSNR is usually expressed in

terms of the logarithmic decibel scale. The PSNR comparison of the three

videos.

47

Page 48: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Analysis

Four gray images sized 512×512, Lena, Man, Plane and Crowd, shown in

Figure 4, and 50, which contain landscape and people, were used as the original

plaintext covers in the experiment. With the lossless scheme, all pixels in the

cover images were firstly encrypted using Paillier cryptosystem, and then the

additional data were embedded into the LSB-planes of ciphertext pixel-values

using multi-layer wet paper coding. Table 1. Average payload of lossless scheme with respect to different K

K 1 2 3 4 5

Average embedding rate (bits per pixel) with Paillier cryptosystem

0.499 0.749 0.875 0.937 0.968

Table 1 lists the average value of embedding rates when K LSB-planes

were used for carrying the additional data in the 54 encrypted images. In fact,

the average embedding rate is very close to (1−1/2K). On receiver side, the

embedded data can be extracted from the encrypted domain. Also, the original

plaintext images can be retrieved by direct decryption. In other word, when the

decryption was performed on the encrypted images containing additional data,

the original plaintext images were obtained. With the reversible scheme, all

pixels were encrypted after histogram shrink. Then, a half of ciphertext pixels

were modified to carry the additional data, and after decryption, we

implemented the data extraction and image recovery in the plaintext domain.

Here, the low-density parity-check (LDPC) coding was used to expand the

additional data as a bit-sequence in data embedding phase, and to retrieve the

coded bit-sequence and the embedded additional data on receiver side.

Although the error-correction mechanism was employed, an excessive payload

may cause the failure of data extraction and image recovery. With a larger value

of δ, a higher embedding capacity could be ensured, while a higher distortion 48

Page 49: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

would be introduced into the directly decrypted image. For instance, when using

Lena as the cover and δ = 4, a total of 4.6×104 bits were embedded and the

value of PSNR in directly decrypted image was 40.3 dB. When using δ = 7, a

total of 7.7×104 bits were embedded and the value of PSNR in directly

decrypted image was 36.3 dB. In both of the two cases, the embedded additional

data and the original plaintext image were extracted and recovered without any

error.

.

Embedding rate-distortion performance of reversible scheme of different method on different

cover images

49

Page 50: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

The abscissa represents the pure embedding rate, and the ordinate is the

PSNR value in directly decrypted image. The rate-distortion curves on four test

images, Lena, Man, Plane and Crowd, are respectively.

Furthermore, Figure compares the average rate-PSNR performance

between the proposed reversible scheme with public-key cryptosystems and

several previous methods with symmetric cryptosystems under a condition that

the original plaintext image can be recovered without any error using the data-

hiding and encryption keys. In each block of encrypted image with given size is

used to carry one additional bit. So, the embedding rates of the two works are

fixed and low. With various parameters, we obtain the performance curves of

the method in the proposed reversible scheme, which are shown in the figure. It

can be seen that the proposed reversible scheme significantly outperforms the

previous methods when the embedding rate is larger than 0.01 bpp. With the

combined scheme, we implemented the histogram shrink operation with a value

of parameter δ, and encrypted the pixels using Paillier cryptosystem. Then, we

embedded the first part of additional data into the ciphertext pixel values by the

reversible embedding method, and embedded the second part of additional data

into the K LSB-planes of the ciphertext pixel values by the lossless embedding

method. When having the encrypted image containing the additional data, we

firstly extracted the second part of additional data from the LSB-planes of

ciphertext pixel values. After decryption, we further extracted the first part of

additional data and recovered the original plaintext image in the plaintext

domain. Here, the payloads of the two parts of additional data are same as the

payloads of reversible and lossless schemes, respectively, and the quality of

directly decrypted image is same as that of reversible scheme.

Running Time :

50

Page 51: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Runtime or execution time is the time during which a program is

running, in contrast to other program lifecycle phases such as compile time, link

time and load time. A run-time error is detected after or during the execution

(running state) of a program.

CONCLUSION51

Page 52: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

This work proposes a lossless, a reversible, and a combined data hiding

schemes for cipher-text images encrypted by public key cryptography with

probabilistic and homomorphic properties. In the lossless scheme, the ciphertext

pixel values are replaced with new values for embedding the additional data into

the LSB-planes of ciphertext pixels. This way, the embedded data can be

directly extracted from the encrypted domain, and the data embedding operation

does not affect the decryption of original plaintext image. In the reversible

scheme, a preprocessing of histogram shrink is made before encryption, and a

half of ciphertext pixel values are modified for data embedding. On receiver

side, the additional data can be extracted from the plaintext domain, and,

although a slight distortion is introduced in decrypted image, the original

plaintext image can be recovered without any error. Due to the compatibility of

the two schemes, the data embedding operations of the lossless and the

reversible schemes can be simultaneously performed in an encrypted image. So,

the receiver may extract a part of embedded data in the encrypted domain, and

extract another part of embedded data and recover the original plaintext image

in the plaintext domain.

FUTURE ENHANCEMENT

52

Page 53: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

Valuable further work can be pursued. For examples, one drawback of

the proposed scheme is that, for the purpose of adaptive prediction, additional

computation for coefficients of autoregression model and threshold for image

partition is required. How to reduce the computational cost can be further

studied. Moreover, among the many possible histogram modification methods

as hinted in the paper, how to design one according to certain optimality

criterion is also an open problem.

REFERENCES

53

Page 54: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

[1] N. A. Saleh, H. N. Boghdad, S. I. Shaheen, A. M. Darwish, “High Capacity

Lossless Data Embedding Technique for Palette Images Based on Histogram

Analysis,” Digital Signal Processing, 20, pp. 1629−1636, 2010.

[2] J. Tian, “Reversible Data Embedding Using a Difference Expansion,” IEEE

Trans. on Circuits and Systems for Video Technology, 13(8), pp. 890−896,

2003.

[3] Z. Ni, Y.-Q. Shi, N. Ansari, and W. Su, “Reversible Data Hiding,” IEEE

Trans. on Circuits and Systems for Video Technology, 16(3), pp. 354−362,

2006.

[4] M. U. Celik, G. Sharma, A. M. Tekalp, and E. Saber, “Lossless Generalized-

LSB Data Embedding,” IEEE Trans. on Image Processing, 14(2), pp. 253–266,

2005.

[5] X. Hu, W. Zhang, X. Li, and N. Yu, “Minimum Rate Prediction and

Optimized Histograms Modification for Reversible Data Hiding,” IEEE Trans.

on Information Forensics and Security, 10(3), pp. 653-664, 2015.

[6] X. Zhang, “Reversible Data Hiding with Optimal Value Transfer,” IEEE

Trans. on Multimedia, 15(2), 316−325, 2013.

[7] W. Zhang, X. Hu, X. Li, and N. Yu, “Optimal Transition Probability of

Reversible Data Hiding for General Distortion Metrics and Its Applications,”

IEEE Trans. on Image Processing, 24(1), pp. 294-304, 2015.

[8] S. Lian, Z. Liu, Z. Ren, and H. Wang, “Commutative Encryption and

Watermarking in Video Compression,” IEEE Trans. on Circuits and Systems

for Video Technology, 17(6), pp. 774−778, 2007.

[9] M. Cancellaro, F. Battisti, M. Carli, G. Boato, F. G. B. Natale, and A. Neri,

“A Commutative Digital Image Watermarking and Encryption Method in the

Tree Structured Haar Transform Domain,” Signal Processing: Image

Communication, 26(1), pp. 1−12, 2011.

54

Page 55: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

[10] X. Zhang, “Commutative Reversible Data Hiding and Encryption,”

Security and Communication Networks, 6, pp. 1396−1403, 2013.

[11] X. Zhang, “Reversible Data Hiding in Encrypted Image,” IEEE Signal

Processing Letters, 18(4), pp. 255−258, 2011.

[12] W. Hong, T.-S. Chen, and H.-Y. Wu, “An Improved Reversible Data

Hiding in Encrypted Images Using Side Match,” IEEE Signal Processing

Letters, 19(4), pp. 199−202, 2012.

[13] J. Yu, G. Zhu, X. Li, and J. Yang, “An Improved Algorithm for Reversible

Data Hiding in Encrypted Image,” Proceeding of the 11th International

Workshop on Digital-Forensics Watermark (IWDW 2012), Shanghai, China,

Oct. 31-Nov. 02, 2012, Lecture Notes in Computer Science, 7809, pp. 358-367,

2013.

[14] W. Puech, M. Chaumont, and O. Strauss, “A Reversible Data Hiding

Method for Encrypted Images,” Security, Forensics, Steganography, and

Watermarking of Multimedia Contents X, Proc. SPIE, 6819, 2008.

[15] X. Zhang, “Separable Reversible Data Hiding in Encrypted Image,” IEEE

Trans. Information Forensics & Security, 7(2), pp. 526−532, 2012.

[16] Z. Qian, X. Zhang, and S. Wang, “Reversible Data Hiding in Encrypted

JPEG Bitstream,” IEEE Trans. on Multimedia, 16(5), pp. 1486−1491, 2014.

[17] M. S. A. Karim, and K. Wong, “Universal Data Embedding in Encrypted

Domain,” Signal Processing, 94, pp. 174-182, 2014.

[18] K. Ma, W. Zhang, X. Zhao, N. Yu, and F. Li, “Reversible Data Hiding in

Encrypted Images by Reserving Room Before Encryption,” IEEE Trans.

Information Forensics & Security, 8(3), pp. 553-562, 2013.

[19] W. Zhang, K. Ma, and N. Yu, “Reversibility Improved Data Hiding in

Encrypted Images,” Signal Processing, 94, pp. 118-127, 2014.

55

Page 56: read.pudn.comread.pudn.com/downloads730/doc/2918617/Losses Data …  · Web viewImage Processing It generally refers to processing of a two-dimensional picture by a digital computer.

[20] Y.-C. Chen, C.-W. Shiu, and G. Horng, “Encrypted Signal-Based

Reversible Data Hiding with Public Key Cryptosystem,” Journal of Visual

Communication and Image Representation, 25, pp. 1164-1170, 2014.

[21] P. Paillier, “Public-Key Cryptosystems Based on Composite Degree

Residuosity Classes,” Proceeding of the Advances Cryptology,

EUROCRYPT’99, LNCS, 1592, pp. 223-238, 1999.

[22] T. Bianchi, A. Piva, and M. Barni, “On the Implementation of the Discrete

Fourier Transform in the Encrypted Domain,” IEEE Trans. Information

Forensics and Security, 4(1), pp. 86–97, 2009.

[23] T. Bianchi, A. Piva, and M. Barni, “Composite Signal Representation for

Fast and Storage-Efficient Processing of Encrypted Signals,” IEEE Trans.

Information Forensics and Security, 5(1), pp. 180–187, 2010.

[24] P. Zheng, and J. Huang, “Discrete Wavelet Transform and Data Expansion

Reduction in Homomorphic Encrypted Domain,” IEEE Trans. Image

Processing, 22(6), pp. 2455-2468, 2013.

[25] I. Damgård, and M. Jurik, “A Generalisation, a Simplification and Some

Applications of Paillier's Probabilistic Public-Key System,” Public Key

Cryptography, pp. 119-136, 2001.

[26] J. Fridrich, M. Goljan, P. Lisonek, and D. Soukal, “Writing on Wet Paper,”

IEEE Trans. Signal Processing, 53(10), pp. 3923-3935, 2005.

56