Skip to content

jpaul73/Secure-Login-System

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🔐 Secure Login System with Attack Prevention

A simple and secure login system built using Python Flask, HTML, CSS, and JavaScript. This project demonstrates secure authentication concepts such as password hashing and brute-force attack prevention without using a database.


📖 Overview

This project is designed to demonstrate how a secure login system works. It protects against brute-force attacks by limiting failed login attempts and locking the account after multiple incorrect password attempts.


✨ Features

  • 🔑 Secure Login Page
  • 🔒 Password Hashing using Werkzeug
  • 🚫 Maximum 5 Login Attempts
  • 🛡️ Account Lock After 5 Failed Attempts
  • 📢 JavaScript Alert Messages
  • 🎨 Responsive User Interface
  • ⚡ Flask Backend
  • 💾 No Database Required

🛠️ Technologies Used

  • Python
  • Flask
  • Werkzeug
  • HTML5
  • CSS3
  • JavaScript

📂 Project Structure

Secure-Login-System/
│
├── app.py
├── requirements.txt
├── README.md
│
├── templates/
│     └── login.html
|── Screenshorts
|
└── static/
      └── style.css

🚀 Installation

1. Clone the repository

git clone https://github.com/jpaul73/Secure-Login-System.git

2. Open the project folder

cd Secure-Login-System

3. Install dependencies

pip install -r requirements.txt

4. Run the project

python app.py

5. Open your browser

http://127.0.0.1:5000

🔑 Default Login Credentials

Username Password
admin admin123

🛡️ Security Features

  • Password stored using hashing.
  • Password verification using check_password_hash().
  • Maximum of 5 failed login attempts.
  • Account is locked after five incorrect attempts.
  • Success and failure messages shown using alerts.
  • Prevents basic brute-force attacks.

📸 Screenshots

Add screenshots of your login page here.

Example:

  • Login Page
  • Successful Login Alert
  • Failed Login Alert
  • Account Locked Alert

🔮 Future Improvements

  • Add SQLite Database
  • User Registration
  • Password Reset
  • Session Management
  • Login Activity Logs
  • CAPTCHA Verification
  • Email Verification
  • Two-Factor Authentication (2FA)
  • Admin Dashboard

⚠️ Limitations

  • No database is used.
  • Only one predefined user.
  • Login attempts reset when the application restarts.
  • Intended for educational purposes only.

👨‍💻 Author

Paul Doniyal J

Cyber Security Student


📄 License

This project is created for educational and learning purposes.

About

A Flask-based Secure Login System demonstrating password hashing, login attempt limits, and brute-force attack prevention without using a database.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors