HashGate-Authentication-System

πŸ” HashGate Authentication System (Stage 1)

Language|C++ SHA-256|HASHING PLATFORM LICENSE STAGE|1


πŸ“ Overview

The HashGate Authentication System is a secure, file-based user authentication program written in C++. It provides a simple yet effective way to manage user authentication with the following features:

This system ensures that user credentials are stored securely using hashing techniques and provides a basic but effective local authentication mechanism.

πŸš€ Note: This program is just a part of a bigger project I am working on. It serves as the front-end login system for a larger application currently under development.

πŸš€ Features

πŸ› οΈ How It Works

  1. First Run Setup: The system prompts the user to set a root password (this cannot be changed later).
  2. Users can:
    • πŸ”‘ Login with a username and password.
    • βž• Create a new user (requires root password verification).
    • πŸ—‘οΈ Delete a user (requires root password verification and confirmation).
    • ❌ Exit the program.
  3. Passwords are stored securely as SHA-256 hashes to prevent unauthorized access.

βš™οΈ Setup and Compilation

Requirements

Compilation on Linux

 g++ authentication.cpp -o hashgate -lssl -lcrypto

Compilation on Windows (MinGW)

g++ authentication.cpp -o hashgate.exe -lssl -lcrypto

πŸ“Œ Usage

  1. Run the compiled executable:
    ./hashgate   # Linux
    hashgate.exe # Windows
    
  2. First Run:
    • The program will prompt for a root password.
    • This password is required to create or delete users.
  3. πŸ”‘ Login:
    • Enter a valid username and password.
    • If correct, access is granted; otherwise, an error is shown.
  4. βž• Create a User:
    • Enter the root password.
    • Provide a new username and password.
  5. πŸ—‘οΈ Delete a User:
    • Enter the root password.
    • Provide the username to delete.
    • Confirm deletion.
  6. ❌ Exit the program by selecting option 4.

πŸ”’ Security Considerations

πŸ“œ License

This project is open-source and free to use under the MIT License. Contributions and suggestions are welcome! πŸš€

🀝 Collaboration & Contributions

I am open to collaboration if you have great ideas to implement! Feel free to open issues, submit pull requests or discuss enhancements. Let’s make HashGate Authentication System even better together! πŸ’‘πŸ”§

πŸ“¬ Contact