28019 Letture

Copia autentica di una pagina web: data certa e copia conforme dei contenuti

Esiste uno strumento che permetta di scaricare una qualunque pagina web e consenta, allo stesso tempo, di apporvi la data certa e certificando il suo contenuto?
L'obiettivo è quello di dimostrare che un determinato contenuto era certamente pubblicato all'indirizzo web indicato nel momento in cui se ne è effettuato il download attraverso il proprio browser web.

Il valore legale della copia di una pagina web resta infatti, ancor'oggi, un problema perché può non essere facile attestarne l'autenticità ossia la corrispondenza con l'originale. Si pensi alla copia stampata del contenuto ospitato su un sito web: come è possibile affermare, senza ombra di dubbio, che i documenti siano conformi in tutto e per tutto alla versione pubblicata online? Il documento cartaceo, infatti, potrebbe essere stato modificato scaricando il codice sorgente (HTML) della pagina web, alterandolo con un qualsiasi editor di testo e poi inviato alla stampante.

I giudici della Corte di Cassazione hanno stabilito la mancanza di valore probatorio della copia cartacea di una pagina web se non effettuata con mezzi idonei a garantirne l'autenticità. Se non si adottano determinate precauzioni, insomma, la copia cartacea del contenuto di una pagina web potrebbe avere rilevanza scarsa o nulla.


Il pubblico ufficiale resta quindi la figura che sembra quella avente titolo a verificare l'autenticità di un documento e ad attestarne la stessa. Nell'era digitale, però, è quindi indispensabile recarsi da un notaio affinché scarichi la pagina web in questione, apponga l'orario di download, registri l'indirizzo IP che ha fornito al client la medesima pagina, certifichi il browser web utilizzato (nome e versione) ed, infine, attesti l'esatta corrispondenza della copia stampata con l'originale?

Nonostante tutto, viene riconosciuta la possibilità di mostrare il documento ad uno o più testimoni terzi che, ad esempio, in caso di giudizio, potranno esprimersi circa la totale conformità del documento stampato con l'originale. La testimonianza deve ovviamente corrispondere a verità: in caso contrario il testimone sarà soggetto alle sanzioni penali previste dalla legge.

Esistono però altri modi, meno “tradizionali”, per raggiungere il medesimo risultato?
Innanzi tutto va osservato come tutti i principali motori di ricerca memorizzino sui propri server una copia cache delle pagine indicizzate. Attingendo alla versione memorizzata in cache è quindi possibile stabilire come si presentava la pagina l'ultima volta che è stata visitata dal crawler del motore di ricerca (il software che analizza automaticamente i contenuti presenti sul web e ne permette la successiva indicizzazione).

Per accedere alla versione memorizzata in cache, sia su Google che, per esempio, su Bing, è sufficiente digitare nella casella di ricerca l'indirizzo d'interesse.

Cliccando sulla piccola freccia verde posta sulla destra, si dovrà quindi scegliere il comando Copia cache. Nella parte superiore della finestra, il motore di ricerca indicherà data ed ora in cui la pagina è stata recuperata. I contenuti esposti nella parte sottostante della finestra, mostrano la pagina così come si presentava alla data in cui essa è stata visitata dal motore di ricerca.
Il meccanismo è assolutamente indentico sia su Google che su Microsoft Bing.

Nel nostro articolo Quando è stata pubblicata una pagina web? Google aiuta a scoprirlo in pochi istanti abbiamo visto come sia possibile accertarsi della data di prima pubblicazione di una qualunque pagina.

Il problema di fondo è che il motore di ricerca non conserva, nella sua cache, più versioni della medesima pagina web o almeno non mostra queste informazioni agli utenti. Dal momento che il web e la struttura delle pagine che compongono un sito sono estremamente dinamiche, è facile ipotizzare che il contenuto presente nella cache del motore di ricerca possa cambiare rapidamente (soprattutto nel caso dei siti web più aggiornati e trafficati).

Un sito web che mantiene traccia del contenuto di una pagina è Archive.org, raggiungibile a questo indirizzo. Il servizio The Wayback Machine è una sorta di "macchina del tempo" che mostra come si presentava una pagina Internet nel corso del tempo (Wayback Machine: una macchina del tempo per il web). È ovvio che The Wayback Machine non può conservare una copia di tutte le pagine web ed è quindi probabile non trovare ciò che si sta cercando.

Uno strumento secondo noi davvero molto interessante è invece Hashbot (hashbot.com), interamente realizzato, tra l'altro, da due sviluppatori italiani: Gianni Amato e Davide Balgieri.
La piattaforma Hashbot consente di validare in modo scientifico il contenuto di qualsiasi pagina web: ciò significa che il servizio è capace di produrre un file utilizzabile per dimostrare, in maniera inoppugnabile, che un determinato contenuto fosse pubblicato online, ad un dato indirizzo e ad una certa data.
Hashbot consente di "congelare" le informazioni pubblicate in una pagina web attestando che le stesse comparivano in Rete in un determinato istante.

Il servizio di Amato-Balgieri si base su un'idea semplice ma allo stesso tempo molto efficace. Per "congelare" una pagina web è sufficiente specificarne l'indirizzo completo nell'apposita casella URL quindi specificare la stringa con la quale ci si desidera presentare al server (user agent):

Scegliendo, ad esempio, Firefox, si farà in modo Hashbot si colleghi alla pagina web specificata così come se la connessione fosse richiesta dal browser di Mozilla. Ma è ovviamente possibile optare per prodotti quali Internet Explorer, Chrome od Opera.


Dopo aver fatto clic sul pulsante Submit, Hashbot provvederà a collegarsi con il server remoto e a scaricare la pagina web indicata calcolandone quindi gli hash MD5 e SHA1.

Funzioni hash: che cosa sono

MD5 e SHA1 sono algoritmi di hash, funzioni che, a partire da un testo di lunghezza arbitraria, generano una stringa di lunghezza fissa. La trasformazione operata funziona in un solo senso: non è quindi possibile, dalla stringa generata, risalire al testo iniziale. L'hash rappresenta una sorta di "impronta digitale" ("fingerprint") del contenuto di un file ed è solitamente usata per attestare che lo stesso file non sia stato alterato da virus, malware oppure per l'intervento di un malintenzionato. All'"impronta digitale" viene attribuito anche il nome di message digest, checksum o valore di hash.

Esistono molteplici algoritmi di hashing, tutti caratterizzati da alcune caratteristiche comuni: viene prodotto un output (digest) a partire da un flusso di bit di qualsivoglia dimensione, tale stringa è univoca ed è quindi "identificatore", ad esempio, di un medesimo documento ed infine l'algoritmo ha la proprietà di non essere invertibile ossia non è possibile ricostruire il messaggio originario a partire dall'hash (si tratta di una "funzione unidirezionale").

Per maggiori informazioni, suggeriamo la lettura del nostro articolo MultiHasher: verificare l'integrità di qualunque file in Windows.


Oltre al calcolo automatico delle firme MD5 e SHA1 per il contenuto della pagina web specificata, Hashbot restituisce anche un codice alfanumerico (code) che identifica in modo univoco il processo di elaborazione ed acquisizione della pagina specificata.
Al termine della procedura, nel riquadro Status in calce alla pagina, Hashbot mostrerà il pulsante Download sul quale l'utente dovrà necessariamente cliccare entro 2 minuti:

Dopo 120 secondi, infatti, il file compresso generato da Hashbot sarà automaticamente cancellato dal server.
Tale archivio compresso contiene, a sua volta, tre file: il primo ospita il contenuto HTML della pagina web richiesta, gli altri due sono due file di testo in cui sono annotate, rispettivamente, le firme MD5/SHA1 del contenuto e delle intestazioni nonché gli headers della pagina.

Le firme MD5 e SHA1 attestano in modo inequivocabile che il contenuto della pagina web corrispondeva a quello del file HTML allegato. Inoltre, tornando in qualsiasi momento sul sito di Hashbot e digitando, nel riquadro Validate, il codice e la firma MD5 o SHA1, verranno immediatamente visualizzate le informazioni sulla data e sull'ora del contenuto recuperato dal server remoto. Ovviamente chiunque avrà la possibilità di verificare le firme MD5 e SHA1 del file HTML e del TXT (intestazioni) contenuti nell'archivio Zip in modo da compararle con quelle restituite da Hashbot. Allo scopo è possibile utilizzare lo stesso MultiHasher presentato nell'articolo MultiHasher: verificare l'integrità di qualunque file in Windows.
Altrettanto ovvio è che se si alterasse il contenuto del file HTML presente nell'archivio generato da Hashbot, le firme MD5/SHA1 non corrisponderebbero più a quelle originali e la modifica verrebbe così immediatamente evidenziata.


C'è infine un aspetto non trascurabile che va sicuramente evidenziato: Hashbot non scarica iterativamente l'intero contenuto della pagina web specificata (sia essa una pagina statica oppure dinamica: PHP, ASP, ASPX,...). O meglio, il servizio provvede a scaricare la pagina indicata senza ad esempio effettuare il download di tutte le risorse ad essa correlate. Se la pagina web contiene riferimenti ad immagini o ad altre sottopagine, questi non saranno automaticamente scaricati.
Allorquando fosse importante attestare la presenza di una certa immagine, bisognerà ripetere la procedura di elaborazione con Hashbot indicando questa volta, nella casella URL, l'indirizzo dell'immagine remota.

Un approccio simile viene utilizzato da parte del servizio FreezePage, raggiungibile cliccando qui.
Rispetto ad Hashbot, FreezePage non espone direttamente le firme MD5 e SHA1 ma mostra un link che può essere riutilizzato, in qualunque momento, per richiamare la pagina web, così come si presentava al momento del download.

Prima di procedere con il download della pagina, è possibile decidere di recuperare tutti gli elementi della pagina, tutti gli oggetti (eccezion fatta per gli script) oppure solo il testo.
Cliccando sul link More info, si possono ottenere maggiori informazioni sul contenuto della pagina, sugli elementi scaricati, sul codice HTML sorgente, sulle varie richieste HTTP istanziate, sulle intestazioni.

Entrambi gli strumenti possono essere utilizzate per suffragare le proprie tesi. Hashbot, comunque, nonostante solo un provvedimento legislativo possa dare al sistema valenza legale, è pensato per fornire una prova scientifica della tesi. "(...) Potete usare Hashbot come strumento per provare un dato di fatto in giudizio", scrive l'ideatore Gianni Amato, "ma dipenderà dal giudice se accettarlo o meno come prova".


  1. Avatar
    bissio
    27/04/2013 10:44:31
    peccato che non serva per le pagine protette ovvero per autenticare quelle di una banca visualizzate nell'home banking. Fabrizio
Copia autentica di una pagina web: data certa e copia conforme dei contenuti - IlSoftware.it