Python Forensics - Basic Forensic Application

Aby utworzyć aplikację zgodnie z wytycznymi kryminalistycznymi, ważne jest zrozumienie i przestrzeganie konwencji i wzorców nazewnictwa.

Konwencje nazewnictwa

Podczas opracowywania aplikacji śledczych w Pythonie zasady i konwencje, których należy przestrzegać, opisano w poniższej tabeli.

Stałe Wielkie litery z separacją podkreślenia WYSOKA TEMPERATURA
Nazwa zmiennej lokalnej Małe litery z wyboistymi literami (podkreślenia są opcjonalne) obecna temperatura
Nazwa zmiennej globalnej Prefiks gl małe litery z wyboistymi literami (podkreślenia są opcjonalne) gl_maximumRecordedTemperature
Nazwa funkcji Wielkie litery z wyboistymi literami (opcjonalnie podkreślenia) z aktywnym głosem ConvertFarenheitToCentigrade (...)
Nazwa obiektu Przedrostek ob_ małe litery z wyboistymi literami ob_myTempRecorder
Moduł Podkreślenie, a po nim małe litery z wyboistymi literami _tempRecorder
Nazwy klas Przedrostek class_, a następnie wyboiste czapki i pisz krótko class_TempSystem

Weźmy scenariusz, aby zrozumieć znaczenie konwencji nazewnictwa w informatyce obliczeniowej. Załóżmy, że mamy algorytm haszujący, który jest zwykle używany do szyfrowania danych. Algorytm jednokierunkowego mieszania przyjmuje dane wejściowe jako strumień danych binarnych; może to być hasło, plik, dane binarne lub dowolne dane cyfrowe. Następnie algorytm haszujący tworzy plikmessage digest (md) w odniesieniu do danych otrzymanych na wejściu.

Praktycznie niemożliwe jest utworzenie nowego wejścia binarnego, które wygeneruje dany skrót wiadomości. Nawet pojedynczy bit binarnych danych wejściowych, jeśli zostanie zmieniony, wygeneruje unikalny komunikat, inny niż poprzedni.

Przykład

Spójrz na następujący przykładowy program, który jest zgodny z wyżej wymienionymi konwencjami.

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

Powyższy program generuje następujące dane wyjściowe.

W tym programie skrypt Pythona akceptuje dane wejściowe (Twoje pełne imię i nazwisko) i konwertuje je zgodnie z algorytmem haszującym md5. Szyfruje dane i zabezpiecza informacje, jeśli jest to wymagane. Zgodnie z wytycznymi kryminalistycznymi, nazwy dowodów lub jakiekolwiek inne dowody mogą być zabezpieczone w tym wzorze.