Abstract:
The project entitled “MOBILE APPLICATION FOR CODEC” is a mobile application being developed for all users. This application is an open source. This mobile application is provided to send a Short Message Service (SMS) to their friends, neighbors, relatives and so on. This application will be vary from other SMS applications. This application is based on the cryptography methodology. If the user needs to send a message to their friend the user should type the message in text area. It will convert as encrypted format. When the other user got the message he/she should open the message it will be decrypted and it will asks password to decrypt the message. So the user should give a password after that it will be decrypted and shows the original text. It doesn’t have any security messaging system earlier. So I am going to do a mobile application as I mentioned above.
1
PROJECT PROPOSAL
2
2. Project proposal Executive Summary The project entitled “MOBILE APPLICATION FOR CODEC” is being developed for all users. This mobile application is provided to send a Short Message Service (SMS) to their friends, neighbors, relatives and so on. This application will be vary from other Messaging Service applications. If the user needs to send a message to their friend the user should type the message in text area. It will convert as encrypted format. When the other user got the message he/she should open the message it will be decrypted and it will asks password to decrypt the message. So the user should give a password after that it will be decrypted and shows the original message.
INTRODUCTION About Yourself Sacred Heart College (Autonomous) is an afflicted First Grade College of Thiruvalluvar University. It is a minority institution, established and administrated by the Salesian of DonBosco (SDB) and offering various courses for UG and PG students. This is Shamili Iqbal working on this project, doing 2nd year of M.Sc Software Technology in Sacred Heart College, Tirupattur. About the Term project As an academic requirement this project is done for graduate students as a final year project. This project is mainly done for the all users those who are using mobile phones. The project entitles “MOBILE APPLICATION FOR CODEC” is open source application which can be used by any graduate for their communication.
Problem Statement: The “MOBILE APPLICATION FOR CODEC” faces some problem on sending messages to others. If the user sends a SMS to anyone it can read by all. So there is no defense to send the message to others. The secret messages will passed out. So the users feel uncomfortable and not secured to send their message.
3
Proposed Solution I develop an official mobile application for the above problem. The solution for this problem is to create a new mobile application on “MOBILE APPLICATION FOR CODEC”. It will provide a more protection to the messaging system. It will encrypt the message and the other user should enter the password and it will decrypt the message automatically if the password is correct.
TECHNOLOGY REQUIREMENTS Hardware: Processor
: Intel Pentium
RAM
: 512 MB
Storage
: 20 GB
Input
: Keyboard, Mouse
Output
: Monitor
Software: Front Tier
: Eclipse (Android)
Data Tier
: SQlite
Software Tools
: MS Visio
TERMS AND CONDITIONS 1. Project Duration: The duration of the academic project is three months from the date of agreement. 2. Project Initiation: Student upon receiving approval from the Project Guide shall start the requirement study and analysis and complete it as per the project schedule agreed upon by the Department. 3. Development: 100% of Project development will be done in the college lab.
4
VISION DOCUMENT
5
3. VISION DOCUMENT Purpose: The main purpose of this document is to define requirements of “MOBILE APPLICATION FOR CODEC”. The supplementary specification lists the requirements that are not readily specification and case model together to capture a complete set requirement of all information.
Scope: Use case and other supplementary documents can be prepared by having this vision document.
Positioning: The problem of
Unprotected Short Message Services cause some issues.
Affects
Those who are willing to share their Short Message Services.
The impact of which is
Difficult to manage the handling messaging services safely.
A successful solution would be
Creating a mobile application for the “CODEC”.
Product Statement: For
All mobile users.
Who
Public.
The (Project name)
MOBILE APPLICATION FOR CODEC
That
Will help to the mobile users to send the secured messages.
Unlike
The existing system is not providing protection for SMS.
Our product
Make the more security to the SMS.
6
SYSTEM REQUIREMENTS
7
4.1 SYSTEM STUDY Introduction This system study enables us to identify the purpose of input that has to be given, the Entry criteria and Exit criteria.
System Overview The project is called “MOBILE APPLICATION FOR CODEC”. This application contains the following information, the events which are held by the Messaging Services.
List of module 1. Text
Description of Modules: The System is mainly created to share the information to their friends by using this CODEC mobile application. The public can type their messages in text area. It will encrypt the message automatically and it will asks the password when the user open the message. After entering the correct password it will decrypt and open the message automatically. This system is created by using ECLIPSE.
Module 1: Text Purpose The main purpose of the “TEXT” module is used to do the messaging system. Users can send and receive the messages to each other. It will encode and decode the message automatically, if the password is correct.
Entry Criteria If the users need to send their messages with secure format they should click on CODEC application.
8
Input Public users should download the application and open it. And they should type secured message on text area.
Output The encrypted message will be decrypt automatically is the password is correct.
Exit Criteria The user can click on exit button or back button.
9
4.2 Use case Specification
4.3 Use case Diagram Message:
Sending Message
Send
User 1
Receive Message
Receive
User 2
1. Description: This page is used to send the message to other users.
10
2. Flow of events: 2.1Basic Flow
The application displays the text page.
They should enter the text message in text area.
It will encrypt the message automatically.
Then the user should send the message.
Receiver can open the message now.
It will ask password to the receiver.
Receiver should enter the password which was stored in database.
Click OK button. If the password is correct it will show the message else it displays error message to the receiver.
2.2. Alternative flow: Receiver should create a new password.
3. Preconditions: If the admin wants to send a message admin should click on the message icon.
4. Post conditions: If the admin created a new password they can proceed to send and receive the messages from the neighbors.
11
ANALYSIS AND DESIGN
12
5.1 Architecture Diagram
Presentation Layer
Business Logic
Activities
Text
13
5.2 Activity Diagram
Home
CODEC
Encryption
Enter Mobile no and Message
Decryption
Encrypted Message
Password
Process
Original Message
14
5.3 Sequence Diagram
Sender
Receiver
Ringer
Encrypt text Ringer attention text Device Ringing GPS Attention Word Location Details Decrypt text
15
Locator
5.4 Class Diagram
CODEC
<<Java Class>> My Receiver SMS:smsManager
<>
Text:String
My Receiver() On Receive: void()
<<Java Class>> Ring Activity Context:context On create (Bundle) : Void()
<<Java Class>> Sender SMS:smsManager Sender() Onsend:Void()
Decrypt()
On Create Activities Activity 1 Activity 2 . . Activity n
Cryptography
Text: String
Send()
16
5.5 Database Design Table Name createpassword
Description This table is used to create a new password for CODEC application. S.No
Field Name
Data Type
Constraints
Description
1
newpassword
Varchar2(20)
Not Null
User enters the new password
2
reenternewpassword
Varchar2(20)
Not Null
User enters password
the
Table Name updatepassword
Description This table is used to update a password if the users want. S.No
Field Name
Data Type
Constraints
Description
1
Oldpassword
varchar(20)
Not Null
User enters the old password
2
Newpassword
varchar(20)
Not Null
User enters password
17
the
5.6 Entity Relationship Diagram
Phone no name
Text
Encrypt text
Users
Send message
Password Message Decrypt
Receive message
Receiver
18
5.7 Data Flow Diagram
Level 0:
Sender
CODEC
Level 1:
Sender
Original message
Encrypt the message
Level 2:
Receiver
Decrypt the message
Password
19
Level 3:
Receiver
Original Message
20
TEST CASE DESIGN
21
Test Case - 1 Module: Text Revision History Sl. Version No No 1. C1.1
Date 16-3-18
Project Name: MOBILE APPLICATION FOR CODEC Functionality: Pre Condition:
Modification details
Module: Text
Adding
Load the Text module from the CODEC application.
If all the fields are entered correctly then click on Encrypt button. Scenario: Description: Check whether “Text” is working or not. # Procedure Test Test Data Expected Result Condition 1 1.Open the Text module Check whether To 9442391338 Record should get from application Text field saved to the data accepts Text base 2.Click on mobile Values number Message Hello Friend Encrypted 3.Click on "Encrypt" message Jaud6@#%klm Enter Password 1992 4.Encrypted message Your 5.Click on Decrypt Message 6.Enter Password is Hello Friend
22
Status
Test Case - 2 Module: Text Revision History Sl. Version No No 1. C1.1
Date 16-3-18
Project Name: MOBILE APPLICATION FOR CODEC Functionality: Pre Condition:
Modification details
Module: Text
Adding
Load the Text module from the CODEC application.
If all the fields are entered correctly then click on Encrypt button. Scenario: Description: Check whether “Text” is working or not. # Procedure Test Test Data Expected Result Condition 1 1.Open the Text module Check whether To 9442391338 Record should get from application Text field saved to the data accepts Text base 2.Click on mobile Have a nice Values number Message day Encrypted 3.Click on "Encrypt" message Iuye r iuhf kjf Enter new Password Vasudevan Confirm new password Vasudevan Password created Successfully Enter password Vasudevan 4.Encrypted message Your 5.Click on Decrypt Message Have a nice 6.Enter Password is day
23
Status
USER INTERFACE DESIGN
24
Send Message:
Encrypted Text:
25
Enter Password:
Enter new password:
26
Update Password:
Received Message:
27
IMPLEMENTATION
28
8.1 Sample code Message: <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/editText2" android:layout_centerHorizontal="true" android:layout_marginTop="49dp" android:text="Encrypt" /> <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignTop="@+id/textView1" android:layout_marginLeft="17dp" android:layout_toRightOf="@+id/textView1" android:ems="10" />
29
<EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/editText1" android:layout_marginTop="31dp" android:layout_toRightOf="@+id/textView2" android:ems="10" android:inputType="textEmailAddress" > <requestFocus /> Enter Password: 30
<EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:ems="10" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignRight="@+id/textView1" android:layout_below="@+id/editText1" android:layout_marginTop="42dp" android:text="OK" /> Encrypted text:
31
<EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="62dp" android:ems="10" android:inputType="textMultiLine" > <requestFocus /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/editText1" android:layout_centerHorizontal="true" android:layout_marginTop="30dp" android:text="Decrypt" /> Create Password:
android:text="Enter your new password" android:textAppearance="?android:attr/textAppearanceMedium" /> <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView1" android:layout_below="@+id/textView1" android:layout_marginTop="47dp" android:ems="10" /> <EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView2" android:layout_below="@+id/textView2" android:layout_marginTop="24dp" android:ems="10" > <requestFocus /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/editText2" android:layout_below="@+id/editText2" android:layout_marginLeft="60dp" android:layout_marginTop="30dp" android:text="Create" />
33
Update Password: <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView1" android:layout_below="@+id/textView1" android:layout_marginTop="30dp" android:ems="10" > <requestFocus /> 34
<EditText android:id="@+id/editText2" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView2" android:layout_below="@+id/textView2" android:layout_marginTop="20dp" android:ems="10" /> <EditText android:id="@+id/editText3" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/textView3" android:layout_below="@+id/textView3" android:layout_marginTop="33dp" android:ems="10" /> <Button android:id="@+id/button1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignLeft="@+id/editText1" android:layout_alignParentBottom="true" android:layout_marginBottom="16dp" android:layout_marginLeft="46dp" android:text="Update" />
35
Receive: <EditText android:id="@+id/editText1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/textView1" android:layout_centerHorizontal="true" android:layout_marginTop="68dp" android:ems="10" android:inputType="textMultiLine" />
36
CONCLUSION
37
9. Conclusion The project “MOBILE APPLCATION FOR CODEC” is completed, satisfying the required design specifications. The mobile application provides a user-friendly interface. All modules in the mobile application have been tested with valid data and invalid data and everything work successfully. Thus the mobile application has fulfilled all the objectives identified and is able to replace with other features. The constraints are met and overcome successfully. The application is designed as like it was decided in the design phase. This application has a user-friendly screen that enables the user to use without any inconvenience. This would help the corporation prepare and organize its schedules more efficiently on the basis of traffic demand. Besides, it would provide data on concessions given to various sections. The application has been tested with live data and has provided a successful result. Hence the mobile application has proved to work efficiently.
38
FUTURE ENHANCEMENT
39
10. Future Enhancement Future enhancement of “MOBILE APPLICATION FOR CODEC” is to develop this messaging system as a mobile application. The users may use this application in offline. This application will enhance with more features. This application has only encrypted text message. In future it will include voice message, audio calls and video calls with encryption and decryption method using this CODEC mobile application.
40
BIBLIOGRAPHY
41
11. Bibliography
1. https://www.developer.com/ws/android/encrypting-with-android-cryptography-api.html 2. https://github.com/facebook/conceal/issues/49 3. https://www.google.co.in/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&ved=0ahUKEwjSnr_4 6uDYAhVIbVAKHQDkC8oQFggoMAE&url=https%3A%2F%2Fwww.androidtutorialpoint.com%2Fb asics%2Fsend-sms-programmatically-android tutorial%2F&usg=AOvVaw1Q38oQldJwEC3v55IAZyd5 4. http://www.tutorialsface.com/2015/08/building-your-own-android-chat-messenger-appsimilar-to-whatsapp-using-xmpp-smack-4-1-api-from-scratch-part-2/ 5. https://www.appsrox.com/android/tutorials/instachat/ 6. https://stackoverflow.com/questions/40123319/easy-way-to-encrypt-decrypt-string-in-android 7. https://gist.github.com/FrankWu100/6737797 8. http://www.androprogrammer.com/2016/04/data-encryption-and-decryption-in.html 9. http://www.codejava.net/coding/file-encryption-and-decryption-simple-example 10. https://www.ibm.com/developerworks/websphere/tutorials/i-mqrad1/i-mqrad1.html
42