Python Forensics - Application Forensic de base

Pour créer une application conformément aux directives Forensic, il est important de comprendre et de suivre ses conventions de dénomination et ses modèles.

Conventions de nommage

Lors du développement des applications d'investigation Python, les règles et conventions à suivre sont décrites dans le tableau suivant.

Constantes Majuscules avec séparation de soulignement HAUTE TEMPÉRATURE
Nom de la variable locale Minuscules avec majuscules bosselées (les traits de soulignement sont facultatifs) température actuelle
Nom de la variable globale Préfixe gl minuscule avec des majuscules bosselées (les traits de soulignement sont facultatifs) gl_maximumRecordedTemperature
Nom des fonctions Majuscules avec majuscules bosselées (traits de soulignement en option) avec voix active ConvertirFarenheitToCentigrade (...)
Nom de l'objet Préfixe ob_ minuscule avec majuscules bosselées ob_myTempRecorder
Module Un trait de soulignement suivi de minuscules avec des majuscules bosselées _tempRecorder
Noms de classe Préfixez class_ puis casquettes bosselées et restez bref class_TempSystem

Prenons un scénario pour comprendre l'importance des conventions de dénomination dans Computational Forensics. Supposons que nous ayons un algorithme de hachage qui est normalement utilisé pour chiffrer les données. L'algorithme de hachage unidirectionnel prend l'entrée sous la forme d'un flux de données binaires; cela peut être un mot de passe, un fichier, des données binaires ou des données numériques. L'algorithme de hachage produit alors unmessage digest (md) par rapport aux données reçues dans l'entrée.

Il est pratiquement impossible de créer une nouvelle entrée binaire qui générera un résumé de message donné. Même un seul bit des données d'entrée binaires, s'il est modifié, générera un message unique, différent du précédent.

Exemple

Jetez un œil à l'exemple de programme suivant qui respecte les conventions mentionnées ci-dessus.

import sys, string, md5   # necessary libraries
print "Please enter your full name"
line = sys.stdin.readline()
line = line.rstrip()
md5_object = md5.new()
md5_object.update(line)
print md5_object.hexdigest()   # Prints the output as per the hashing algorithm i.e. md5
exit

Le programme ci-dessus produit la sortie suivante.

Dans ce programme, le script Python accepte l'entrée (votre nom complet) et la convertit selon l'algorithme de hachage md5. Il crypte les données et sécurise les informations, si nécessaire. Conformément aux directives médico-légales, le nom des preuves ou toute autre preuve peut être sécurisé dans ce modèle.