You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Détermine la probabilité que l'algo de chiffrement utilisé soit blowfish en:
19
+
20
+
- vérifiant la présence d'un IV à l'en-tête (taille fichier > 8 octets) et que la taille du fichier est un multiple de 8 (blocs de 8 octets pour l'algo blowfish)
21
+
- calculant l'entropie des données chiffrées
22
+
- calculant l'entropie des sous blocs
23
+
24
+
Args:
25
+
chemin_fichier_chiffre(str): Le chemin du fichier chiffré à traiter (mission1.enc).
26
+
27
+
Returns:
28
+
float: probabilité calculée.
29
+
'''
30
+
31
+
score=0.0
32
+
try:
33
+
withopen(chemin_fichier_chiffre, "rb") asf:
34
+
contenu_fichier: bytes=f.read()
35
+
taille_totale=len(contenu_fichier)
36
+
TAILLE_IV=8
37
+
38
+
# Heuristique 1 : Vérification de la taille (le critère le plus important)
39
+
iftaille_totale>TAILLE_IVandtaille_totale%8==0:
40
+
score+=0.4
41
+
42
+
donnees_chiffrees=contenu_fichier[TAILLE_IV:]
43
+
44
+
# Heuristique 2 : Vérification de l'entropie globale
0 commit comments