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.1.tar.gz (5.1 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.1-py3-none-any.whl (5.8 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: nanovault-1.0.1.tar.gz
  • Upload date:
  • Size: 5.1 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.1.tar.gz
Algorithm Hash digest
SHA256 951448a134b09ba83bb54869d08029d5d23968c3f9fc6387c6aabb9c9b6666bf
MD5 3b30dfc40c8c83b0e78a3028f19a940e
BLAKE2b-256 4179eaa52a20218be15a799b0d0ac672fc45737f3f00f6995bd35d4cff030a8f

See more details on using hashes here.

File details

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

File metadata

  • Download URL: nanovault-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 5.8 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.1-py3-none-any.whl
Algorithm Hash digest
SHA256 460085887c9a7075e8d94e5079db9a370e124a7aeb29d3cc35944948600f54c3
MD5 f6002931ac26f51ca875dd418f0088c2
BLAKE2b-256 266d5aac3c29abb77c0149aa0ee70ad3e35be4c159dfbf151e7b57149494dfc3

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