Skip to main content

Steganography tool to hide encrypted secrets in PNG files

Project description

🛡️ NanoVault

Python Version License: MIT Security: Pure Python

NanoVault est un outil de stéganographie binaire conçu pour dissimuler des messages chiffrés à l'intérieur d'images PNG. Basé sur les fonctionnalités de Python 3.8+, il se distingue par sa philosophie "Zero-Dependency" : tout le code repose exclusivement sur la bibliothèque standard.


✨ Points Forts

  • 🔒 Chiffrement Robuste : Utilise PBKDF2-HMAC-SHA256 avec $100,000$ itérations pour transformer votre mot de passe en clé sécurisée.
  • 🧊 Zéro Dépendance : Aucun pip install requis pour le cœur du logiciel. Uniquement hashlib, secrets, et argparse.
  • 👻 Totalement Invisible : Les données sont injectées après le chunk IEND. L'image reste parfaitement lisible par toutes les visionneuses.
  • 🛡️ Protection par Sel (Salt) : Chaque fichier possède son propre sel de 16 octets généré de manière cryptographique via secrets.token_bytes().

🚀 Installation

Pour installer NanoVault et l'utiliser comme une commande globale :

  1. Cloner le dépôt :
    git clone [https://github.com/Loup0007A/Nanovault.git](https://github.com/Loup0007A/Nanovault.git)
    cd NanoVault
    
  2. Installer le package :
    pip install .
    

🛠️ Utilisation (CLI)

Une fois installé, utilisez la commande nanovault directement :

📥 Cacher un secret bash nanovault hide "image.png" "Message secret" "output.png" --password "MonPass"

📤 Extraire un secret bash nanovault extract "output.png" --password "MonPass"


🧠 Fonctionnement Technique

NanoVault manipule directement les octets du fichier PNG :

  1. Dérivation de Clé Nous utilisons la fonction de dérivation de clé pour ralentir les attaques par force brute : $$Key = PBKDF2(HMAC, Password, Salt, 100,000, SHA256)$$

  2. Injection Binaire Le script scanne le fichier pour trouver le marqueur de fin officiel du PNG : \x49\x45\x4e\x44\xae\x42\x60\x82. Le payload est construit comme suit : [IMAGE_ORIGINALE] + [START_SECRET] + [SALT] + [SALT_TAG] + [ENCRYPTED_DATA] + [END_SECRET]


📦 Intégration API

Vous pouvez importer NanoVault dans vos projets :

```python
from nanovault import hide_data, extract_file

# Cacher
hide_data("photo.png", "Secret", "resultat.png", "password")

# Extraire
msg = extract_file("password", "resultat.png")
print(msg)
```

📜 Licence

Distribué sous la licence MIT. Voir le fichier LICENSE pour plus de détails.


Développé avec passion pour la cybersécurité en Pure Python.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

nanovault-1.0.0.tar.gz (5.0 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

nanovault-1.0.0-py3-none-any.whl (5.7 kB view details)

Uploaded Python 3

File details

Details for the file nanovault-1.0.0.tar.gz.

File metadata

  • Download URL: nanovault-1.0.0.tar.gz
  • Upload date:
  • Size: 5.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for nanovault-1.0.0.tar.gz
Algorithm Hash digest
SHA256 df68d248ca17c1eb4788b77276391bf6ae67fafea761e2d600c961ff741951e7
MD5 1131057c806a1e9d67fdf0fea5b52b85
BLAKE2b-256 df72a40943c81756175add74353c0d6fbe3b614d21158bf4854b134ecd6bf31c

See more details on using hashes here.

File details

Details for the file nanovault-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: nanovault-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 5.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.0

File hashes

Hashes for nanovault-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5884104f5d45271517c196f2b8df90635ec801cd3fc024f8a6af0bb115d37f44
MD5 3a25ad7ec33853ab6083b476be68a88d
BLAKE2b-256 bc3b5f842b7749337239022919e0721ce4e8a93584295f61041501facb2ad6ad

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page