https://github.com/constantin9845/file-lock-desktop
Destop application to encrypt files and directories.
https://github.com/constantin9845/file-lock-desktop
aes aes-128 aes-192 aes-256 cbc-mode cross-platform encryption-decryption linux windows
Last synced: about 2 months ago
JSON representation
Destop application to encrypt files and directories.
- Host: GitHub
- URL: https://github.com/constantin9845/file-lock-desktop
- Owner: constantin9845
- Created: 2025-02-14T06:22:48.000Z (3 months ago)
- Default Branch: UI
- Last Pushed: 2025-02-20T07:12:10.000Z (3 months ago)
- Last Synced: 2025-04-12T08:59:14.392Z (about 2 months ago)
- Topics: aes, aes-128, aes-192, aes-256, cbc-mode, cross-platform, encryption-decryption, linux, windows
- Language: C++
- Homepage:
- Size: 78.4 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# :lock: **file-lock Desktop**
*Cross-platform AES encryption for individual files and directories*---
### 🏗️ **Build**
The following is required to build the application:
- Node Js
- npm
- g++
Clone repo```bash
git clone [email protected]:constantin9845/File-lock-desktop.git
cd File-lock-desktop/electron-app/
```
Build```bash
npm run build# Stores executable in resources/output/
# Windows -> simply move executable to Desktop or other location (Ready to use)
# Linux -> need to install .deb file -> can use dpkg or other tools
sudo dpkg -i .deb file
```
### :page_with_curl: **Program Description**
The **file-lock** desktop application allows you to **encrypt** or **decrypt** a **single file** or a **full directory** on your machine.
This version is available for **Windows**, **Linux**, and **macOS**.- **Encryption** can be performed using a **user-provided key**, or a new key can be generated automatically.
- The key should be stored in a file, with **only the first 16 bytes** being used.
- If a new key is generated, it will be saved in the `Downloads/` folder.
### :memo: **Notes**
- **Hidden files** are skipped during encryption and decryption.
- **In CBC mode**, the file size will increase by **16 bytes** after encryption due to the inclusion of the **Initialization Vector (IV)**.
### :white_check_mark: **Verified File Types**
The program supports encryption and decryption for all common file types, including:
- **PDF**
- **PNG**
- **DOCX**
- **MP4**
## :warning: **Caution**
> ⚠️ **Important**
> Keep the following in mind while using **file-lock Desktop**:- **Decrypted files will replace the original files**.
Ensure that you have backups of any important data before performing decryption.
- **No recovery is possible** without the key used for encryption.
**Do not modify or lose your key file**.
- **Do not open** the key file directly.
It is recommended to set the key file to **read-only mode** for added security.- **Do not** run system Files through the program.
System will be damaged and potentially not recoverable.
### :key: **Key Generation**
The key generation process is **cryptographically secure**, ensuring that the generated key is strong and unpredictable.
- However, there are **limits** to how many keys can be generated within a short period. For **large requests** for new keys in a short timeframe, the process may time out.
### :book: **Guide**
- **Key Size Matching**: Ensure the key size matches the expected size.
- If the chosen key size is **larger** than the key file size, the program will throw an error.
- If the chosen key size is **smaller** than the key file size, the program will use only **part of the key**.
- **Test Before Using**:
- Run multiple rounds of tests to encrypt and decrypt some files to verify the program.
- First, choose **not to replace files during encryption!**
### :warning: **Important Security Advice**
- Always **backup your encrypted files** before attempting decryption.
- Keep your **key file secure** and **do not share** it with untrusted parties. It is vital to maintain control of the key to ensure the security of your encrypted data.
## :warning: **Disclaimer**
By using this program, you acknowledge and agree to the following:
- The author is **not responsible** for any **damaged files** or **data loss** that may occur during encryption or decryption.
- It is **your responsibility** to ensure that all files and directories are correctly backed up before performing encryption.
- The program is provided **as-is**, and the author makes no warranties regarding its functionality or safety.
- **Use at your own risk**. The author is not liable for any loss, damage, or other consequences arising from the use of this program.
For support or feedback, feel free to open an issue https://github.com/constantin9845/File-lock-desktop/issues.
*CLI Version -> https://github.com/constantin9845/file-lock*