Mini Doc Latex Code
Mini Doc Latex Code
\usepackage[utf8]{inputenc}
\usepackage{graphicx}
\usepackage{geometry}
\usepackage{setspace}
\usepackage{tocloft}
\geometry{left=1in, right=1in, top=1in, bottom=1in}
\setstretch{1.5}
\begin{document}
\textbf{Submitted by}\\[0.5cm]
\textbf{Kandimalla Gopi}\\
Assisant Professor\\[2cm]
\textbf{BACHELOR OF TECHNOLOGY}\\[0.5cm]
\textbf{in}\\[0.5cm]
\noindent
This is to certify that the technical seminar work titled
\textbf{"DECENTRALIZED DYNAMIC IDENTITY AUTHENTICATION SYSTEM BASED ON BLOCKCHAIN"}
submitted by
\textbf{Ravula Manisha (21891A66B6), Mahajan Saiteja (21891A6694), Narra Nikhil
(21891A66A7)} in partial fulfillment of the requirements
for the award of the Bachelor of Technology degree in Computer Science and
Engineering
(AI \& ML) to the Vignan Institute of Technology and Science, Deshmukhi, is a
record of the
bonafide work carried out by them under my guidance and supervision.\\ \\
\noindent
The results embodied in this project report have not been submitted in any
university for the award of any degree, and the results are achieved
satisfactory.\\ \\ \\ \\ \\ \\ \\
% Signature Section
\noindent
\textbf{Kandimalla Gopi} \hfill \textbf{Dr.J.R.V.Jeny}\\
Project Guide \hfill Head of the Department\\
\vfill
\hfill \textbf{External Examiner}
\noindent
We hereby declare that the project entitled
\textbf{"DECENTRALIZED DYNAMIC IDENTITY AUTHENTICATION SYSTEM BASED ON BLOCKCHAIN"}
is the bonafide work duly completed by us. It does not contain any part of the
project submitted by any other candidate to this or
any other institute of the university. All such materials that have been obtained
from other sources have been duly acknowledged. \\[2cm]
% Signature Section
\begin{flushright}
\textbf{Ravula Manisha} \\
(Reg. No. 21891A66B6)\\[2em]
\textbf{Mahajan Saiteja} \\
(Reg. No. 21891A6694)\\ [2em]
\textbf{Narra Nikhil} \\
(Reg. No. 21891A66A7)
\end{flushright}
The fulfillment that accompanies the successful completion of our project, this is
our moment to convey our heartfelt gratitude to all those who have played an
instrumental role in our mini project's realization. Sincere thanks are extended to
\textbf{Dr. L. Rathnaiah}, the esteemed Chairman of Vignan Group of Institutions.
Last but not least, we wish to express my gratitude and thanks to friends and
beloved parents for their support and help.
\newpage
% --- Abstract Page ---
\begin{center}
\includegraphics[width=0.8\textwidth]{vignanlogo.png} \\[0.5cm]
\end{center}
\begin{center}
{\Large \underline{\textbf{ABSTRACT}}}
\end{center}
\noindent
\textbf{Keywords:Dynamic Multi-Factor Authentication (MFA), Decentralized Access
Control, Identity-as-a-Service (IDaaS), Cryptographic Identity Proofs, Distributed
Ledger Technology (DLT), Smart Contract Identity Verification, Peer-to-Peer(P2P),
Authentication Network, Decentralized Public Key Infrastructure (DPKI), Blockchain
Security Framework.}
\newpage
\vspace{1cm}
\begin{tabbing}
\hspace{2cm} \= \hspace{5cm} \= \kill % Set tab spacing
\end{tabbing}
\newpage
\addcontentsline{toc}{chapter}{List of Abbreviations}
\begin{center}
\includegraphics[width=0.8\textwidth]{vignanlogo.png} \\[0.5cm]
\end{center}
\section*{List of Abbreviations}
\begin{description}
\item[OTP] One-Time Password
\item[IoT] Internet of Things
\item[GDPR] General Data Protection Regulation
\item[HIPAA] Health Insurance Portability and Accountability Act
\item[API] Application Programming Interface
\item[PoW] Proof of Work
\item[DeFi] Decentralized Finance
\item[dApp] Decentralized Application
\item[SQL] Structured Query Language
\item[DBMS] Database Management System
\item[UDP] User Datagram Protocol
\item[TCP] Transmission Control Protocol
\item[XML] Extensible Markup Language
\item[AES] Advanced Encryption Standard
\item[PKI] Public Key Infrastructure
\item[UML] Unified Modeling Language
\item[KPI] Key Performance Indicator
\item[DDoS] Distributed Denial of Service
\item[SSL] Secure Sockets Layer
\item[PKC] Public Key Cryptography
\item[RSA] Rivest�Shamir�Adleman
\item[SHA] Secure Hash Algorithm
\item[GUI] Graphical User Interface
\item[LAN] Local Area Network
\item[WAN] Wide Area Network
\item[PCA] Principal Component Analysis
\end{description}
\vspace{1cm}
\newpage
\pagenumbering{arabic}
% --- Chapters ---
\chapter{INTRODUCTION}
% Content for introduction chapter
With the rapid development of computer technology, the Internet has become an
integral part of people's lives. However, much of the information transmitted on
the Internet consists of sensitive data, including personal private information,
commercial data, and even confidential state information. These data naturally
attract hackers, making network information security a critical concern.
The emergence of blockchain technology, beginning with Bitcoin in 2008, has offered
a promising solution due to its decentralized nature and consensus mechanisms,
which make data in the blockchain tamper-proof. Combining blockchain technology
with identity authentication can resolve many limitations in traditional systems.
One of the primary objectives is to leverage the immutable and tamper-proof nature
of blockchain technology to store and verify identity credentials. By
decentralizing data storage, the system ensures that no single entity has complete
control over sensitive user information, significantly reducing the risk of data
breaches. This decentralized architecture also provides greater transparency and
traceability, as all authentication transactions are securely logged on the
blockchain.
Another key feature of the system is dynamic and time-bound authentication. Unlike
traditional static password methods, this system incorporates multi-factor
authentication (MFA) using time-sensitive tokens and cryptographic proofs. The use
of public keys combined with incrementing nonces ensures that each authentication
session is unique, preventing unauthorized access and effectively mitigating replay
attacks. This dynamic approach enhances both the security and flexibility of the
authentication process.
Lastly, the project aims to deliver a scalable and cost-effective solution suitable
for a wide range of applications. Whether in the financial sector, healthcare,
government systems, or e-commerce.
Additionally, the project includes secure file storage and retrieval, where user
files are encrypted and stored, ensuring confidentiality and access control. The
system is designed to be user-friendly, enabling seamless registration, login, and
file management while maintaining high security standards. It is scalable and
flexible, capable of serving various industries such as finance, healthcare, e-
commerce, and government sectors, while handling large user volumes and frequent
authentication requests.
\section{Related Work}
This literature survey underscores the evolution of identity authentication
mechanisms from traditional methods to blockchain-based solutions. It highlights
the limitations of existing approaches and emphasizes the need for a fully
decentralized system that ensures security, transparency, and dynamic
authentication. The proposed system builds upon these insights to address
vulnerabilities and provide a comprehensive solution to modern identity
verification challenges.
\begin{table}[h]
\centering
\includegraphics[width=0.8\textwidth]{Picture7.png}
\caption{Comparison of Identity Authentication Methods and Systems}
\label{fig:Picture7}
\end{table}
The use of blockchain technology has become a promising approach to solving the
challenges associated with traditional identity authentication systems. This
section reviews various approaches and highlights their contributions, limitations,
and relevance to the proposed decentralized dynamic identity authentication system.
\section{Existing System}
\begin{table}[h]
\centering
\includegraphics[width=0.8\textwidth]{Picture3.png}
\caption{Table of already existing features and their types}
\label{fig:Picture3}
\end{table}
These existing systems highlight the trade-offs between usability, security, and
decentralization. Traditional methods, though widely adopted, lack the robustness
required to handle modern security threats. Blockchain-based solutions, while
promising, need further refinement to achieve complete decentralization and address
vulnerabilities related to partial centralization. These limitations form the
foundation for the development of the proposed decentralized dynamic identity
authentication system, which aims to combine the strengths of blockchain with
nonce-based mechanisms for secure, time-sensitive, and tamper-proof identity
verification.
\section*{Applications}
\begin{itemize}
\end{itemize}
\begin{itemize}
\end{itemize}
\chapter{DESIGN}
The design of the decentralized dynamic identity authentication system is a crucial
aspect to ensure secure, reliable, and scalable user authentication. This chapter
elaborates on the software and hardware requirements, system architecture, sequence
of operations, and data flow within the system.
\subsection{Software Requirements}
The software stack for the proposed system has been chosen to ensure compatibility
with blockchain technologies and ease of development. The primary requirements
include:
\begin{itemize}
\item \textbf{Operating System:} The system supports Windows 7/8/10 to ensure
compatibility across different development and production environments.
\item \textbf{Front End:} Developed in Java, the front-end interface provides a
user-friendly platform for registration, login, and file upload functionalities.
\item \textbf{Back End:} MySQL Server is used as the database management system
to handle auxiliary data, such as user metadata and system logs.
\item \textbf{Technology:} Blockchain technology forms the backbone of the
authentication mechanism, offering decentralized and tamper-proof identity
management.
\item \textbf{IDE Tools:} NetBeans IDE is used for efficient development,
debugging, and deployment of the Java-based application.
\item \textbf{Database:} MySQL ensures a reliable and secure relational
database for storing auxiliary information and configurations.
\end{itemize}
\subsection{Hardware Requirements}
The hardware specifications have been determined to support the computational needs
of blockchain operations and secure data processing. The key requirements are:
\begin{itemize}
\item \textbf{Processor:} A Pentium IV 2.4 GHz processor is recommended for
adequate computational power to manage encryption and blockchain-related tasks.
\item \textbf{Hard Disk:} A minimum of 200 GB of storage is required to store
system files, blockchain logs, and application data.
\item \textbf{Monitor:} A 15" VGA color monitor ensures a clear and accessible
display interface for interacting with the system.
\item \textbf{Mouse:} Logitech mouse for smooth navigation and user
interaction.
\item \textbf{RAM:} At least 1 GB of RAM is required for efficient operation
and multitasking.
\item \textbf{Floppy Drive:} A 1.44 Mb floppy drive is optional and included
for legacy support.
\end{itemize}
\section{Architecture}
The architecture of the system is designed to leverage blockchain technology for
decentralized and secure authentication. The major components of the architecture
are:
\begin{figure}[h]
\centering
\includegraphics[width=0.8\textwidth]{Picture1.png}
\caption{System Architecture }
\label{fig:Picture1}
\end{figure}
\section{System Modules}
\subsection{User Module}
The User Module allows individuals to interact with the system securely, including
registration, login, and file management. The functionalities of the User Module
include:
\begin{itemize}
\item \textbf{Registration:} Users provide their details during registration.
The system generates a unique blockchain key, ensuring enhanced security by
avoiding numeric patterns. This blockchain key is sent to the user�s email and is
later used during login.
\item \textbf{Login:} Upon login, the user�s authentication request is sent to
the server. The server verifies their credentials with the blockchain. Once
verified, an OTP valid for 15 seconds is sent to the user for time-sensitive and
dynamic authentication.
\item \textbf{File Upload and Encryption:} Users can upload files to the
server. The files are encrypted using the user�s blockchain key and stored securely
on the server.
\item \textbf{File Decryption and Access:} Users can request the decryption key
for securely downloading and accessing their files when required.
\item \textbf{Secure Logout:} The module includes a logout function to securely
terminate sessions, ensuring user actions remain protected.
\end{itemize}
This module ensures that all interactions by the user, including authentication and
file management, are secure, time-sensitive, and efficient.
\subsection{Blockchain Module}
The Blockchain Module manages the decentralized identity and authentication aspects
of the system. Its main functions include:
\begin{itemize}
\item \textbf{Key Generation:} When a registration request is received, the
blockchain generates a unique key and sends it to the user via email. This ensures
that each user has a secure and unique identity within the system.
\item \textbf{Authentication:} The blockchain validates whether the user
possesses a valid key when the server sends an authentication request. It responds
with the appropriate authentication status.
\item \textbf{Transparency and Security:} The blockchain maintains an immutable
log of all transactions, ensuring accountability and traceability.
\item \textbf{Session Management:} Active sessions are securely monitored and
can be terminated as needed to maintain system integrity.
\end{itemize}
\subsection{Server Module}
The Server Module acts as a bridge between the user and the blockchain,
facilitating secure and efficient communication. Its key responsibilities include:
\begin{itemize}
\item \textbf{Request Handling:} The server handles all user requests,
including login, file uploads, and key verification. It communicates with the
blockchain to authenticate user credentials.
\item \textbf{OTP Management:} After authentication is confirmed, the server
generates a one-time password (OTP) valid for 15 seconds. If the time limit is
exceeded, the OTP becomes invalid, preventing unauthorized access.
\item \textbf{File Encryption and Decryption:} The server manages file
encryption and decryption using the blockchain key, ensuring that files are
securely stored and accessed only by authenticated users.
\item \textbf{Secure Monitoring:} The server monitors all interactions between
users and the blockchain, ensuring secure data exchanges and proper session
management.
\item \textbf{Logout Functionality:} Secure logout functionality is provided
for users and administrators to ensure system security.
\end{itemize}
This module ensures the smooth operation of the system by handling user requests,
managing file security, and facilitating secure authentication processes.
\begin{itemize}
\item Handles cleaning, normalizing, and transforming raw data into a format
suitable for model training.
\end{itemize}
\begin{itemize}
\item Includes techniques like handling missing values, feature scaling, and
encoding categorical variables.
\end{itemize}
\begin{itemize}
\item Incorporates 1D CNN, BiRNN, and LSTM networks for training on processed
data.
\end{itemize}
\begin{itemize}
\item Implements ensemble techniques such as bagging, boosting, and stacking to
improve performance.
\end{itemize}
\begin{itemize}
\item Takes user input (employee features) via the web interface and provides
predictions in real-time.
\end{itemize}
\begin{itemize}
\item Outputs probability scores for attrition risk.
\end{itemize}
\begin{itemize}
\item Stores historical employee data, model configurations, and prediction
logs.
\end{itemize}
\begin{itemize}
\item Provides graphical insights into attrition trends, factors, and
predictions.
\end{itemize}
\section{Sequence Diagram}
The data flow within the system is organized and secure, leveraging blockchain
technology to maintain integrity and transparency. The DFD is described at two
levels:
\begin{itemize}
\item \textbf{Level 0 DFD (Context Diagram):} Shows the overall interaction
between the client, server, and public chain.
\begin{itemize}
\item \textbf{Inputs:} Public key, nonce query, and signed authentication
data.
\item \textbf{Outputs:} Authentication success or failure.
\end{itemize}
\item \textbf{Level 1 DFD:} Breaks down the system into specific processes:
\begin{itemize}
\item Querying the nonce from the public chain.
\item Sending login requests to the server.
\item Verifying data with the blockchain.
\item Returning authentication status to the client.
\end{itemize}
\end{itemize}
\chapter{IMPLEMENTATION}
\section{Module Description}
The system is divided into three main modules, each designed to handle a specific
aspect of the system:
\begin{itemize}
\item \textbf{User Module:}
Handles user registration, login, and file management. It ensures secure
interaction with the system by providing functionalities such as dynamic
authentication using OTPs and file encryption/decryption with a blockchain key.
\section{Implementation Details}
\begin{enumerate}
\item \textbf{User Registration:} Users register by providing their details,
which are securely stored on the blockchain. A unique blockchain key is generated
and sent to the user via email.
\item \textbf{User Login:} Users log in using their credentials and the
blockchain key. The server authenticates the login request by communicating with
the blockchain and sends an OTP valid for 15 seconds to the user.
\item \textbf{File Upload and Encryption:} Users can upload files, which are
encrypted using the blockchain key and stored on the server.
\item \textbf{File Access and Decryption:} Users can securely download files by
requesting the decryption key, ensuring the privacy of sensitive data.
\item \textbf{Session Management:} The system ensures secure session
termination with a logout functionality to maintain system integrity.
\end{enumerate}
\begin{figure}[h]
\centering
\includegraphics[width=0.4\textwidth]{Picture11.png}
\caption{user interface & server interface}
\label{fig:Picture11}
\end{figure}
The implementation ensures seamless and secure interactions between users, the
server, and the blockchain, leveraging decentralization and cryptographic
techniques to enhance security.
\section{Technologies Used}
\begin{itemize}
\item \textbf{Operating System:} Windows 7/8/10
\item \textbf{Front-End Technology:} Java for user interfaces and interactions
\item \textbf{Back-End Technology:} MySQL Server for managing user and
transaction data
\item \textbf{Blockchain Technology:} Used for decentralized identity
management and authentication
\item \textbf{IDE:} NetBeans for development and debugging
\item \textbf{Database:} MySQL for storing and managing system data
\end{itemize}
These technologies were chosen for their robustness, compatibility, and ability to
handle the complexities of the proposed system.
\chapter{TESTING}
\section*{Testing}
\subsection{Test Cases}
Step 1) UNDERSTAND THE SOURCE CODE
The first thing a tester will often do is learn and understand the source
code of the application. Since white box testing involves the testing of the inner
workings of an application, the tester must be very knowledgeable in the
programming languages used in the applications they are testing. Also, the testing
person must be highly aware of secure coding practices. Security is often one of
the primary objectives of testing software. The tester should be able to find
security issues and prevent attacks from hackers and naive users who might inject
malicious code into the application either knowingly or unknowingly.
Test case 1
The test case 1 tests the login of admin�s. The passwords and username is given if
the correct password and usernames are entered the login will be successful. If any
wrong in passwords and username the login will be denied.
\begin{table}[h]
\centering
\includegraphics[width=0.8\textwidth]{Picture0.png}
\caption{Test case 1 }
\label{fig:Picture0}
\end{table}
\section{Results}
\textbf{4. Scalability:}
The system handled a high volume of concurrent authentication requests efficiently,
demonstrating its capability to support large-scale deployments.
\textbf{1. Accuracy:}
\begin{itemize}
\item Models achieved an accuracy of over 87\% on the test dataset, with slight
improvements through ensemble methods.
\end{itemize}
\begin{itemize}
\item Predictions were generated within 2-3 seconds for each input through the
web interface.
\end{itemize}
\begin{itemize}
\item The system handled invalid inputs gracefully, providing descriptive error
messages.
\end{itemize}
\begin{itemize}
\item No crashes or downtime were reported during extensive testing with
multiple datasets.
\end{itemize}
\section{Results}
\textbf{2. Decentralization:}
The removal of a central authority eliminates single points of failure, enhancing
the system�s robustness and reliability. Identity verification processes are
distributed across multiple nodes, making unauthorized modifications or attacks
nearly impossible.
\section{Limitations}
Despite its promising results, the project has certain limitations that present
challenges for broader implementation. Below are the detailed limitations:
\chapter{CONCLUSION}
\section{Conclusion}
\section{Future Scope}
\chapter*{REFERENCES}
\begin{enumerate}
\item J. F. Ma, Y.L. Shen, �Information Security,� Xi'an: Xidian University
Press, 2013.
\item Y. Q. Chen, �A time stamp-based radio frequency replay attack defense
scheme,� \textit{Modern Computer: Second Half Month Edition}, vol. 29, no. 6, pp.
24-25, 2012.
\item C. Linnhoff-Popien, R. Schneider, M. Zaddach, �Digital Marketplaces
Unleashed,� Berlin, Germany: Springer, 2018.
\item X. Qiu, �Research on the Challenges and Countermeasures of Blockchain
Technology,� \textit{Computer Times}, no. 1, pp. 25-28, 2021.
\item W. Pan, X.F. Huang, �Identity management and authentication model based
on smart contract,� \textit{Computer Engineering and Design}, vol. 41, no. 4, pp.
915-919, 2020.
\item L. Zhang, �Design of dynamic password authentication system based on
blockchain technology,� \textit{Electronic Design Engineering}, vol. 28, no. 15,
pp. 97-100, 2020.
\item U. Rajput, F. Abbas, R. Hussain, et al., �A simple yet efficient approach
to combat transaction malleability in bitcoin,� \textit{International Workshop on
Information Security Applications}, Cham: Springer, pp. 27-37, 2014.
\item X.G. Wang, �A review of consensus algorithms for blockchain
technology,� \textit{Information and Computer: Theory Edition}, no. 9, pp. 78-80,
2017.
\item R. R. Krishna, A. Priyadarshini, A. V. Jha, B. Appasani, A. Srinivasulu,
and N. Bizon, �State-of-the-art review on IoT threats and attacks: Taxonomy,
challenges and solutions,� \textit{Sustainability}, vol. 13, no. 16, p. 9463, Aug.
2021.
\item C. B. Tan, M. H. A. Hijazi, Y. Lim, and A. Gani, �A survey on proof of
retrievability for cloud data integrity and availability: Cloud storage state-of-
the-art, issues, solutions and future trends,� \textit{Journal of Network and
Computer Applications}, vol. 110, pp. 75-86, May 2018.
\item M. Factor, K. Meth, D. Naor, O. Rodeh, and J. Satran, �Object storage:
The future building block for storage systems � a position paper,� in \
textit{Proceedings of the IEEE International Symposium on Mass Storage Systems and
Technology}, Aug. 2005, pp. 119-123.
\item D. Guide, �Amazon simple storage service,� \textit{Technical Report},
2008.
\item V. Bucur, C. Dehelean, and L. Miclea, �Object storage in the cloud and
multi-cloud: State of the art and the research challenges,� in \textit{Proceedings
of the IEEE International Conference on Automation, Quality Testing, and Robotics
(AQTR)}, May 2018, pp. 1-6.
\item J. Kosinska and K. Zielinski, �Autonomic management framework for cloud-
native applications,� \textit{Journal of Grid Computing}, vol. 18, no. 4, pp. 779-
796, Dec. 2020.
\item A. Di Stefano, A. Di Stefano, and G. Morana, �Ananke: A framework for
cloud-native applications smart orchestration,� in \textit{Proceedings of the IEEE
29th International Conference on Enabling Technologies: Infrastructure for
Collaborative Enterprises (WETICE)}, Sep. 2020, pp. 82-87.
\item W. Zhang, Y. Zhang, H. Fan, Y. Gao, and W. Dong, �A low-code development
framework for cloud-native edge systems,� \textit{ACM Transactions on Internet
Technology}, 2022.
\item A. Makris, I. Kontopoulos, E. Psomakelis, S. N. Xyalis, T.
Theodoropoulos, and K. Tserpes, �Performance analysis of storage systems in edge
computing infrastructures,� \textit{Applied Sciences}, vol. 12, no. 17, p. 8923,
2022.
\item G. Cheng, D. Guo, L. Luo, J. Xia, and S. Gu, �LOFS: A lightweight online
file storage strategy for effective data deduplication at network edge,� \
textit{IEEE Transactions on Parallel and Distributed Systems}, vol. 33, no. 10, pp.
2263-2276, Oct. 2022.
\item S. Li and T. Lan, �HotDedup: Managing hot data storage at network edge
through optimal distributed deduplication,� in \textit{Proceedings of the IEEE
Conference on Computer Communications}, Jul. 2020, pp. 247-256.
\item T. T. Thwin and S. Vasupongayya, �Blockchain-based secret-data sharing
model for personal health record system,� in \textit{Proceedings of the 5th
International Conference on Advanced Informatics: Concepts, Theory, and
Applications (ICAICTA)}, Aug. 2018, pp. 196-201.
\item R.K. Raman and L.R. Varshney, �Distributed storage meets secret sharing
on the blockchain,� in \textit{Proceedings of the Information Theory and
Applications Workshop (ITA)}, Feb. 2018, pp. 1-6.
\end{enumerate}
\end{document}