Skip to content

Commit b74715c

Browse files
committed
Ajout du guide d'utilisation
1 parent abb4365 commit b74715c

2 files changed

Lines changed: 70 additions & 7 deletions

File tree

guideUtilisation.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
## **Algorithmes déployés lors des mission**
2+
**AES-256** :
3+
###### 1. **Hello Word** : Ceci est un exemple veuillez suivre ce format pour la documentation de vos algorithmes
4+
5+
**Chacha20** :
6+
###### 1. **Hello Word** : Ceci est un exemple veuillez suivre ce format pour la documentation de vos algorithmes
7+
8+
**Blowfish** :
9+
###### 1. **Hello Word** : Ceci est un exemple veuillez suivre ce format pour la documentation de vos algorithmes
10+
11+
**AES-GCM** :
12+
###### 1. **Hello Word** : Ceci est un exemple veuillez suivre ce format pour la documentation de vos algorithmes
13+
14+
**Fernet** :
15+
###### 1. **Hello Word** : Ceci est un exemple veuillez suivre ce format pour la documentation de vos algorithmes

src/interface_console.py

Lines changed: 55 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
from rich.traceback import install
33
from rich.markdown import Markdown
44
from rich import print
5+
from rich.text import Text
56
from rich.prompt import Prompt
7+
from rich.table import Table
68
# from detecteur_crypto import Analyser_fichier_uniquement
79
# from detecteur_crypto import Analyser_fichier_sequentiels
810
import time, os
@@ -66,10 +68,6 @@ def default_menu(self):
6668
self.menu_5()
6769
elif choix == "6":
6870
self.menu_6()
69-
70-
while choix > "6" or choix < "1":
71-
self.console.print("Veuillez entrer un nombre entre 1 et 6")
72-
choix = self.prompt.ask("Veuillez choisir une option ",choices=["1","2","3","4","5","6"])
7371
except ValueError:
7472
self.console.print("Veuillez entrer un nombre entre 1 et 6")
7573
except Exception as e:
@@ -127,13 +125,63 @@ def menu_4(self):
127125
def menu_5(self):
128126
self.console.clear()
129127
self.dynamiqueText("Système d'aide intégré","green")
130-
time.sleep(0.04)
131-
self.default_menu()
128+
title = Markdown("# Guide d'utilisation",style="yellow bold")
129+
contexte_title = Markdown("### 📋 Contexte de la Mission",style="green")
130+
contexte= Markdown("### Vous êtes un analyste en cybersécurité travaillant pour une agence gouvernementale. Lors d'une opération d'investigation, votre équipe a intercepté 5 fichiers chiffrés contenant des informations cruciales. Votre mission est d'identifier l'algorithme de chiffrement utilisé pour chaque fichier, de découvrir la clé de déchiffrement, puis d'extraire le contenu secret.\n" \
131+
"### Les criminels ont utilisé 5 algorithmes de chiffrement symétrique différents pour protéger leurs communications. Votre expertise en cryptanalyse sera mise à l'épreuve pour déchiffrer ces messages et découvrir les secrets qu'ils contiennent.\n")
132+
133+
mission_table = Table(title = "Missions Accomplies",style="",show_lines= True,leading=1)
134+
mission_table.add_column("Intitulé",style="violet",justify="center")
135+
mission_table.add_column("Fichier cible",style="red",justify="center")
136+
mission_table.add_column('Indice',style="yellow",justify="center")
137+
mission_table.add_column("Défi",style="green",justify="center")
138+
139+
mission_table.add_row("AES-256-CBC","mission1.enc","La clé est liée à une ville française célèbre et une année olympique"," Identifier l'algorithme AES en mode CBC et récupérer la clé par attaque dictionnaire")
140+
mission_table.add_row("ChaCha20","mission2.enc","Combinaison d'une année récente et d'un mot de passe anglais commun","Reconnaître le chiffrement de flux moderne ChaCha20")
141+
mission_table.add_row("Blowfish","mission3.enc","Nom d'un algorithme de hachage populaire suivi de chiffres","Détecter l'algorithme Blowfish et ses spécificités")
142+
mission_table.add_row("AES-256-GCM","mission4.enc","Acronyme d'une organisation internationale + année courante","Identifier le mode authentifié GCM et gérer l'authentification")
143+
mission_table.add_row("Fernet","mission5.enc","Phrase française simple encodée, liée à notre domaine d'étude","Reconnaître le format Fernet et sa structure particulière")
144+
145+
f = open("guideUtilisation.txt",'r')
146+
algo_docs = Markdown(f.read())
147+
f.close()
148+
149+
process= Markdown("### Processus d'usage logiciel",style="purple underline")
150+
intro = Markdown("Comme vous l'avez probablement remarqué le menu de ce logiciel est composé de 06 options dont 04 principales :")
151+
usage_guide_1 = Markdown("1. ### Analyse d'un fichier spécifique \n",style="black on white")
152+
analysis_1 = Markdown(" Cette option a pour but de traiter un fichier crypter ( prise en charge des '.enc' exceptionnellement ) afin d'identifier l'algorithme \n\n" \
153+
" de cryptage qui lui a été appliqué ainsi que le score de probabilité de chaque algorithme de cryptage cité ci-dessus \n\n")
154+
usage_guide_2 = Markdown("2. ### Mission complète automatique \n",style="black on white")
155+
analysis_2 = Markdown(" Cette option permet de traiter les 05 missions de façon séquentielle afin de ressortir de chacune d'entre elle :\n\n" \
156+
" -la clé de crypatage\n\n" \
157+
" -le message déchiffrer\n\n" \
158+
" A la fin des traitement un synthèse finale est générée sur l'état des Test effectué")
159+
160+
usage_guide_3 = Markdown("3. ### Attaque par dictionnaire manuelle",style="black on white")
161+
analysis_3=Markdown(" En optant pour cette option vous aurez à sélectionner le fichier que vous souhaitez décrypté et par suite l'algorithme de décryptage que vous voudiez appliquer.\n" \
162+
" Vous aurez dun suivez en tempps réel de l'evolution des tentatives ainsi que l'affichage du résultat obtenu")
163+
164+
usage_guide_4 = Markdown("4. ### Affichage des rapports \n",style="black on white")
165+
analysis_4 =Markdown(" Cette option vous permettra d'oberver les rapports des différents tests de décryptages effectués au cours de l'utilisation de ce logiciel")
166+
167+
final = Markdown("# 😁​ Merci d'utiliser notre logiciel 👾​ et bonne continuation ( **Appuyez sur la touche Enter pour retourner au menu principal** )",style="yellow")
168+
169+
# print(title,contexte_title,contexte,mission_table,algo_docs,process,intro,usage_guide_1,analysis_1,usage_guide_2,analysis_2,usage_guide_3,analysis_3,usage_guide_4,analysis_4,final)
170+
# escape = input('')
171+
guides = [title,contexte_title,contexte,mission_table,algo_docs,process,intro,usage_guide_1,analysis_1,usage_guide_2,analysis_2,usage_guide_3,analysis_3,usage_guide_4,analysis_4,final]
172+
173+
for guide in guides:
174+
print(guide)
175+
print("\n")
176+
177+
escape= input('')
178+
if escape != None:
179+
self.default_menu()
132180

133181
def menu_6(self):
134182
self.console.clear()
135183
self.dynamiqueText("😄​ Merci pour votre visite et à la revoyure 👋​ !","yellow")
136184
time.sleep(2)
137185
self.console.clear()
138186

139-
consoleInterface()
187+
consoleInterface()

0 commit comments

Comments
 (0)