/LDBFrameworkServer

Java WebSocket Application: User ID auto-generator with ID finder and removal of selected users

Primary LanguageHTMLGNU Affero General Public License v3.0AGPL-3.0

forthebadge forthebadge forthebadge forthebadge

LinkedDatabase Frameworks (SERVER)

Using Java WebSocket and Dynamic Web Editor, this server-socket is able to auto-generate, find user IDs, and remove selected users from the LDB Framework (Server-Side).

The Client-Side will send the user credential through an encrypted HTTPS server and the LDB server will match the sent credential with the database credential if they match the server will send back a "PASS" or let the user login else, it will send a "FAIL" or credentials don't match alert.

The LDB database uses modern password hashing. When the user first makes a password the server will automatically assign a random ID and salt (String). Using the password and salt, the server will encrypt and only save the hash of the password {ex. (SHA512(password + salt)).HASH -> DB}. This means even if the server was hacked, the hacker will not be able to get the password easily and they would have a hard time cracking the encrypted hash passwords.

Features

  • Create, Edit, and Delete Accounts (Database)
  • Locks for 15 min if password is wrong
  • Bash-like UI with unique commands

Server-Side Screenshots (BETA)

Home Page

alt text

Locks Account for 15 minutes after 5 tries

alt text

Bash-like Commands

alt text

Project Dependencies

  • Java SE Runtime Environment 10.0.2 or higher
  • Selenium driver installed for Google Chrome (Google chrome Browser should already be installed)
  • Internet Connection for software updates (Future Implementation)

Future Implementations

  • Admin + Multi-User Control (Parallel Pipeline)
  • Branch/Guest Login (Limiting User to only basic commands)
  • Automated Login (Admin-Only)
  • Network Handling - Admin vs. User website Re-directing (Admin-Only)
  • Virtual/Nano LDB Framework (Admin + User)
  • Implement U2F/FIDO Authentication + NFC support for IOS/Android
  • Software dependency checker (If user has a software missing, alert them to install)