An open API service indexing awesome lists of open source software.

https://github.com/baderouaich/enigma

A Simple, Reliable and Efficient Encryption Tool
https://github.com/baderouaich/enigma

aes blowfish chacha20poly1305 cmake cpp20 cryptography cryptopp dear-imgui decryption eax encryption enigma gcm glfw3 linux security tools tripledes twofish windows

Last synced: 4 months ago
JSON representation

A Simple, Reliable and Efficient Encryption Tool

Awesome Lists containing this project

README

          

# Enigma
[![MIT License](https://img.shields.io/badge/license-MIT-yellow)](https://github.com/baderouaich/Enigma/blob/main/LICENSE.md)
[![Static Analysis Status](https://github.com/baderouaich/Enigma/workflows/static-analysis/badge.svg)](https://github.com/baderouaich/Enigma/actions?workflow=static-analysis)
[![Docs](https://codedocs.xyz/doxygen/doxygen.svg)](https://baderouaich.github.io/Enigma)
[![Language](https://img.shields.io/badge/C++-20-blue.svg?style=flat&logo=c%2B%2B)](https://img.shields.io/badge/C++-20-blue.svg?style=flat&logo=c%2B%2B)

A Simple, Reliable and Efficient Encryption Tool (for personal use)

### CI Status

| Operating system | Build status |
|---------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| Ubuntu GCC (x64) | [![Ubuntu](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-ubuntu-gcc.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-ubuntu-gcc.yml) |
| Ubuntu GCC Tests (x64) | [![Ubuntu](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-ubuntu-gcc-tests.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-ubuntu-gcc-tests.yml) |
| Ubuntu Clang (x64) | [![Ubuntu](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-ubuntu-clang.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-ubuntu-clang.yml) |
| Ubuntu Clang Tests (x64) | [![Ubuntu](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-ubuntu-clang-tests.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-ubuntu-clang-tests.yml) |
| Windows MinGW (x64) | [![Windows](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-windows-mingw.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-windows-mingw.yml) |
| Windows MinGW Tests (x64) | [![Windows](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-windows-mingw-tests.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-windows-mingw-tests.yml) |
| Windows MSVC (x64) | [![Windows](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-windows-msvc.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-windows-msvc.yml) |
| Windows MSVC Tests (x64) | [![Windows](https://img.shields.io/github/actions/workflow/status/baderouaich/Enigma/build-windows-msvc-tests.yml?branch=main)](https://github.com/baderouaich/Enigma/actions/workflows/build-windows-msvc-tests.yml) |

## Supported Encryption Algorithms
> Asymmetric
- :white_check_mark: RSA-OAEP-SHA256

> Symmetric [Authenticated Encryption](https://www.cryptopp.com/wiki/Authenticated_Encryption)
- :white_check_mark: AES-GCM
- :white_check_mark: ChaCha20Poly1305
- :white_check_mark: Camellia-GCM
- :white_check_mark: Serpent-GCM
- :white_check_mark: Twofish-GCM
- :white_check_mark: IDEA-EAX
- :white_check_mark: Blowfish-EAX
- :white_check_mark: TripleDES-EAX

## Extra Tools
- Strong Password Generator
- Hashing Algorithms (`MD2`, `MD4`, `MD5`,
`SHA1`, `SHA224`, `SHA256`, `SHA384`, `SHA512`,
`SHAKE128`, `SHAKE256`,
`KECCAK224`, `KECCAK256`, `KECCAK384`, `KECCAK512`,
`RIPEMD128`,`RIPEMD160`,`RIPEMD256`,`RIPEMD320`,
`TIGER`, `WHIRLPOOL`, `SM3`)
- XOR Encryption for nerds
- System & Hardware Information (`CPU`, `RAM`, `GPU`, `OS`, `Kernel`...)

## UI
- Main Menu
![Main-Menu-Demo](https://github.com/user-attachments/assets/14ec29fb-6c23-4bed-8a3f-8e8089cb5b84)
- Straight forward
![Straightforward](https://github.com/user-attachments/assets/fe8e2320-d89f-4185-b3c2-c371d5898107)
- Supports the strongest encryption algorithms
![Supports-Strongest-Encryption-Algorithms](https://github.com/user-attachments/assets/56e14297-dffb-4a8f-a546-41f188d8af2d)
- Save Encryptions to a local database (an SQLite3 database which you can export/import)
![My-Encryptions-Demo](https://github.com/user-attachments/assets/30e23abf-9a94-478d-94fd-521ccc13fd2a)
- Extra Utilities
![Tools-Demo](https://github.com/user-attachments/assets/b3f96607-d94a-47eb-8288-793b319e6e24)

### Compiling & Installing
### Linux
```bash
git clone https://github.com/baderouaich/Enigma
cd Enigma
# on Linux, run install_sys_deps.sh to install system libraries (X11, wayland..)
bash install_sys_deps.sh
mkdir build && cd build
cmake .. -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release
make install -j$(nproc)
```
### Windows
```batch
git clone https://github.com/baderouaich/Enigma
cd Enigma
mkdir build && cd build
cmake .. -G"Visual Studio 17 2022" -A x64 -DCMAKE_BUILD_TYPE=Release
msbuild Enigma.sln -property:Configuration=Release,MultiProcessorCompilation=true -maxCpuCount -verbosity:minimal -noLogo
```

> [!TIP]
> Export a backup of your encryptions database occasionally from menu **File** -> **Export** and save it somewhere (e.g, clouds like Google Drive).

> [!NOTE]
> Backed-up databases do not store any passwords, all data (text & files) are stored as encrypted ciphers (you can see that using tools like [sqlite3 browser](https://sqlitebrowser.org)), which means, even if your backup is compromised, no one can decrypt your data without the encryption password.

## License
[MIT License](LICENSE.md)

## Features and bugs

If you face any problems feel free to open an issue at the [issue tracker][tracker]. If you feel the program is missing a feature, please raise a ticket on Github. Pull requests are also welcome.

[tracker]: https://github.com/baderouaich/Enigma/issues