Skip to content

QuantumWizard888/cryptography_tools

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

3 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

CRYPTOGRAPHY TOOLS ๐Ÿ”

Minimalistic API tools (based on FastAPI) for hash generation and cryptography

CRYPTOGRAPHY TOOLS is an API-based minimalistic asynchronous (yeah) web application written in Python (FastAPI) for hash generation and other cryptogrphic needs.

Featues:

  • Hash generation: SHA-256, SHA-512, Argon2
  • base64 encoding/decoding
  • Random string generation

It uses:

  • Framework: FastAPI
  • Data validation: pydantic
  • Cryptography: base64, hashlib, secrets, argon2-cffi
  • ASGI HTTP Server: Uvicorn
  • Tests: pytest-asyncio, httpx

๐Ÿ“ฆ Installation

  1. Consider you already unpacked the app archive file. First you have to create virtual environment and activate it:
cd cryptography_tools
python3 -m venv .venv
. .venv/bin/activate

โ„น๏ธ NOTE: If you want to make some changes to CRYPTOGRAPHY TOOLS - make it while virtual environment is activated. Don't forget to exit virtual environment after you finish your work:

deactivate
  1. Install all required modules using:
pip install -r requirements
  1. Run the application with this command:
python3 main.py

โš ๏ธ WARNING!: Do not use this command for production environment! Escpecially the with reload = True option. In addition: most likely you have to adjust the way you run the application to your needs.

๐Ÿ“š How to?

After running the application you can access the documentation using this web address:

http://127.0.0.1:8000/docs

โš—๏ธ Tests

To run tests simply execute this command while in the root diectory of the project:

python3 -B -m pytest -v tests/test_crypto_tools_core.py