Post on 06-May-2015
INSCIBRE ANDSQUEEZE
Overview of Cryptography Terminology
• Cryptographic/Cipher System - A method of disguising a message so only authorized users may read it.
• Cryptology - The study of cryptography.• Encryption - The process of converting plaintext into ciphertext.• Decryption - The process of converting ciphertext back to its original
plaintext.• Cryptographic Algorithm - The computational procedure used to
encrypt and decrypt messages. • Cryptanalysis - The process of finding a weakness in, or actual
breaking of, a cryptographic system.
Confidentiality:- the information cannot be understood by anyone for whom it was unintended.
Integrity :-the information cannot be altered in storage or transit between sender and intended receiver without the alteration being detected.
Authentication :-the sender and receiver can confirm each others identity and the origin/destination of the information
Objectives Of Cryptography
Overview of our Application
Today People wants and needs privacy and security while communicating with each other also to store the important information.
Nowadays, with the technologic progress as our dependency on electronic systems has increased we need more sophisticated techniques and applications are introduced so that the user can encrypt the important information anytime anywhere.
Our application is based on the android operating system as majority of users are using android device. In our application user can encrypt text or image store
Steganography
Steganography applications conceal information in other, seemingly innocent media. Steganographic results may masquerade as other file for data types, be concealed within various media, or even hidden in network traffic or disk space. We are only limited by our imagination in the many ways information and data can be exploited to conceal additional information.
The advantage of steganography over cryptography alone is that the intended secret message does not attract attention to itself as an object of scrutiny. Plainly visible encrypted messages—no matter how unbreakable—will arouse interest, and may in themselves be incriminating in countries where encryption is illegal. Thus, whereas cryptography is the practice of protecting the contents of a message alone, steganography is concerned with concealing the fact that a secret message is being sent, as well as concealing the contents of the message.
The later, such as invisible ink, try of hide messages physically. One disadvantage of
linguistic steganography is that users must equip themselves to have a good knowledge
of linguistry. In recent years, everything is trending toward digitization. And with the
development of the internet technology, digital media can be transmitted conveniently
over the network. Therefore, messages can be secretly carried by digital media by using
the watermarking techniques, and then be transmitted through the internet rapidly.
Watermarking is the art of hiding the fact that communication is taking place, by hiding
information in other information. Many different carrier file formats can be used, but
digital images are the most popular because of their frequency on the internet. In our
application user can encrypt the text and image in a file. User will have a choice of
either encrypting the text or the image and can send to the required person.
Problem Statement.
Algorithm For Encryption
[INSERT_TEXT]• Input: Text file , Text String (S), Random key(K).Output: Encrypted file. Stepl: File is divided into matrix formStep2: Append the end of string with ‘~’.Step3: Value of keyfactor is randomly generated with function keyfactor().Step4: X = (i+4)*keyfactorStep5: Then we check the value of X coordinate (X< Maxwidth)Step6: If not then X=X/2 and y++Step7: We convert the character into its ascii value with function Ascii().Step8: Then we insert the ascii value of character into the (x, y) coordinate of the matrixStep9: Then we encrypt the value of the key factor using the RSA algorithm and store the value in the file • Function Definitions: Keyfactor(): This function will generate a random value between 0-10.ASCII():This will convert the string into its ascii character.RSA Encrypt(): To encrypt the value of the key factor
Snapshot of Encryption Algorithm
Algorithm For Decryption
Algorithm for Extracting Text from file:[EXTRACT_TEXT]• Input: Text encrypted file (EI).• Output: Extracting Text (S}.Stepl: Decrypt the value of the key factor.Step2: Select the text file which you want to decrypt which is stored in the matrix form Step3: L = Split the matrix and store it in array formStep4: Scan the array for position of ‘~’.Step5: Loop will work till we get the position of ‘~’Step6: X= X+key factor.Step7: We check the value of X if(X< MaxWidth)Step8: If not y is incremented and the ascii value is converted into its corresponding character and the text is displayed.
Snapshot of Decryption Algorithm
Implementation Of the Application
Encrypting the text and image Connect the mobile device (with android OS) with your laptop switch on the
debugging mode.
Open the Eclipse and Run the android application.
As the user Run the application the user shows a dialog box.
The user can choose the text or the image what he wants to encrypt.
If the user chose text the user have to type the message in the dialog box.
If the user selects an image he has to browse the image from the gallery.
Now the user presses the Encrypt Button and the Encryption algorithm start running.
Encrypted message or image is automatically get stored in the Sd Card of the mobile device.
Encryption of text or image is done.
Decrypting the text or image.
The user open the application Decode text to decrypt the text or image.
After that the user click on the browse button.
A list of encrypted file appear on the screen the user can select the file which he
wants to decrypt
After selecting the file the application runs the decryption algorithm.
The decrypted text or image appears to the user screen and he can read the
information
TESTING
Type of Test
Will Test Be
Performed?
Comments/Explanations
Software Component
Requirement Testing
YES
Requirement Testing is performed to determine that the program modules perform as per the design specifications provided by end user. It will involve testing of all the requirements of the project depending upon various factors like resources, budget and time.
Manual work, need to
plan out all the software
requirements, time needed to
develop, technology to be used etc.
Unit Testing
YES
Unit testing will test individual units/code modules of
our Project like installation of a particular package
and checking the result of the algorithm after that.
Unit testing will be performed on
individual blocks of code like the
classes, interfaces, packages, etc. It
will be performed on every small
block of code.
Integration Testing
YES
Integration Testing will be useful for testing the
project as a whole. The integrated project
involves the combination of various unit
modules.
Integration testing is performed
after unit testing taking as input
the modules that have been
tested, grouping it in larger
aggregates, and then tested.
Performance
Testing
YES
Performance testing helps in finding the server
response time, performance specifications of
the system when multiple nodes are sending the
data. It will help in determining that whether
the system meets the performance criteria or
not in such a situation.
Eclipse Java platform which was
integrated with ADT plugin.
Security Testing
YES
Security testing covers the security concepts
like confidentiality, integrity, authentication,
availability, authorization and non-repudiation.
Security Testing is performed in
RSA algorithm
This gives a detailed introduction of Android application framework and the working principal of Android applications. The primary goal of this project is to encrypt the text/image send by the user. A lot of different applications are there in the market which are used for encrypting the file or image. I have used JavaScript functions, which may be reusable in future implementations. Sqlite for login database have been used. Through this app we learnt new things like steganography, sqlite risk mitigation plan, etc. Thus we came up with an android app that give us encryption of image or text in a file.
Security of secret message could be increase more by using specific algorithms. Image-Image encryption and decryption of same could be done. Features like voice recognization , text to speech, taking image instantly through gallery could be implemented.Key used for encryption could be generated using modern techniques. Can add more features like encrypting a file or encrypting a text in file.
Conclusion And Future Work