College Event Management System (2) (1)
College Event Management System (2) (1)
CSE
This is to certify that the Mini Project Report entitled “THREE LEVEL PASSWORD
AUTHENTICATION SYSTEM” is being submitted by ADLA AKHILA
(21271A6605), SAJJANAPU SINDHUJA (21271A6643), VEMULURI TARUN
(21271A6651), PEDDI ARJUN (21271A6611) in partial fulfillment of the requirements for the
award of the Degree of Bachelor of Technology in Computer Science & Engineering to the
Jyothishmathi Institute of Technology & Science, Karimnagar, during academic year 2024-
2025, is a bonafide work carried out by them under my guidance and supervision.
The results presented in this Project Work have been verified and are found to be
satisfactory. The results embodied in this Project Work have not been submitted to any other
University for the award of any other degree or diploma.
EXTERNAL EXAMINER
ACKNOWLEDGEMENT
We would like to express our sincere gratitude to our advisor, K. KALYAN, whose
knowledge and guidance has motivated us to achieve goals we never thought possible. The
time we have spent working under her/his supervision has truly been a pleasure.
The experience from this kind of work is great and will be useful to us in future. We thank
DR. R. JEGADEESAN, Professor & HOD CSE Dept for his effort, kind cooperation,
guidance and encouraging us to do this work and also for providing the facilities to carry out
this work.
We thank all the Faculty members of the Department of Computer Science & Engineering
for sharing their valuable knowledge with us We extend our thanks to the Technical Staff of
the department for their valuable suggestions to technical problems Finally Special thanks to
our parents for their support and encouragement throughout our life and this course Thanks to
all our friends and well-wishers for their constant support.
DECLARATION
We hereby declare that the work which is being presented in this dissertation entitled,
“THREE LEVEL PASSWORD AUTHENTICATION SYSTEM”, submitted towards
the partial fulfillment of the requirements for the award of the degree of Bachelor of
Technology in Computer Science & Engineering, Jyothishmathi Institute of
Technology & Science, Karimnagar is an authentic record of our own work carried out
under the supervision of K. KALYAN, Assistant Professor, Department of CSE,
Jyothishmathi Institute of Technology and Science, Karimnagar
To the best of our knowledge and belief, this project bears no resemblance with any report
submitted to JNTUH or any other University for the award of any degree or diploma.
ADLA AKHILA
Date:17-12-2024
Place: Karimnagar
ABSTRACT
Inspite of many efforts taken nowadays still security threats can be seen everywhere. And from the
starting we are using just single level password authentication factors, which is not sufficient to give
more security. In order to be more secure we can think of Three Level Password Authentication
System. So this is an idea to implement three levels password authentication for true users. In short
we can say, this is to implement three level of security. The First level password constitutes of simple
text based password and this effort is taken to resist shoulder surfing attack through the text
password. The Color Combination password there is basically three colors red green blue (RGB)
where user can set different combination of colors according to their choice just by clicking on those
colors forms the second level of authentication. Third level uses a Picture Password there at first user
have to select an image in jpg format to use as an password and then user can set the password by
clicking on the image in different places. These three levels of password in securing the resources
from unauthorized use.
The three level password authentication system enhances security by incorporating three distinct
layers of verification. The first level requires the user to enter a traditional password. The second
level adds an extra layer of protection through a pattern validation.The third level uses advanced
authentication methods, such as biometric verification (facial recognition), to confirm the user’s
identity. This multi-tier approach significantly reduces the risk of unauthorized access, making it
ideal for securing sensitive data and applications. The system balances strong security with user
convenience, providing robust protection for digital resources.
The Three-Level Password Authentication System reduces the risk of unauthorized access by making
it increasingly difficult for malicious actors to breach multiple layers of security. Its flexibility allows
for adaptation across various platforms, including online banking, enterprise systems, and cloud-
based applications, ensuring that users’ sensitive data and resources remain protected at all times.
In addition, the system is designed with user convenience in mind, balancing high-level security with
seamless access to authorized individuals. As a result, it is a robust solution for modern cybersecurity
challenges, particularly in environments where data integrity and privacy are of utmost importance.
ii
TABLE OF CONTENTS
ABSTRACT i
LIST OF FIGURES v
LIST OF ABBREVIATIONS vi
1 INTRODUCTION 1
1.1 Project Overview 1
2 LITERATURE REVIEW 4
3 EXISTING & PROPOSED SYSTEM 7
3.1 Existing System 7
4 SYSTEM REQUIREMENTS 10
4.1 Software Requirements 10
6 SYSTEM DESIGN 14
6.1 System Architecture 14
7 SOFTWARE SPECIFICATIONS 21
7.1 Python 21
8 IMPLEMENTATION 24
8.1 Installations 24
8.2 Code 25
9 SOFTWARE TESTING 32
9.1 Unit Testing 32
31
9.4 Acceptance Testing 33
iv
9.5 Performance Testing 33
10 RESULTS 34
11 FUTURE SCOPE 42
12 CONCLUSION 43
REFERENCES 44
v
LIST OF FIGURES
vi
LIST OF ABBREVIATIONS
vii
CHAPTER 1
INTRODUCTIO
N
The Three-Level Password Authentication System is designed to provide a high level of security
for user access, incorporating multiple layers of authentication to protect sensitive data and
applications. This system aims to address the growing need for secure authentication methods in an
increasingly digital world where traditional passwords alone are often insufficient to prevent
unauthorized access. By combining three distinct layers of security—password-based authentication,
One-Time Password (OTP) verification, and biometric identification—the system ensures that only
authorized users can gain access to protected resources.
The first layer of authentication in this system requires users to enter a traditional password. This is
the most common form of user verification and serves as the initial barrier to entry. However,
knowing that passwords can be vulnerable to attacks, the second layer adds an additional level of
security by sending a One-Time Password (OTP) to the user's registered mobile or email. This step
confirms that the user has access to a trusted communication channel, further verifying their identity.
The third and final layer uses advanced biometric verification, such as fingerprint scanning or facial
recognition, to ensure that the individual attempting to access the system is physically present and
matches the registered biometric data. This multi-tiered approach significantly strengthens the
authentication process, reducing the likelihood of unauthorized access.
The Three-Level Password Authentication System offers several advantages, including enhanced
security, reduced risk of data breaches, and greater protection of sensitive information. By requiring
multiple forms of verification, the system makes it much harder for malicious actors to compromise
accounts. Additionally, the system is designed to be user-friendly, providing a seamless experience
that balances security with convenience. It is also highly adaptable, making it suitable for use in
various fields, such as online banking, enterprise systems, healthcare, and cloud-based applications.
This project aims to provide a scalable and efficient solution for securing user data and ensuring that
only authorized individuals can access critical systems. By combining traditional, token-based, and
biometric authentication, the Three-Level Password Authentication System offers a comprehensive
1
and modern approach to user security, addressing the challenges posed by increasingly sophisticated
cyberthreat.
2
1.2 PROJECT PURPOSE
The purpose of the Three-Level Password Authentication System is to address the growing
concerns around cybersecurity by providing a robust and reliable method of user authentication.
Traditional password-based systems are often vulnerable to various forms of cyberattacks, including
brute force, phishing, and credential stuffing. This system aims to mitigate these risks by introducing
multiple layers of authentication, making unauthorized access much more difficult. By combining a
traditional password, a One-Time Password (OTP), and biometric verification, the system ensures
that only authorized users can access sensitive information and resources.
In addition to enhancing security, the system is designed to strike a balance between protection and
user convenience. Many security measures can disrupt the user experience, leading to friction in the
login process. The Three-Level Authentication System addresses this by seamlessly integrating
multiple verification steps without overwhelming the user. With password entry as the first step,
followed by a temporary OTP for an added layer of security, and biometric authentication to confirm
the user’s identity, the system ensures that users are authenticated efficiently while maintaining
strong protection against unauthorized access.
Furthermore, the project seeks to provide a scalable solution that can be implemented across various
platforms, from online banking and enterprise systems to cloud applications. As digital systems
continue to evolve, the need for more secure authentication methods becomes ever more crucial. The
Three-Level Password Authentication System is designed to keep pace with the increasing
sophistication of cyber threats, offering a flexible and future-proof approach to safeguarding user
data. Ultimately, the system’s purpose is to ensure that user access remains both secure and efficient,
providing a strong defence against the growing array of online security threats.
3
1.3 PROJECT SCOPE
The Three-Level Password Authentication System aims to enhance security by incorporating three
layers of verification: traditional password authentication, One-Time Password (OTP) sent via email
or SMS, and biometric verification (fingerprint or facial recognition). The system is designed to work
across multiple platforms, including web, mobile, and desktop applications, making it adaptable for
use in areas like online banking, enterprise systems, and cloud services.
The project will focus on ensuring robust security through encryption and secure communication
protocols, providing a user-friendly experience despite the multi-layered approach. The system will
be customizable for different organizations and scalable to accommodate future upgrades, such as
additional multi-factor authentication methods. While requiring internet access for OTP and
biometric verification, the system will provide strong protection for sensitive data across a variety of
industries.
The Three-Level Password Authentication System offers a range of features designed to enhance
security and ensure a seamless user experience. Key features include:
1. Multi-Layered Authentication:
o Password-based Authentication: The first layer requires users to enter a secure,
unique password.
o Facial Recognition: Utilizing advanced biometric technology, users associate their
facial features with their accounts. During login, the system captures and analyses
facial features to authenticate users, providing an additional layer of security.
o Graphical Pattern Locks: Users define unique patterns, such as drawing on a grid,
which serve as the final level of authentication. Successful pattern matching completes
the authentication process.
2. Enhanced Security:
o Data Encryption: All sensitive data, including passwords, OTPs, and biometric
information, is securely encrypted to protect against unauthorized access.
o Secure Communication: The system uses SSL/TLS protocols to securely transmit
data between the user and the server.
4
3. User-Friendly Experience:
o Seamless Authentication: Despite multiple layers of security, the authentication
process is designed to be quick and intuitive, minimizing user friction.
o Adaptive Authentication: The system can adapt to various user devices and
environments, offering flexibility in how authentication is performed (e.g., via mobile,
desktop, or web platforms).
4. Scalability and Customization:
o Cross-Platform Compatibility: The system is built to support web applications,
mobile apps, and desktop platforms, making it versatile for a variety of use cases.
o Customizable Security Levels: Organizations can adjust the security settings, such as
choosing between different biometric options or configuring OTP expiration times.
5. Integration with Existing Systems:
o The system is designed to be integrated with existing authentication frameworks,
making it easy for organizations to implement without disrupting current security
protocols.
6. Future-Proof:
o Support for Additional Authentication Methods: The system is designed to
incorporate future authentication technologies, such as hardware tokens or adaptive
authentication based on user behaviour, location, or device usage.
These features make the Three-Level Password Authentication System a robust, scalable, and
adaptable solution for ensuring high levels of security while maintaining a user-friendly experience
across various platforms.
5
CHAPTER 2
LITERATURE REVIEW
The development and implementation of multi-layered authentication systems have been critical in
addressing the growing concerns around cybersecurity. As digital systems become more
interconnected, traditional single-password systems no longer provide sufficient protection against
unauthorized access. The Three-Level Password Authentication System is an advanced approach to
securing user access by incorporating multiple layers of authentication—password, One-Time
Password (OTP), and biometric verification (such as facial recognition or fingerprint scanning). A
review of existing literature reveals the importance and effectiveness of these methods in ensuring
secure and seamless user authentication.
1.Password Authentication
Password-based authentication is the most widely used form of authentication in digital systems.
However, despite its popularity, it is vulnerable to various forms of cyberattacks, such as brute force
attacks, phishing, and credential stuffing (Bonneau et al., 2012). Research has shown that weak or
reused passwords are common vulnerabilities, and as a result, many systems are increasingly moving
towards more secure alternatives. A password alone is insufficient in today's cybersecurity landscape,
which has driven the need for additional layers of security.
2. Facial Recognition
Facial recognition authentication is a biometric security method that uses unique facial features to
verify a person's identity. The process involves capturing an image of the user's face using a camera,
then analyzing key features such as the distance between the eyes, nose, and mouth. This data is
compared with a stored facial template in a database to confirm identity.
Facial recognition is fast, convenient, and contactless, making it popular in mobile devices, laptops,
and security systems. However, challenges include concerns over privacy, the potential for spoofing
(e.g., using photos or videos to trick the system), and varying accuracy based on factors like lighting,
angle, and age. Despite these challenges, it is considered a reliable and secure form of authentication
when combined with other security measures.
This method is commonly used in mobile devices, especially smartphones and tablets, as an
alternative to text-based passwords. The pattern is easy to remember and quick to draw, providing a
convenient user experience. However, it can be vulnerable to certain risks, such as being observed
while the user draws the pattern (shoulder surfing) or the pattern being memorized by the device’s
smudge marks. To enhance security, it's often recommended to use longer, more complex patterns
and avoid simple or easily guessable designs.
The integration of multiple authentication methods into a single system is commonly referred to as
Multi-Factor Authentication (MFA). MFA combines at least two or more of the following factors:
something you know (password), something you have (OTP), and something you are (biometrics).
The Three-Level Password Authentication System follows this principle by incorporating three layers
of security: password, OTP, and biometric verification. Literature has shown that MFA is
significantly more secure than traditional password-based authentication alone, as it makes it much
harder for attackers to compromise multiple factors simultaneously (Burr et al., 2011). MFA has been
successfully implemented in sectors such as banking, healthcare, and government services to protect
sensitive data and ensure secure access to critical systems.
While multi-layered authentication enhances security, it must also consider the user experience to
ensure widespread adoption. Research indicates that overly complex or time-consuming
authentication processes can deter users, leading to lower engagement or bypassing security measures
altogether (Wang et al., 2017). Balancing security with user convenience is a key challenge in the
development of multi-level authentication systems. The Three-Level Password Authentication
System seeks to address this by providing an intuitive, seamless user experience, ensuring that the
authentication process does not hinder user access while maintaining high security.
7
measures based on user behaviour, device type, and location, are being explored to enhance
traditional multi-factor systems (Ferguson et al., 2019). Furthermore, the integration of behavioral
biometrics—such as keystroke dynamics and gait analysis—into multi-layered authentication
systems is being investigated as a way to provide continuous authentication without requiring active
user input (Merritt et al., 2020).
The Three-Level Password Authentication System, incorporating password, OTP, and biometric
verification, builds upon well-established security concepts and addresses key vulnerabilities in
existing authentication models. Literature supports the effectiveness of multi-factor authentication
systems in reducing unauthorized access and protecting sensitive data. However, the challenges of
maintaining a balance between security and user convenience remain a critical area of research.
Future developments in adaptive authentication and biometric technologies hold the potential to
further enhance the security and usability of multi-level authentication systems.
8
CHAPTER 3
EXISTING & PROPOSED SYSTEM
The second level introduces a second form of authentication, such as a one-time password (OTP) sent
via SMS or email, or multi-factor authentication (MFA) through an app or hardware token. This
ensures that even if the username and password are compromised, the attacker would still need access
to the second factor to proceed.
The third level adds even stronger security, often through biometric authentication (like fingerprints
or facial recognition) or role-based access control (RBAC). Biometric data is unique to the individual,
making it difficult to fake, while RBAC ensures that users are only granted access to specific
resources based on their roles within the organization. This multi-layered approach significantly
reduces the risk of unauthorized access, enhancing overall system security.
The three-level password authentication system, while offering enhanced security, has several
disadvantages:
1. User Inconvenience: Multiple authentication steps can be time-consuming and frustrating for
users. Entering a username and password, followed by an OTP or MFA code, and finally
biometric authentication can create a cumbersome login process, especially if it needs to be
repeated frequently.
2. Increased Costs: Implementing and maintaining a multi-layer authentication system can be
expensive. This includes the cost of setting up multi-factor authentication (MFA)
9
infrastructure, such as OTP systems, hardware tokens, or biometric devices, as well as
ongoing maintenance and software updates.
3. System Complexity: Managing and integrating different levels of authentication increases
system complexity. Organizations need to ensure that all layers are correctly implemented and
maintained, which may require specialized expertise and result in higher administrative
overhead.
4. Potential for Technical Failures: The more authentication layers involved, the higher the
likelihood of technical issues. Problems like delayed OTP delivery, biometric scanner failures,
or MFA system outages can prevent legitimate users from accessing their accounts, leading to
frustration and productivity loss.
5. User Resistance: Some users may resist adopting multi-layer authentication due to concerns
about privacy, convenience, or the complexity of managing multiple authentication methods.
This can lead to lower adoption rates, particularly in user-facing applications.
6. Privacy Concerns: Storing biometric data or other personal authentication factors raises
privacy and security concerns. If this sensitive data is compromised or mishandled, it could
lead to serious identity theft or misuse.
7. Vulnerability to Social Engineering: While the system adds multiple layers of security, it
may still be vulnerable to social engineering attacks, where attackers manipulate users into
providing sensitive information like OTPs, passwords, or biometric data.
These disadvantages highlight the trade-off between enhanced security and user experience, and
organizations must weigh them when deciding whether to implement a three-level authentication
system.
As cyber threats continue to evolve, ensuring robust security for user accounts has become
increasingly critical. Traditional single-layer password authentication systems are vulnerable to
various attack vectors, such as brute-force attacks, phishing, and credential theft. While multi-factor
authentication (MFA) and biometric systems provide additional security layers, the implementation
of these systems often introduces challenges related to user inconvenience, technical failures,
increased costs, and system complexity.
10
The problem lies in designing and implementing a three-level password authentication system that
balances strong security with user convenience and system efficiency. Specifically, the system
must:
1. Provide a seamless authentication process that effectively mitigates the risk of unauthorized
access while minimizing user frustration.
2. Incorporate multiple authentication methods, such as passwords, one-time passwords (OTPs),
and biometrics or multi-factor authentication (MFA), without compromising system
performance or scalability.
3. Ensure that sensitive user data, including biometric information, is securely handled and
complies with relevant privacy and security regulations.
4. Address potential vulnerabilities and failure points across the three authentication layers,
ensuring that users can still access their accounts in the event of technical failures.
5. Minimize costs and complexities associated with the implementation and maintenance of the
multi-layered system, particularly for small and medium-sized enterprises.
The aim is to create a system that enhances security without sacrificing usability, cost-effectiveness,
or system reliability.
The proposed three-level password authentication system is designed to enhance security while
minimizing the drawbacks commonly associated with traditional authentication methods. It will
consist of three distinct layers of authentication, each aimed at protecting against specific attack
vectors. The system will be optimized for both security and user experience, ensuring seamless access
while minimizing risks.
The proposed three-level password authentication system offers several key advantages that
enhance security, user experience, and overall system integrity:
11
1. Enhanced Security
Layered Protection: The three layers of authentication—username and password, OTP or MFA, and
biometric authentication or RBAC—provide multiple levels of security, making it much harder for
attackers to gain unauthorized access.
Reduced Risk of Credential Theft: Even if a user's password is compromised, the second and third
authentication layers (OTP, MFA, or biometric data) prevent unauthorized access, significantly
reducing the impact of a data breach or phishing attack.
Mitigation of Common Attack Vectors: The use of OTPs or MFA reduces the effectiveness of
common attacks like brute-force or dictionary attacks. Biometric authentication adds another layer of
difficulty for attackers to bypass.
Flexibility in Authentication: Users can choose from different second-layer authentication options
(OTP, MFA, or biometric), making it easier for them to authenticate based on their preferences and
available resources (e.g., a mobile device or biometric scanner).
Seamless Integration: Biometric authentication and other factors can streamline the authentication
process, eliminating the need for remembering complex passwords while still ensuring security.
Reduced Password Fatigue: Since the system uses multiple authentication methods, it reduces the
reliance on weak or reused passwords, encouraging better security practices without burdening the
user.
Future-Proof: The system is designed to easily incorporate new authentication technologies as they
emerge, such as voice recognition or AI-based behavioral biometrics. This ensures that the
authentication system remains robust against evolving threats.
Customizable for Different Use Cases: Whether for small businesses or large enterprises, the system
can be tailored to meet the security needs of various organizations. Smaller businesses can opt for
simpler second layers (like OTP) while larger enterprises may use advanced biometric or RBAC
solutions.
4. Cost-Effectiveness
Lower Upfront Costs for SMEs: The proposed system allows for flexibility in implementation. Small
businesses can use simpler, more affordable MFA options (e.g., OTP or app-based MFA), while larger
organizations can invest in more expensive options like biometric authentication.
12
Reduced Long-Term Costs: By offering scalable, customizable options, the system helps
organizations avoid unnecessary costs while maintaining high security. Furthermore, the reduced risk
of breaches lowers potential costs associated with data loss, legal liabilities, and reputation damage.
Backup and Recovery Options: In case of technical failures (e.g., issues with OTP delivery or
biometric authentication), users can have backup options such as secondary authentication methods or
recovery codes to regain access. This minimizes potential disruptions to user access.
Continuous Authentication: The system can implement ongoing authentication (e.g., analyzing
typing patterns or device usage) to detect anomalies and improve security without requiring users to
reauthenticate constantly.
Data Protection Compliance: The system can be designed to comply with data protection regulations
such as GDPR, HIPAA, or PCI-DSS by ensuring secure handling of user data, including encrypted
biometric data and strong password policies.
Role-Based Access Control (RBAC): For organizations needing to limit access to sensitive
information, RBAC can ensure that users only access what they are authorized to, enhancing both
security and compliance.
Minimizes Weak Password Risks: By integrating biometric authentication or MFA, the system
reduces reliance on passwords, which are often weak or reused, and vulnerable to phishing or brute-
force attacks.
Stronger Authentication with Biometrics: Biometric factors, such as fingerprints or facial
recognition, are unique to the individual, significantly increasing the strength of the authentication
process.
RBAC for Fine-Grained Access Control: For enterprise environments, RBAC ensures that users are
only granted access to the resources they need based on their role, limiting the risk of unauthorized
access to sensitive or confidential information.
Better Protection for Sensitive Data: The system ensures that high-risk areas or systems within an
organization can only be accessed by authorized users, reducing the chances of insider threats or
unauthorized external access.
13
In conclusion, the three-level password authentication system provides significant advantages by
combining strong security measures with flexibility, scalability, and user convenience. By layering
multiple forms of authentication, the system addresses the weaknesses of traditional single-factor
systems, while ensuring compliance and minimizing the impact of potential failures.
14
CHAPTER 4
SYSTEM REQUIREMENTS
Authentication Devices:
Biometric Sensors: Devices capable of capturing and verifying biometric data (e.g.,
fingerprint scanners, facial recognition cameras, retina scanners).
Hardware Tokens: If using physical MFA tokens (such as smart cards, USB security keys, or
hardware OTP generators), the necessary hardware devices should be provisioned for users.
Mobile Devices: For OTP generation or MFA apps (e.g., Google Authenticator, Authy), users
will need smartphones or devices with access to these apps.
Secure Servers: Servers to handle the processing and validation of multi-layer authentication,
ensuring high availability and reliability.
Secure Backup Devices: To handle fallback authentication (e.g., a secondary email or phone
15
number for OTP delivery), the system should be configured to store and manage backup devices
securely.
16
CHAPTER 5
PROJECT DESCRIPTION
The Three-Step Password Authentication System is designed to enhance security by adding multiple
layers of verification to the traditional username and password login process. This system involves
three distinct steps: First, users must enter their username and password, which are verified against
the stored credentials in the database. If the login credentials are correct, the system proceeds to the
second step, where a One-Time Password (OTP) is sent to the user's registered phone number or
email. The user must enter this OTP within a short time frame to proceed. In the final step, the user
undergoes biometric authentication, such as fingerprint scanning or facial recognition, to confirm
their identity. This multi-factor approach significantly reduces the likelihood of unauthorized access,
ensuring a higher level of security compared to traditional password-only systems. The system is
ideal for applications requiring strict user verification, such as banking, healthcare, and government
portals, while balancing security with user convenience.
5.1 MODULES
5.1.1 BACKEND/ADMIN
● The Admin Panel facilitates the addition, editing, and deletion of users,
including students, staff, and faculty. It provides a comprehensive view of user
details and activity logs.
● Admins can view lists of all users, including students, faculty, and staff.
● For adding a new user, the admin can enter information such as:
○ First Name Last Name
○ Date of Birth
○ Gender
○ Mobile Number
○ Email
○ Password
○ Joining Date
○ Branch (for faculty and staff)
○ Roll No (for students)
17
Event Management
Image/Resource Management
● Admins can effortlessly upload, update, and delete images/resources associated with
events, ensuring a visually engaging experience.
● Admins have the capability to update the status of an event to "Complete" once it
concludes. Additionally, the system allows administrators to upload comprehensive
event reports.
18
5.1.2 FRONTEN
D Home Page
Event Display
● Dedicated pages provide detailed information about various event types, allowing
users to explore and learn more about specific events of interest.
Event Enrollment
● The user dashboard offers a personalized space displaying enrolled events, allowing
users to seamlessly enroll to events.
● When event status is changed to ‘Completed’ by admin then when we visit that
event page the report, if uploaded, can be seen.
19
CHAPTER 6
SYSTEM
DESIGN
1.USER INTERFACE(FRONTEND)
Components:
o Login Form (Username & Password Input)
o OTP Entry Form
o Biometric Authentication Interface (Fingerprint, Face Recognition, etc.)
Functionality:
The user interacts with the interface to provide credentials, input the OTP, and
perform biometric verification. It communicates with the backend to trigger the
necessary steps and display results. Modern JavaScript frameworks (e.g., React,
Angular) or simple HTML5 forms can be used here.
Communication with Backend:
o Frontend communicates with the backend via HTTP/HTTPS requests
(REST APIs or GraphQL).
o Sends user credentials to initiate authentication, submits OTP for
validation, and captures biometric data for the final step
Functionality:
The web server processes requests from the user interface:
20
o Verifies the username and password against the database.
o If valid, generates and sends an OTP for the second step.
o After the OTP validation, the system triggers the biometric verification.
o It handles the session management and maintains the state of
authentication.
Functionality:
The database securely stores user information and authentication-related data:
o Passwords are stored securely using hashing algorithms like bcrypt or
Argon2.
o OTPs are stored temporarily with a short expiration time.
o Biometric data, if stored locally, is encrypted, and a secure method is
employed for verification.
Functionality:
After the three-step authentication process is completed successfully, the system
generates a session or token to grant the user access. Session data is securely
stored, and session expiration policies are enforced. Sensitive data is transmitted
via encrypted channels to protect against interception.
Security Considerations:
21
Data Encryption: All sensitive data, such as passwords, OTPs, and biometric
data, should be encrypted both in transit and at rest. SSL/TLS should be used for
secure communication between components.
Token Expiration and Session Management: Tokens (e.g., JWT) should have
an expiration time to limit unauthorized access if a session is hijacked.
22
Figure 6.2 : Data Flow Diagram
23
elements of a system.UML has the subsequent5 varieties of behavioral diagrams.
They are
1. Use case diagram
2. Sequence diagram
3. Collaboration diagram
4. State chart diagram
5. Activity diagram
Use Case Diagrams in UML describe interactions between a system and external
entities known as actors. Use cases represent specific functionalities or scenarios that the
system provides to its users.
24
6.3.2 Class Diagram
The Class Diagram in UML illustrates the static structure of a system, detailing
classes, attributes, methods, and their relationships. Rectangles represent classes, and lines
indicate associations, dependencies, and inheritances.
25
6.3.3 Activity Diagram
26
6.3.4 Sequence Diagram
27
CHAPTER 7
SOFTWARE
SPECIFICATIONS
7.1 PYTHON
Key Features
● Versatility: Python's versatility allowed for seamless integration across different
components of the website, from backend development to data processing and
automation scripts.
● Readability: Python's clean and readable syntax facilitated rapid development and
collaboration among team members, enhancing the maintainability of the codebase.
● Extensive Ecosystem: Leveraged Python's extensive ecosystem of libraries and
frameworks, including Django, to enhance functionality and streamline development.
● Community Support: Benefited from the vibrant Python community, ensuring
access to a wealth of resources, documentation, and support for overcoming
challenges encountered during the development process.
Backend Development
Automation Scripts
28
The selection of Python as the primary technology for this project was driven by its
unique combination of versatility, readability, extensive support, and a rich ecosystem,
contributing to the successful development of a dynamic and user-friendly college event
management system website.
29
views. This provides a way to add functionality such as authentication, security, or
caching to the entire application.
● Form Handling: Django simplifies form handling and validation. Developers can
create HTML forms in Python, and Django takes care of rendering the forms,
validating user input, and processing form submissions.
● Authentication and Authorization: Django provides a built-in authentication
system, including user management and sessions. It also supports fine-grained
authorization through permissions and groups, allowing developers to control access
to specific parts of the application.
● Security Features: Django includes several security features by default, such as
protection against common web vulnerabilities like Cross-Site Scripting (XSS) and
Cross-Site Request Forgery (CSRF). It encourages secure coding practices to mitigate
potential security risks.
● Built-in Testing Framework: Django includes a testing framework that
simplifies the process of writing and running tests for web applications. This
promotes the development of robust and maintainable code through test-driven
development.
● Extensibility and Reusability: Django's design promotes modularity and
reusability. Developers can create reusable applications and plug them into different
projects, enhancing the overall maintainability and scalability of web applications.
30
CHAPTER 8
IMPLEMENTATIO
N
We introduced a streamlined approach for orchestrating and participating in college
events. The event creation process is intuitive, allowing for the seamless development of
diverse events, each richly detailed with specific information such as event type, category,
date range, and coordinators.
8.1 INSTALLATIONS
requirements.txt
asgiref==3.7.2
Django==4.2.8
Pillow==10.1.0
sqlparse==0.4.4
typing_extensions==4.8.0
31
8.2 CODE
models.py
views.py
32
from django.contrib.auth.decorators import user_passes_test
def is_superuser(user):
return user.is_authenticated and user.is_superuser
def user_login(request):
print("user login ")
if request.method == 'POST':
form = AuthenticationForm(request,
data=request.POST) if form.is_valid():
username =
form.cleaned_data.get('username') password =
form.cleaned_data.get('password')
user = authenticate(request, username=username,
password=password) if user is not None:
login(request, user)
messages.success(request, f"Welcome,
{username}!") print("user logged in successfully")
return
redirect('/user/list') else:
messages.error(request, "Invalid username or password.")
else:
form = AuthenticationForm()
return render(request, 'user/login.html', {'form': form})
def user_logout(request):
logout(request)
messages.info(request, "Logged out successfully.")
return redirect('user:login')
def user_register(request):
if request.method == 'POST':
form = UserCreationForm(request.POST)
print(request.POST.get('password1'))
print(request.POST.get('username'))
if form.is_valid():
hashed_password = make_password(request.POST.get('password1'))
print("valid form ")
33
user = User.objects.create(
34
username=request.POST.get('username'),
password=hashed_password, # Note: Use Django's password hashing mechanism for
security
email=request.POST.get('username'),
first_name=request.POST.get('first_name'),
last_name = request.POST.get('last_name')
)
user1 = user.save()
print(user1)
user_profile = UserProfile.objects.create(user=user,
joining_date = request.POST.get('joining_date'),
usertype = request.POST.get('usertype'),
roll_no = request.POST.get('roll_no'),
gender = request.POST.get('gender'),
branch = request.POST.get('branch'),
phone = request.POST.get('phone'),
dob = request.POST.get('dob'),
)
user_profile.save();
username =
form.cleaned_data.get('username')
login(request, user)
messages.success(request, f"Account created successfully for {username}!")
return redirect('/user/list')
return render(request, 'user/register.html', {'form': form})
else:
form = UserCreationForm()
return render(request, 'user/register.html', {'form': form})
# user/views.py
def user_list(request):
users_with_profile = UserProfile.objects.select_related('user').all()
# users = User.objects.all()
print(users_with_profile)
return render(request, 'user/user_list.html', {'users': users_with_profile})
35
base.html
<!DOCTYPE html>
<html lang="en" class="h-100">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1">
<title>Edumin - Bootstrap Admin Dashboard </title>
<!-- Favicon icon -->
{% load static %}
<link rel="icon" type="image/png" sizes="16x16" href="images/favicon.png">
{% comment %} <link href="css/style.css" rel="stylesheet"> {% endcomment %}
{% comment %} <link rel="stylesheet" href="{%
static 'user/vendor/bootstrap-select/dist/css/bootstrap-select.min.css'
%}"> {% endcomment %}
{% block styles %}{% endblock %}
<link rel="stylesheet" href="{% static 'user/css/styles.css' %}">
</head>
<body class="h-100">
<body class="h-100">
{% block content %}{% endblock %}
<script src="{% static 'user/vendor/global/global.min.js' %}"></script>
<script src="{% static 'user/vendor/bootstrap-select/dist/js/bootstrap-select.min.js'
%}"></script>
<script src="{% static 'user/js/custom.min.js' %}"></script>
<script src="{% static 'user/js/dlabnav-init.js' %}"></script>
36
event_confirm_delete.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Delete Event</title>
</head>
<body>
<h1>Delete Event</h1>
<p>Are you sure you want to delete "{{ event.title }}"?</p>
<form method="post">
{% csrf_token %}
<button type="submit">Yes, delete it</button>
</form>
<a href="{% url 'event_list' %}">Cancel</a>
</body>
</html>
login.html
{% extends 'base.html' %}
{% block title %}Login - College Event Management{% endblock %}
{% block header %}Login{% endblock %}
{% block content %}
<div class="authincation h-100">
<div class="container h-100">
<div class="row justify-content-center h-100 align-items-center">
<div class="col-md-6">
<div class="authincation-content">
<div class="row no-gutters">
<div class="col-xl-12">
<div class="auth-form">
37
<h4 class="text-center mb-4">Sign in your account</h4>
<form method="post">
<ul class="messages">
{% for message in messages %}
<li{% if message.tags %} class="{{ message.tags }}"{% endif
%}>{{ message }}</li>
{% endfor %}
</ul>
{% csrf_token %}
{% comment %} {{ form.as_p }} {% endcomment %}
<div class="form-group">
<label><strong>Email</strong></label>
<input type="text" name="username" class="form-control"
tyle="order-radius: 5px;
color: #0E2A46;
font-size: 16px;
font-style:
normal; font-
weight: 400;
text-transform: none;">
</div>
<div class="form-group">
<label><strong>Password</strong></label>
<input type="password" name = "password" class="form-control"
style="order-radius:
5px;
color: #0E2A46;
font-size: 16px;
font-style:
normal; font-
weight: 400;
text-transform: none;">
</div>
<div class="form-row d-flex justify-content-between mt-4 mb-2">
</div>
38
<div class="text-center">
39
<button type="submit" class="btn btn-primary btn-block">Sign me
in</button>
</div>
</form>
<div class="new-account mt-3">
<p>Don't have an account? <a class="text-primary"
href="page-register.html">Sign up</a></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
{% endblock %}
40
CHAPTER 9
SOFTWARE TESTING
Software testing is a critical phase in the development lifecycle that ensures the
reliability, functionality, and performance of a software application. In the context of the
College Event Management System, testing plays a pivotal role in verifying that the system
functions as intended, meets user requirements, and remains resilient under various
conditions.
Integration testing focuses on validating the interaction and data flow between
different modules of the College Event Management System. This testing phase ensures that
various components work cohesively as a unified system. Integration testing used to verify
seamless data exchange between user management, event creation, and image/resource
management, safeguarding the integrity of the overall application.
System testing assesses the entire College Event Management System, evaluating
how integrated components function together to achieve end-to-end scenarios. This phase
ensures that the system operates as a unified whole, from creating events and enrolling users
to generating comprehensive event reports, guaranteeing the intended functionality and
reliability across all aspects of the system.
41
9.4 ACCEPTANCE TESTING
Acceptance testing validates that the College Event Management System meets
specified requirements and aligns with end-user expectations. This phase ensures that users
can successfully perform crucial tasks such as creating accounts, enrolling in events, and
accessing relevant information, providing a final confirmation that the system is ready for
deployment.
Performance testing assesses the responsiveness, speed, and scalability of the College
Event Management System under varying conditions. Simulating a high volume of
concurrent user interactions, this testing phase evaluates how well the system performs,
ensuring it can handle peak loads without degradation and providing insights into its overall
efficiency.
42
CHAPTER 10
RESULTS
● Event Creation
The Admin can create / add events specifying all the details regarding the
event through the event management tab.
43
● Login Credentials
The admin can create new user through this page and set login credentials
depending on user type like faculty, staff, student.
44
● User List
All the user accounts can be seen as a list and we can edit any information of
the user.
● Home Page
It aims to provide an intuitive and visually appealing interface that encourages
users to navigate further to different event category pages with the carousel as shown
in Figure 10.6.It will also display upcoming and completed events of all categories.
45
Figure 10.7 : Upcoming Events Display in Home Page
46
● Event Level Pages
We can navigate to different level events that is College level events,
Department level events, Cell & Committee events, Sports & Games events.The
upcoming and completed events of that category will be shown in the respective
pages.
47
Figure 10.11 : Cell and Committee Level Events Page
48
● Event Description Page
All the information given at the time of creating event can be seen here.We
also have enroll to the event option.
● User Enrollment
To enroll for an event user must login.
49
● Report
50
CHAPTER 11
FUTURE
SCOPE
While the College Event Management System meets the defined scope and
requirements, there is room for future enhancements, including:
This project has laid a strong foundation for the continued development and
improvement of the system to meet the evolving needs of our college community.
51
CHAPTER 12
CONCLUSIO
N
The system provides a user-friendly platform for event organizers and participants,
streamlining event creation, registration, and resource management. Users can easily access
event information, receive real- time notifications, and enhance their overall event
experience. The system’s ability to store event-related information in a centralized database
enables organizers to analyze trends, track attendee preferences, and make data-driven
decisions for future events. The continued evolution and refinement of event management
systems hold promise for revolutionizing event planning, fostering seamless experiences for
organizers and attendees alike, and adapting to the ever-changing landscape of events in
various domains.
52
REFERENCES
53