3.8 KiB
Mirage
📌 Description
Ce projet est un outil graphique développé en Python qui permet de :
- Chiffrer et déchiffrer du texte en utilisant l'algorithme Fernet (chiffrement symétrique).
- Cacher et extraire du texte dans des images (stéganographie).
L'interface utilise Tkinter pour une interaction simple et intuitive, avec des zones de texte (ScrolledText) pour faciliter le copier-coller et la manipulation de données.
Dans les répertoires Windows et linux, vous avez les binaires compilés exécutable.
🛠 Prérequis pour la compilation ou execution du script python
Pour exécuter ce projet, assurez-vous d'avoir installé les dépendances suivantes :
| Dépendance | Version | Description |
|---|---|---|
| Python | 3.8+ | Langage principal |
tkinter |
Inclus avec Python | Bibliothèque pour l'interface graphique |
Pillow |
9.0.0+ | Traitement des images |
numpy |
1.21.0+ | Calculs numériques |
cryptography |
36.0.0+ | Chiffrement Fernet |
Windows
installer IDE Python3 puis les extention dans requierements.txt
plus qu'a lancer le script.
Linux
Installation des dépendances
- Python :
apt install python3 python3-pip python3-tk - Cloner le dépôt (si applicable) :
git clone fra1od.freeboxos.fr/Mirage
cd Mirage
- Créer un environnement virtuel (recommandé) :
python -m venv venv
source venv/bin/activate # Linux/Mac
venv\Scripts\activate # Windows
- Installer les dépendances :
pip install -r requirements.txt
🚀 Utilisation
1. Lancer l'application
Exécutez le script principal :
python3 mirage.py
2. Fonctionnalités disponibles
- Chiffrement/Déchiffrement :
- Saisissez du texte dans la zone prévue.
- Cliquez sur Encoder pour chiffrer le texte.
- Cliquez sur Décoder pour déchiffrer le texte (nécessite la même clé).
- Stéganographie (si implémenté) :
- Chargez une image via le bouton Ouvrir une image.
- Cachez du texte dans l'image ou extrayez-le.
3. Build
près-requis pyinstaller
pour windows le .bat pour linux le .sh
🔐 Sécurité
- Mot de passe : Le chiffrement utilise une clé générée à partir d'un mot de passe (par défaut :
votre_mot_de_passe).
Pour plus de sécurité, modifiez le code pour demander le mot de passe à l'utilisateur via une boîte de dialogue. - Clé Fernet : La clé est dérivée du mot de passe en utilisant SHA-256 et encodée en base64.
📂 Structure du projet
.
├── mirage.py # Script principal de l'application
├── README.md # Documentation (ce fichier)
└── requirements.txt # Liste des dépendances (optionnel)
🤝 Contribution
Les contributions sont les bienvenues ! Ouvrez une issue ou soumettez une pull request pour :
- Ajouter des fonctionnalités (ex : support de fichiers audio).
- Améliorer l'interface utilisateur.
- Corriger des bugs.
⚠️ Limitations
- Pas de gestion des erreurs avancée : Les erreurs de décodage (ex : clé incorrecte) sont affichées dans une boîte de dialogue.
- Stéganographie basique : Actuellement, seul le chiffrement de texte est implémenté. La partie stéganographie (cacher du texte dans des images) peut être ajoutée.
📜 Licence
Ce projet est sous licence MIT. Vous êtes libre de l'utiliser, le modifier et le distribuer.