Skip to content

Latest commit

 

History

History
110 lines (69 loc) · 2.03 KB

README.md

File metadata and controls

110 lines (69 loc) · 2.03 KB

Minipy - API-Based Encryption System

Minipy is an API-based encryption system that supports various encryption algorithms, providing a secure and flexible solution for encrypting and decrypting files.

Table of Contents

Installation

  1. Clone the repo:
git clone git@github.com:Dark-Kernel/minipy.git && cd minipy
  1. Create virtual env
python -m venv env
source env/bin/activate
  1. Install dependencies:
pip install -r requirements.txt
  1. Run the API
flask run 

Usage

Available algorithms:

  • RSA
  • Fernet
  • AES ( with ECC encryption )

Encryption:

  1. RSA
curl -F "file=@<plain.file>" -F "pass=password" "http://localhost:5000/encr?algo=rsa" -OJ

If you want to encrypt another file with same private key you have:

curl -F "file=@<another.file>" -F "pass=password" -F "privkey=@key.pem" "http://localhost:5000/encr?algo=rsa" -OJ
  1. Fernet
curl -F "file=@<plain.file>" -F "pass=password" "http://localhost:5000/encr?algo=fernet" -OJ
curl -F "file=@<another.file>" -F "pass=password" -F "privkey=@key.pem" "http://localhost:5000/encr?algo=fernet" -OJ
  1. AES
curl -F "file=@<plain.file>" -F "pass=password" "http://localhost:5000/encr?algo=aes" -OJ

Decryption:

  1. RSA
curl -F "cipher=@cipher.encr" -F "privkey=@key.pem" -F "pass=password" "http://localhost:5000/decr?algo=rsa" -OJ
  1. Fernet
curl -F "cipher=@cipher.encr" -F "privkey=@key.pem" -F "pass=password" "http://localhost:5000/decr?algo=fernet" -OJ
  1. AES
curl -F "cipher=@cipher.encr" -F "privkey=@key.pem" -F "symkey=@sym_key.pem" "http://localhost:5000/decr?algo=aes" -OJ

Contributing

Feel free to contribute to this project.

License

This project is licensed under the GNU General Public License v3.0 - see the LICENSE file for details.