Skip to content

echandragrg/python_assignment_group

Repository files navigation

User Authentication Program

Overview

This project implements a user authentication system (sign up, sign in, reset password, and sign out) based on the provided flowchart. It simulates the process of managing users, validating credentials, and ensuring secure access to an application.

The system is designed using Python and follows the logic outlined in the flowchart.

πŸš€ Features

Sign Up

User enters credentials (username, password, phone number, DOB).

Validation for:

Phone number format (10 digits, starts with 9, ends with 0).

Password confirmation.

Correct DOB format (YYYY/MM/DD).

Minimum age requirement (above 18).

Data stored in a user list upon successful registration.

Sign In

User enters login credentials.

Validation against stored data.

Allows up to 3 incorrect password attempts.

Successful login grants access.

Password Reset

User can reset password if forgotten.

Old and new password must be verified.

Updated password stored securely.

Sign Out

User can exit the system gracefully.

πŸ—‚οΈ File Structure β”œβ”€β”€ Assignment_1/ β”‚ β”œβ”€β”€ flowchart.png # Visual representation of the process β”‚ β”œβ”€β”€ main.py # Python implementation β”‚ └── README.md # Documentation (this file) β”œβ”€β”€ Assignment_2/ β”‚ └── ... β”œβ”€β”€ Assignment_3/ β”‚ └── ... └── Assignment_4/ └── ...

πŸ› οΈ How to Run

Make sure you have Python 3.x installed.

Clone this repository or download the files.

Navigate to the assignment folder.

Run the program:

python main.py

πŸ“– Example Workflow

Start the program.

Choose an option:

1 β†’ Sign Up

2 β†’ Sign In

3 β†’ Quit

Follow the prompts according to the flowchart logic.

Program will guide the user step by step until sign out.

πŸ‘¨β€πŸ’» Authors

Chandra Bahadur Gurung

Chijioke Iteka

About

implements a user authentication system (sign up, sign in, reset password, and sign out)

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages