30-09-2016, 02:35 PM
1457071789-0511ijnsa05.pdf (Size: 114.59 KB / Downloads: 4)
ABSTRACT
Problem faced by today’s communicators is not only security but also the speed of communication and
size of content.In the present paper, a scheme has been proposed which uses the concept of compression
and data encryption. In first phase the focus has been made on data compression and cryptography. In
the next phase we have emphasized on compression cryptosystem. Finally, proposed technique has been
discussed which used the concept of data compression and encryption. In this first data is compressed to
reduce the size of the data and increase the data transfer rate. Thereafter compress data is encrypted to
provide security. Hence our proposed technique is effective that can reduce data size, increase data
transfer rate and provide the security during communication.
1. INTRODUCTION
The present network scenario demands exchange of information with more security and
reduction in both the space requirement for data storage and the time for data transmission. This
can be accomplished by compression and encryption, such kind of system is called compression
–crypto system. Encryption is indeed a secure coding technique and data compression is also a
coding technique, whose purpose is to reduce both the space requirements for data storage and
the time for data transmission. In proposed system i.e data security using private key encryption
system encoded string is produced by a model from an input string of symbols and based on
arithmetic coding that can be used to achieve the present network scenario for exchange of
information with more security and compression.
2. DATA COMPRESSION
Data compression offers an attractive approach for reducing communication costs by using
available bandwidth effectively. Compression algorithms reduce the redundancy in data
representation to decrease the storage required for that data. Over the last decade there has been
an unprecedented explosion in the amount of digital data transmitted via the Internet,
representing text, images, video, sound, computer programs, etc. [3]
In the more modern model-based paradigm for coding, where, from an input string of symbols
and a model, an encoded string is produced that is a compressed version of the input. The
decoder, which must have access to the same model, regenerates the exact input string from the
encoded string .The model, is a way of calculating, in any given context, the distribution of
probabilities for the next input symbol. It must be possible for the decoder to produce exactly the same probability distribution in the same context. Compression is achieved by transmitting
the more probable symbols in fewer bits than the less probable ones. More complex models can
provide more accurate probabilistic predictions and hence achieve greater compression. The
effectiveness of any model can be measured by the entropy of the message with respect to it,
usually expressed in bits/symbol. [4] Shannon’s fundamental theorem of coding states that,
given messages randomly generated from a model, it is impossible to encode them into less bits
(on average) than the entropy of that model. [5]
A message can be coded with respect to a model using either Huffman or arithmetic coding. It’s
well known that the Huffman’s algorithm generates minimum redundancy codes compared to
other algorithms. [6] But the disadvantage of Huffman is that, all codes of the encoded data are
of different sizes. Therefore it is very difficult for the decoder to know that it has reached the
last bit of a code. Arithmetic coding can be viewed as a generalization of Huffman coding. It
efficiently represents more frequently occurring sequences of pixels values with fewer bits. [7]
Arithmetic coding typically has a better compression ratio than Huffman coding, as it produces
a single symbol rather than several separate codeword and can be use in compression based
encryption system. [9]
2.1 Arithmetic Coding
Today, for data compression there exist many techniques. The most popular one is Arithmetic
Encoding. This encoding techinque has been developed extensively since its introduction
several decades ago and is notable for offering extremely high coding efficiency. Arithmetic
coding, invented by Jorma Rissane and turned into a practical method by Witten, Neal and
Cleary, achieves superior Compression to the better-known Huffman algorithm. [1] In fact,
arithmetic coding is a method to ensure lossless data compression. It is indeed a form of
variable length entropy encoding. In the case of other entropy encoding techniques, the input
message is separated into its component symbols and each symbol is replaced by a code word.
But arithmetic coding encodes the entire message into a single number, a fraction n where
(0.0≤n< 1.0) [2]. The coding algorithm is symbol wise recursive; i.e., it operates upon and
encodes (decodes) one data symbol per iteration or recursion. On each recursion, the algorithm
successively partitions an interval of the number line between 0 and 1, and retains one of the
partitions as the new interval. Thus, the algorithm successively deals with smaller intervals, and
the code string, viewed as a magnitude, lies in each of the nested intervals. The data string is
recovered by using magnitude comparisons on the code string to recreate how the encoder must
have successively partitioned and retained each nested subinterval. [8]
3. CRYPTOGRAPHY
In the 21st century the importance of information and communication systems for society and
the global economy is intensifying with the increasing value and quantity of data that is
transmitted and stored on those systems. At the same time those systems and data are also
increasingly vulnerable to a variety of threats, such as unauthorized access and use,
misappropriation, alteration, and destruction. Cryptography addresses the above issues. It is the
foundation of all information security aspects. The techniques employed to this end have
become increasingly mathematical of nature. Classical cryptosystems is very easy to
understand, easily implemented and very easy to be broken. New forms of cryptography came
after the widespread development of computer communications. In data and
telecommunications, cryptography is necessary when communicating over any entrusted
medium. In the last few decades, however, the trend has been on placing cryptography onto a
sound mathematical framework. This modern focus has initiated the evolution of the field from
an art into a science, which includes just about any network, particularly the internet. This
evolution comes with modern cryptography (MC) really begins with Claude Shannon arguably
the father of mathematical cryptography. He published a related paper, “Communication Theory of Secrecy Systems”, in 1949. These, in addition to his other works on information and
communication theory established a solid theoretical basis for cryptography and for
cryptanalysis. And with that, cryptography more or less disappeared into secret government
communications organizations such as the NSA and equivalents elsewhere. [11]Today’s
cryptographic techniques have become the immediate solution to protect information against
third parties. These techniques required that data and information should be encrypted with
some sort of mathematical algorithm where only the party that shares the information could
possible decrypt to use the information. [12]
Within the context of any application to application communication, there are some specific
security requirements including:-
• Authentication: - The process of providing one’s identity.
• Confidentiality: - Ensuring that no one can read the message except the intended receiver.
• Integrity: - Assuring the receiver that the received message has not been altered in any way
from the original.
• Non-repudiation:- A mechanism to prove that the sender really send this message.
There are two types of cryptographic schemes: symmetric (private key) cryptography, and
asymmetric cryptography, each of which described below [10].
3.1 Symmetric Key Cryptography [12]
In symmetric key cryptography (also known as private-key cryptography), a secret key may be
held by one person or exchanged between the sender and the receiver of a message. If private
key cryptography is used to send secret messages between two parties, both the sender and
receiver must have a copy of the secret key. However, the key may be compromised during
transit. If you know the party you are exchanging messages with, you can give them the key in
advance. However, if you need to send an encrypted message to someone, you have never met;
you will need to figure [15] out a way to exchange keys in a secure way. One method is to send
it via another secure channel.
5. EXISTING SYSTEMS
One of the existing system used compression along with encryption using RSA algorithm. This
system is basically used for mobile communication. This system provides a solution to this SMS
security problem. The approach that is used in this system is to secure the SMS message using
Hybrid Compression Encryption (HCE) system. This system compresses the SMS to reduce its
length, then encrypts it using RSA algorithm [16]. But this system is using RSA. RSA is a
Public Key Encryption method. A disadvantage of using public-key cryptography for
encryption is speed. One more exiting system is presented, which provide us a errorless
integrated secure transmission of medical information data like Image, Audio, Video etc. This
system also used lossless compression technique like Sequitur for efficient utilization of
communication channel. The combination of encryption (McEliece public-key cryptosystem)
with compression provides confidentiality in the transmission. [17]. But this system has a
limitation with length. Its efficiency drops as the length of data increases. Also, the system
requires a very large public key which makes it very difficult to use in many practical situations.
Now a day’s Arithmetic coding is in its full form. It is a statistical method and its compression
ratio is very good. So, we used Arithmetic coding with private key encryption system .Because
private key encryption system is fast and its mathematical implementation is easy.
6. PROPOSED COMPRESSION-CRYPTO SYSTEM
The proposed technique is based on the concept of arithmetic coding in which a word of text is
converted into floating point number that lie in range between 0 and 1. This floating point
number is converted into binary number and after that one time key is used to encrypt this
binary number. Finally after encryption, result is again a binary number; this number is
converted into decimal number again and sends to the receiver.
6.1 Requirements
6.1.1 Table
A table contains symbols along with percentage of probability of occurrence. According to the
requirements of user the table is designed that may contain lower case alphabets, upper case
alphabets and symbols like %,@ etc.
6.1.2 One Time Pad
It’s a one-time key provided by user for securing the content. This is a random key that is as
long as message. In addition the key to be used to encrypt and decrypt a single message, and
then discarded. Each new message requires a new key of same length as a new message.
6.2 Implementation
This technique converts a word of text into floating point number by using arithmetic coding.
The result is compressed data. Obtained floating point number is encrypted using private key
encryption technique i.e. one time pad key. The output is secure and compressed data.
6.3 Explanation
6.3.1 Compression and Encryption
Firstly input symbol is compressed using arithmetic coding after that a private key is used to
encrypt the result of arithmetic coding.
Algorithm
To compress and encrypt the message Algorithm includes following steps:-
Step 1:- using table encodes the input symbol.
a) Initialize lower_ bound=0, upper_ bound=1
b) While there are still symbols to encode
Current _range = upper _bound - lower _bound
Upper_ bound = lower _bound + (current _range * upper _bound of new symbol)
Lower_ bound = lower_ bound + (current _range * upper_ bound of new symbol)
End while
Step 2:- The string may be encoded by any value within the probability range and after that
convert the output decimal number into binary format.
Step 3:- limit the number of bits by using the formula:-
No_ of_ bits=log ┌2/upper_ bound_ last encoded symbol - lower_ bound_ last encoded
symbol┐
Step 4:- No _of _bits is used to reduce the number of bits obtained in step2.
Step 5:- Select any one time pad and Xor it with result of step4.
Step 6:- Rotate 2 bits right.
Step 7:- Convert the result of step 6 into decimal format again.
Output: - output is floating point no that is corresponding to the inputted symbol.
6.3.2 Decompression and Decryption
Getting the floating point it’s time now that we convert it into original text.
Algorithm:-
Step 1:- Convert the received data into binary format.
Step 2:- Rotate 2 bits to left.
CONCLUSION
The proposed technique provides an excellent integration of data compression with the
cryptography to increases the data security and transfer rate during data communication. In this
technique we can reduce the size of data using the arithmetic encoding data compression
technique and after that compressed data can be encrypted to provide the security. The Present
network scenario demands exchange of information with reduction in both space requirement
for data storage and time for data transmission along with security. Our proposed technique
fulfils all such requirements as this technique use the concept of data compression and
encryption.