Mirage/README.md
2026-06-26 15:59:26 +02:00

4.7 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 extentions dans requierements.txt

Puis lancer le script dans IDEpython3.

🐧 Linux

Installation des dépendances

  1. Python :
    apt install python3 python3-pip python3-tk
    
  2. Cloner le dépôt (si applicable) :
 git clone fra1od.freeboxos.fr/Mirage
 cd Mirage
  1. Créer un environnement virtuel (recommandé) :
 python -m venv venv
 source venv/bin/activate  # Linux/Mac
 venv\Scripts\activate     # Windows
  1. 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)
├── mirage_icon.png    # image pour icon linux
├── mirage_test.png    # image pour les tests de chiffrement
├── mirage.ico         # icone 
├── LICENSE            # la license MIT
├── build.bat          # compilation du binaire executable pour windows
└── build.sh           # compilation du binaire executable pour linux

build.bat Téléverser les fichiers vers "/" il y a 1 heure build.sh Téléverser les fichiers vers "/" il y a 1 heure LICENSE Initial commit il y a 1 heure mirage_icon.png Téléverser les fichiers vers "/" il y a 1 heure mirage_test.png Téléverser les fichiers vers "/" il y a 1 heure mirage.ico Téléverser les fichiers vers "/" il y a 1 heure mirage.py Téléverser les fichiers vers "/" il y a 1 heure README.md Actualiser README.md il y a 2 minutes requierments.txt Téléverser les fichiers vers "/"


🤝 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.