Skip to content

Commit

Permalink
Create README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
s4rrar authored Dec 19, 2024
1 parent 436b52b commit da0c1b4
Showing 1 changed file with 49 additions and 0 deletions.
49 changes: 49 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
# DarkS1ders File Encryption and Login System

## Overview

DarkS1ders File Encryption and Login System is a secure Java-based application that provides file encryption/decryption functionality alongside a secure login mechanism. It is designed to protect sensitive data and ensure secure access to the application using encrypted user credentials.

---

## Features

### File Encryption and Decryption
- **AES Encryption**: Encrypt and decrypt files with a user-specified key.
- **Modern UI**: Intuitive interface with support for file selection and result feedback.
- **Error Handling**: User-friendly error messages for invalid operations.

### Secure Login System
- **User Authentication**: Validates credentials stored in an encrypted database.
- **Password Encryption**: Ensures user credentials are stored and transmitted securely using `PBEWithMD5AndDES`.
- **Session Management**: Prevents unauthorized access to the encryption functionalities.

### Additional Capabilities
- **Custom Styles**: Modern UI styling using `styles.css`.
- **About Dialog**: Provides version information and credits.

---

## Technologies Used

- **JavaFX**: For the graphical user interface (GUI).
- **JDBC (Java Database Connectivity)**: For database interaction with Derby.
- **Cryptography**: AES (Advanced Encryption Standard) for file security and PBEWithMD5AndDES for credential encryption.
- **Maven**: For project dependency management.
- **Derby Embedded Database**: Lightweight, local database for user management.

## Usage Instructions

### Login
1. Enter your **username** and **password** in the respective fields.
2. Click **Login**. Upon successful authentication, the file encryption interface will load.

### File Encryption
1. Select a file to encrypt using the **Browse** button.
2. Enter an encryption key in the **Encryption Key** field.
3. Click **Encrypt File** and save the encrypted output.

### File Decryption
1. Select an encrypted file using the **Browse** button.
2. Enter the same key used during encryption in the **Encryption Key** field.
3. Click **Decrypt File** and save the decrypted output.

0 comments on commit da0c1b4

Please sign in to comment.