INFORMATICA - DIGITAL FORENSICS
Logica delle prove digitali

"le prove digitali sono come le altre prove scientifiche?"

Ottobre 2016

Le prove digitali si comportano in maniera sbilanciata rispetto ai processi logici di dimostrazione dei fatti. Questo parte dal nesso di causalità unidirezionale introdotto nella pagina sulla Fisica delle prove digitali sempre di questo sito. Se infatti DE(t) sono le prove digitali (una stringa di bit) al tempo discreto t, esse possono essere considerate senza problemi come il risultato finale dell'elaborazione di un grande e complesso sistema digitale all'atto del repertamento (sempre al tempo t, quando cioè avviene la cristallizzazione della prova). Dato che si parla sempre di sistemi digitali deterministici e discretizzati nel tempo e nelle informazioni si può sicuramente asserire che:

DE(t) può provenire da n stati immediatamente precedenti (rispetto al clock): S1(t-1),S2(t-1),...,Sn(t-1).

Allo stesso modo, ognuno degli stati al tempo t-1, ad esempio Sj(t-1) può essere pensato determinato da m altri stati al tempo ancora precedente (sempre rispetto al clock) e quindi Sj,1(t-2),Sj,2(t-2),...,Sj,m(t-2).

In definitiva si determina un albero la cui sommità è unica ed è DE(t), la prova digitale, ma il cui sviluppo verso il basso è esplosivo (sebbene ancora deterministico). In questo senso, passare da un qualsiasi stato Si,j,...(t-k) nell'albero e tornare alla sommità DE(t) è semplice e poco costoso computazionalmente. Il contrario, partire da DE(t) e verificare tutto l'albero è altamente oneroso computazionalmente al procedere verso l'indietro che ci interessa: t-1, t-2, t-3, ecc.

Dimostrabilità negativa: dato un fatto FACT le prove digitali DE possono

(a) dimostrare che è vero (DE prove TRUE(FACT)),

(b) non dimostrare che è vero (DE cannot prove TRUE(FACT)),

(c) dimostrare che è falso (DE prove FALSE(FACT)),

(d) non dimostrare che è falso (DE cannot prove FALSE(FACT)).

Nel caso (a) di dimostrabilità diretta raramente ci possono essere dubbi, le prove digitali tendono ad asserire una cosa vera con molta certezza, spesso al 100% di probabilità. Questo accade perchè per dimostrare che qualcosa è vero si ragiona solo su DE(t) e non si viaggia nel tempo del sistema.

DE(t) prove TRUE(FACT)

Nei casi (b) e (d) di dimostrazione scorrelata, le prove digitali sembrano ininfluenti rispetto a quello che dovrebbero dimostrare ma non si può mai essere certi di questo perchè può capitare che il nesso sfugga ma può anche essere che il nesso non ci sia affatto; la probabilità del risultato va valutata contestualmente al caso. Va ricordato poi che anche in questo caso ci si limita a DE(t) ma per ragioni pratiche: in teoria per "dimostrare" che DE(t) "non dimostra" qualcosa di FACT si dovrebbero investigare anche tutti gli stati precedenti S per qualsiasi k (tutti gli istanti precedenti possibili) e questo è non realizzabile nella maggioranza dei casi.

DE(t) cannot prove TRUE(FACT) and
for every k=1,2,... Si,j,...(t-k) cannot prove TRUE(FACT)

DE(t) cannot prove FALSE(FACT) and
for every k=1,2,... Si,j,...(t-k) cannot prove FALSE(FACT)

Nel caso (c) di dimostrazione in negativo si ottiene un problema logico di risoluzione difficile e talvolta impossibile; le prove digitali, come visto prima, hanno un nesso di causalità che viaggia solo in avanti, in questo caso si vuole andare all'indietro e quindi si trovano altissimi numeri di stati S possibili che potrebbero aver determinato lo stato finale osservato DE(t), bisognerebbe esplorarli tutti per verificare che FACT sia falso. Come prima cosa quindi va stabilito il tempo all'indietro ove limitare la ricerca, ad esempio k passi (t-k), poi bisogna verificare quanti sono gli stati Si,j,...(t-k) dell'albero al tempo t-k e se sono raggiungibili tutti in un tempo accettabile nella trattazione dell'analisi forense.

DE(t) prove FALSE(FACT) from time t-k to time t iff
DE(t) prove FALSE(FACT) and
for every l=1,2,...,k Si,j,...(t-l) prove FALSE(FACT)


ESEMPIO: ricerca di un file illecito

Caso (a): il file viene trovato in DE: 100% di probabilità del risultato.

Caso (b): dimostrare che non è possibile dimostrare che il file sia stato nel sistema - possibile ad esempio se DE è un contenuto cripto non apribile - molto difficile altrimenti.

Caso (c): dimostrare che il file non è MAI stato nel sistema indagato - impossibile; dimostrare che il file non era nel sistema indagato al tempo t del repertamento - possibile ma con risultato non al 100% di attendibilità; dimostrare che il file non era nel sistema indagato da t a t-k (periodo temporale) - possibile ma con risultato a scarsissima attendibilità.

Caso (d): dimostrare che non è possibile dimostrare che il file NON sia stato nel sistema - possibile ad esempio se si trova un pezzo del file cercato magari nell'area non allocata - molto difficile altrimenti.