Black Book 2.0
Black Book 2.0
Black Book 2.0
SUBMITTED TO
BY
(2107100239)
1. Sahil Jadhav
2. Sagar Gaikwad (2107100218)
3. Ajinkya Kul (2107100249)
4. Omkar Bhandari (2107100225)
BhivrabaiSawant Polytechnic
(Approved by AICTE, New Delhi, Govt. of Maharashtra, Affiliated to MSBTE Mumbai) Gat
No. 720 (1&2), Wagholi, Pune-Nagar Road, Pune-412207)
Phone: 020 – 67335100 Tele fax: - + 91-020-67335100
E-mail: [email protected] Website: www.jspm.edu.in
Date: / /2024
CERTIFICATE
This is to certify that the Project titled “University Management System“ has been
completed in the academic year 2023-2024 by
1) Sahil Jadhav
2) Sagar Gaikwad
3) Ajinkya Kul
4) Omkar Bhandari
H.O.D. Principal
Computer Department
Seal of
the
Colleg
BhivrabaiSawant Polytechnic
(Approved by AICTE, New Delhi, Govt. of Maharashtra, Affiliated to MSBTE Mumbai) Gat
No. 720 (1&2), Wagholi, Pune-Nagar Road, Pune-412207)
Phone: 020 – 67335100 Tele fax: - + 91-020-67335100
E-mail: [email protected] Website: www.jspm.edu.in
ACKNOWLEDGEMENT
A part from the efforts of me, the success of any project depents largely on the encouragement
And guidelines of many others. I take this opportunity to express my gratitudeto the people who
have been instrumental in the successful completion of this project. Our deep thanks to our
lecturer Mrs. Prachi Sarada the guide of the project for guiding and correcting various document
of mine with attention and care. She has taken pain to go through the project and make
necessary correction as when needed. Also we are thankful to our project coordinator. I would
like to show my greatest appreciation to the HOD Prof. S. Patil. I can’t say thank you
encouraged every time I attend her meeting. Without her encouragement and guidance this
project would not have mate realized. I would also like to thank our respected principal Prof.
P.T. Kale For her support and concern on our project work. The guidance and support received
from all the members who contributed and contributing to this project, was vital for the success
of the project. I am grateful for their constant support and help.
CHAPTER 1
INTRODUCATION
1.1 INTRODUCTION
Android based devices with new features and multitasking operating system termed as smartphones , it has
become a daily need of human life. With the help of smartphone we can communicate all over the world we
also store lot of private data in smartphone like contact number , personal pictures , password, documents
,bank details etc. Android users are increasing day by day and android device are getting compact day by day.
Nowadays each one of us carries very costly or latest mobile devices which always creates fear in mind that it
may be stolen. Recovery of stolen phone depends on security features enabled on your phone. This Anti-theft
application for android based devices, once installed in smartphone. Will alert user. There are many
application which help user after smartphone is stolen and the chance of getting back is not sure. Some of this
application is not available for free.This Anti-theft application developed using services provided by android
device like sensor and camera and motion sensor we can track the device movement by getting alert alarm
1.2 ABSTRACT
This paper presents an anti-theft application for android based devices to find stolen or lost device through
the use of sensors, camera, Email. Many users use smartphones ,tablets based on android operating system
to store personal and private information and to communicate. Smartphones collect sensitive information
so the privacy of a user should be protected. Attacks on smartphones are increasing day by day and so the
vulnerability of the attacker. Many anti-theft application has already been developed but most of these
application are not freely available and it’s difficult to track the culprit. With the help of smartphone
hardware we collect the data and alert a user. When the application is installed in device it will work in
background and collect the data from the sensors , pattern or pin ,charging removal .This alert it will give by
alarm and by sending email to user, which was provided during installation.This data will help user to find
the stolen or lost device. This paper illustrate several security layer in which future investigation can be
done.
CHAPTER 2
LTERATURE REVIEW
2.1 PURPOSE
The purpose of this document is to present a detailed description of the Android Application that
is created to specifically provide users with some security related features which will help them protecting
their device. It will explain the features of the system, the interfaces of the system,
what the system will do, the constraints under which it must operate and how the system will
react to external stimuli in case the device is lost or stolen. This document is intended for the
users, evaluator and the developers of the application
The scope of our project are the users which are using android devices. Our aim is to provide our
user with one application that covers their full set of basic security and anti-theft features. The
application provides many different various features which increases the security of the android
device. From remotely controlling some features to getting the location of the device, all can be
achieved using the messaging feature of the android device. This application even tries to capture the
photograph of any user who has entered a wrong password/pattern of the device for more than specified
number of times. It even intelligently senses low battery in a device, and sends the last known location to an
emergency contact/email for added security reasons.
We have used a free database service, Google’s firebase, at the backend which provides the user
with a reliable and secure experience.
Android is leading the market share in mobile applications downloads since 2011. To secure users’ information
and resources, the platform uses a permission-based model. We have learned our concepts using the freely
available courses on Udemy and from the official android application development help material.
2.4 MOTIVATION
We chose the Android platform because it is one of the fastest growing mobile operating systems
on the market and is an open source development. According to IDC, Android absolutely dominated the
number of smartphones shipped worldwide in the first three months of 2015, with
78% market share. Taking this project allowed us to gain an understanding of how some of the
built in frameworks can be utilised to develop application and help in securing users data. Further,
we are provided with Android Studio. Android Studio is an excellent IDE, based on the equally
excellent IntelliJ IDE. It is blazingly fast and efficient, and you can setup a new Android project
for different types of Android apps within seconds. Also, apps deployed to the Google Play store
are available for download by users within a few hours, compared to a few weeks for Apple’s
App Store. Furthermore, this project demonstrates how mobile applications can contribute to
secure the data of the user with ease.
CHAPTER 3
OVERALL DESCRIPTION
This section comprises of the application’s different aspects including its perspective, functionalities,
environment and design constraints.
The application works on the principle of Client server model. Often clients and servers communicate
over a computer network on separate hardware, but both client and server may reside in the same system. A
client need not share any of its resources with clients, but requests a server’s content or service function.
Clients therefore initiate communication sessions with the servers which await incoming requests. In our case
the user can access different type of security related features through the fragments in our Home activity. The
user (client) registration will lead to an entry in the firebase’s database (server).
The product makes use of many open source applications under the GNU General Public License. It is a
mobile based system implementing the client-server model.
The following are the main features that are included in the Android based Application:
• Secure Login: Using Firebase as our backend database, the security for activities such as sign- up (register)
or login has considerably increased. The passwords are stored in hashed form and are verified by Google’s
own hashing techniques.
• SMS Control: This feature of our application lets the user remotely control some basic functionality which
would come in handy if the device was lost or stolen. It provides the user with a random generated password
which user can use to access this feature. The user can either change their phone’s profile from silent to
ringer, make their devices ring an alarm, or even get the last known location of their devices.
• Application Permission Management: This application lets users check the permissions of the installed
applications in their devices. Users are provided with the option to uninstall the application, if he/she feels
that it is accessing any unnecessary permissions which seems fishy.
• Signal Flare: This feature is based upon GPS tracking. This feature intelligently check the user’s device for
low battery. If it is so, the app sends the device’s location to registered email or number of the user.
DEPARTMENT OF COMPUTER ENGINEERING BHIVRABAI SAWANT
POLYTECHNIC
UNIVERSITY MANAGEMENT
SYSTEM
• Pattern-Unlocking: This feature uses the in-built pattern/password unlocking system to detect if the user
using the device is genuine or not. After a specified number of incorrect password 5 attempts, the application
shall take the photo of the user using the front camera and will send it to the registered email/phone number.
The application is designed to work only on the Android Operation System and its supporting devices. The
Android OS on the device should be a minimum of Ice Cream Sandwich (4.0.2) API 15 and a maximum of
Android Marshmallow (6.0.1) API 23. Requirements for the minimum amount of RAM for device running
Android 6.0 range from 1 GB of RAM for normal density screens, whereas the recommendation for Android
4.4 is to be at least 512MB of RAM. Android devices incorporate many optional hardware components
including GPS, orientation sensors, dedicated proximity sensors, the application will use all the mentioned
sensors if permitted by the user. The app will rely on several functionalities built into Android’s Application
Programming Interface (API), so ensuring appropriate usage of API will be a major concern. Beyond that, the
application is a self-contained unit and will not rely on any other Android-related software components.
Web application is defined as any application that is accessed through web over a network for
instance Internet or intranet. Web applications Nijaz (2000) stated that web applications are
famous from the fact that there is ability to update and maintain theses application without
disturbing and installing software on millions of clients’ computers. In the same way, Bohle
(2002) also elaborated the popularity of web applications because of the ubiquity of the client. A
than assopoulosetal (2001) stated that web has revolutionized the computer and communication in
an unprecedented way. According to Nijaz (2000) and Jurca (1999) the web is world- wide and has
capacity to broadcast, it’s a mechanism to distribute information, a platform that allows users to
collaborate, to interact regardless the geographic location. The principal reason for enhancing the
Web services is to build systems that interactive, friendly and flexible to users.
This provides some assumptions that we made while making our application as well as a set of libraries that
we will be importing to make our application more useful for the user.
Assumptions
The few assumptions that we took while building our android application were that the user shall provide us
with the required permissions and shall not deny any permission. Denial of any core permission shall lead the
application useless. We also assumed that the user does not force close the application or clear it’s RAM via a
full clean RAM Management software, which will stop our background services and the application would
not be able to monitor anything.
Time Dependencies
The features of our Application are basically divided into two groups: Core Features and additional features.
Core Features are crucial to the basic functionality of the application. These features must all be implemented
in order for the application to be useful. These include the libraries that comes preinstalled with the Android
Studio IDE, such as, the Google Repositories, Google SDK, etc. Additional libraries that we have imported
are those of Google Play Services and Firebase.
Hardware Dependencies
Some of the application’s features depend upon some hardware components present in Android handsets. For
instance, the GPS will be used to track the current location of the user. The Pattern lock functionality is
entirely dependent upon the ability to access the front camera. The android device must also meet the
minimum specified hardware requirements so that the application can run smoothly on it.
CHAPTER 4
SPECIFIC REQUIREMENTS
Various interfaces of the application and their design have been described in the User Interface Section
below.
The Application is intended as a mobile application for the Android Devices and hence is solely supported
on Android-powered devices. Updates and data exchanged between Android devices are transmitted to and
handled by the host server. It basically replicates a client server model, where a user requests certain data
from the user and the server replies with the most suitable results. We are basically using the cloud services
provided by the Google Firebase. Firebase lets you store data on their database and can be retrievable easily
in list or recycler view. Information will be sent using TCP/IP and the HTTP protocol using the port number
80. The Android platform provides abstractions for all network communications interfaces and thus thee
hardware as well.
The app is to be developed under the Android operating systems using the Java JDK, the Android
SDK tools.
The application will have a cloud server that is web-based and created using the JAVA language. The server
exists to retrieve information from the database. The product also calls for a database system that stores user’s
information and preferences. The HTTP server will use a push protocol to push notifications of updates onto
the Android phones. Furthermore, whenever a user opens the app from their phone, a pull protocol will be
used to retrieve and sync the latest updates from the firebase server.
Internet: This app requires internet to access the features of firebase such as Login and Signup. It also takes
the required permission from the user.
SMS: This application further uses the messaging capability of the device. It uses a Broadcast Listener to read
user’s messages and take action according to its content. If the user has messaged the correct keywords along
with the verified password, then he/she will be able to access the ringer functionality of the application. This
functionality is used to change the user’s profile from silent to ringer.
Device Administration: The device administration is required to read the pattern of the user to determine if
the user has entered a wrong pattern/password.
Camera: A front camera is required to take the photos of the user that has not been able to bypass the lock
screen and has entered the password/pattern wrong several times.
Scalability
With regards to the intended number of users and the projected load scenarios, the intentions are for the
system to able to serve multiple queries /day (in large during peak traffic hours) in terms of multiple users
accessing at the same time. Firebase Database is very efficient in handling such queries. Firebase uses JSON
as its language, which is much faster than PHP. This helps it to parse the queries faster and hence provide the
user with the correct data at a reliable rate.
UML behavioral diagrams visualize, specify, construct, and document the dynamic aspects of a system. Some
of the behavior diagram of our projects are shown below.
CHAPTER 5
TESTING
5.1 TESTING
Testing is advantageous in several ways. Firstly, the defects found help in the process of making the software
reliable. Secondly, even if the defects found are not corrected, testing gives an idea as to how reliable the
software is. Thirdly, over time, the record of defects found reveals the most common kinds of defects, which
can be used for developing appropriate preventive measures such as training, proper design and reviewing.
CHAPTER 6
PROJECT CODE
<application
android:allowBackup="false"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme"
tools:replace="android:allowBackup">
<activity android:name=".HomeActivity"/>
<activity android:name=".SetPin"/>
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
android:name=".EnterPin"
android:theme="@style/AppTheme" />
<activity
android:name=".ResetPin"
android:theme="@style/AppTheme" />
<activity
android:name=".ForgotPin"
android:theme="@style/AppTheme" />
<service
android:name=".PocketService"
android:enabled="true"
android:exported="true" />
</application>
</manifest>
JAVA Code:
package ideanity.oceans.antitheftapp;
import androidx.appcompat.app.AppCompatActivity;
import android.content.Context;
import android.content.Intent;
import android.content.SharedPreferences;
import android.content.res.ColorStateList;
import android.graphics.Color;
import android.os.Bundle;
import android.view.WindowManager;
import android.widget.ImageView;
import android.widget.ProgressBar;
DEPARTMENT OF COMPUTER ENGINEERING BHIVRABAI SAWANT
POLYTECHNIC
UNIVERSITY MANAGEMENT
SYSTEM
ProgressBar pb2;
public static final String MyPREFERENCES = "MyPrefs";
SharedPreferences sharedpreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
setContentView(R.layout.activity_main);
}
DEPARTMENT OF COMPUTER ENGINEERING BHIVRABAI SAWANT
POLYTECHNIC
UNIVERSITY MANAGEMENT
SYSTEM }
sharedpreferences = getSharedPreferences(MyPREFERENCES,
Context.MODE_PRIVATE);
String value = sharedpreferences.getString("passwordKey", "");
// Toast.makeText(Splash.this, value.toString(),
Toast.LENGTH_SHORT).show();;
if (value.length() > 0) {
Intent it = new Intent(MainActivity.this, HomeActivity.class);
startActivity(it);
finish();
} else {
Intent it = new Intent(MainActivity.this, SetPin.class);
startActivity(it);
finish();
}
}
};
new Thread(r).start();
}
CHAPTER 7
PROJECT OUTPUT
CHAPTER 8
CONCLUSION
8.1 CONCLUSION
When the application is forced closed by the user by going into its settings, user manually stops all the
broadcast listeners or services that an application is linked to. Hence our security application will fail to serve
its purpose in that case. Another limitation is that when the user is in a zone with low connectivity, i.e., low
signal strength of the operator that the user is using. In that case, the messaging feature shall suffer. Also if
any user intentionally removes the battery of the device, it is switched off and there is no way to prevent that.
Although, in today’s scenario, most of the devices are of unibody design, i.e., they come with non-removable
batteries. To conclude, Boomerang is an application that will try its best to bring back your lost/stolen phone.
It will be the only anti-theft security application that the user will ever need!
This application is an anti-theft and security application which would have to tackle all the upcoming security
threats. Some of future features include the following.
Power button override: A very important aspect of an anti-theft mobile system is not to let any
unauthenticated user to switch-off the device. Therefore the application will provide the feature to override
the power button before the security lock, so that the device cannot be turned off.
Wipe data: With this feature the user can wipe its internal memory, to avoid any data-theft from his/her
device.
Video Recording: This feature can be used to record videos from a phone and send it via email to track the
location of the phone.
Further, the user shall be notified of any hot swapping of SIM in his device. The new number of the SIM card
shall be sent to the user’s registered mobile number and registered email id. Addition of a child lock mode, to
increase security of the device. On every boot of the android device the user shall be notified of the location
of the device. Using IMEI number to enhance the functionality of anti-theft tracking using government
permission.
CHAPTER 9
REFERENCES
9.1 REFERENCES