Mat2

Mat2: cos’e?

Mat2 è un potente software sviluppato in Python da Julien Voisin (che ringraziamo per la sua disponibilità nell’aver risposto alla nostra mail) che consente di eliminare i metadati da numerosi formati di file.

Il progetto Mat2 è anche presente sul repository di Python - The Python Package Index (PyPI) is a repository of software for the Python programming language - ed è installabile mediante il comando pip install mat2.

Mat2 si può installare su MacOS dal terminale mediante Homebrew (abbiamo già descritto brevemente homebrew in un nostro precedente articolo) con il comando

brew install exiftool cairo pygobject3 poppler gdk-pixbuf librsvg ffmpeg

Per coloro che non lo sapessero, Homebrew è un gestore di pacchetti per sistemi MacOS.

Sulla pagina GitLab di Mat2 ci sono anche le indicazioni per l’installazione della Desktop GUI per GNU/Linux.

Mat2 funziona con il tool ExifTool di Phil Harvey che è una libreria Perl indipendente dalla piattaforma e in più di un’applicazione a riga di comando per leggere, scrivere e modificare meta informazioni di numerosi formati di file. ExifTool è disponibile per Windows, MacOS e piattaforme Unix.

I metadati

Tornando a Mat2, si è detto che il tool legge i metadati presenti nei singoli file che l’utente può decidere di cancellare.

Cosa sono i metadati?

Non ci risulta una definizione incontroversa di metadato.

L’etimologia del termine “metadato” - come in molti altri casi (es.: digitale, dal latino “digit”, dito, per indicare la possibilità di avere un riferimento numerico con riferimento alla modalità di contare con le dita) - deriva parte dal greco e parte dal latino. Quindi, il termine “metadato” è composto da “meta” (dal greco, “oltre”) e dalla parola “dato” che deriva dal latino “datum” (al plurale “data”). In sintesi, si fa riferimento a informazioni che descrivono un insieme di dati, spesso noti come “dati sui dati”.

Probabilmente abbiamo sentito frequentemente il termine “matadato” o “metadati” in informatica e con riferimento alle informazioni aggiuntive contenute in un file. Infatti, i metadati sono informazioni aggiuntive o descrittive di uno o più dati. Più correttamente, si tratta di informazioni che si riferiscono ad una risorsa, sia essa digitale, fisica o astratta.

In informatica, i file solitamente contengono metadati che possono essere, ad esempio, le informazioni:

  • del software che li ha generati;
  • dell’autore;
  • della data;
  • dell’ora, ecc.

I file che contengono immagini derivanti da foto (es.: jpg, jpeg, ecc.) scattate con una macchina fotografica digitale, con lo smartphone, con un tablet o altro device, contengono metadati come, ad esempio, il giorno, l’ora, il luogo in cui è stata scattata la foto (se attiva la geolocalizzazione con GPS), ecc.

I metadati possono essere diversi e a volte raggruppati per categorie. Menzioniamo una suddivisione nelle tre classi principali e precisamente:

  1. Metadati descrittivi;
  2. Metadati strutturali;
  3. Metadati amministrativi.

Riguardo al documento informatico è appena il caso di menzionare il documento dell’AgID dal titolo “I metadati che costituisce l’"Allegato 5 al documento “Linee Guida sulla formazione, gestione e conservazione dei documenti informatici”.

In questo post facciamo riferimento unicamente all’informatica e ai metadati contenuti nei file.

Metadati e privacy

Dopo questa breve descrizione dei metadati, è abbastanza chiaro che se scambiamo file con altri dobbiamo anche preoccuparci delle relative informazioni aggiuntive (metadati) che spesso possono rivelare informazioni che non vogliamo far conoscere.

Ecco che la privacy è determinante e decisiva anche riguardo ai metadati.

I metadati possono contenere dati tali da rendere identificabile una persona fisica oppure rivelare alle persone con cui si condividono file informazioni (spesso non consultabili dall’utente che ne ignora l’esistenza) come - ad esempio - quelle relative all’autore della creazione di un file, della data, del luogo, ecc.

A volte si creano situazioni imbarazzanti come quella che descriviamodi seguito.

Alice, lavorando ad un progetto riservato, deve consegnare il relativo report a Charlie che glielo ha commissionato.

Pensando che possa essere utile un supporto per la redazione del contenuto, Alice si fa aiutare da Bob il quale completa le attività e salva il file nella versione finale.

Alice, ricevuto da Bob il file dallo stesso elaborato e salvato nella versione finale, lo consegna a Charlie.

Tuttavia, Charlie si accorge che il file consegnato da Alice contiene metadati che rivelano le informazioni di Bob il quale era soggetto estraneo a Charlie e al progetto.

Charlie chiede chiarimenti su Bob ad Alice la quale con il massimo disagio, di fronte all’evidenza, non può fare altro che confessare tutto.

Beh, oltre ad essere una situazione imbarazzante, dal caso descritto emerge indubbiamente quanto sia facile divulgare informazioni anche personali senza che l’interessato ne sia a conoscenza oppure senza alcun intervento volto a eliminare i metadati.

Molto spesso i metadati sono aggiunti dalle applicazioni che utilizziamo e ciò dovrebbe indurci a prestare massima attenzione alle risorse software che utilizziamo. Sono disponibili applicazioni - ad esempio per la scrittura - che consentono di lavorare con maggiore tranquillità perché non salvano informazioni aggiuntive (metadati) all’interno del file.

Scegliere soluzioni semplici e minimaliste a volte non è sbagliato, anche se dipende ovviamente dalle condizioni e dal contesto.

A nostro modesto parere, per chi deve scrivere (ma faremo un post ad hoc sul tema) è preferibile utilizzare applicazioni c.d. “distraction-free” che consentono di scrivere senza distrarsi in testo semplice con markdown e poi salvare il relativo contenuto possibilmente senza metadati all’interno del file. La nostra scelta è in questo senso e ci sono diversi editor che consentono di scrivere in markdown e il nostro feedback è senza dubbio molto positivo anche riguardo alla produttività.

La protezione dei dati personali e la privacy sono fondamentali nella nostra vita.

Ancora una volta ribadiamo il principio secondo il quale l’utente deve avere il pieno controllo dei propri dati personali, controllo che può essere esercitato mediante la cancellazione dei metadati e, inoltre, lo sviluppo di applicazioni nel rispetto del principi “Protezione dei dati fin dalla progettazione e protezione per impostazione predefinita” descritti nell’art. 25 del Regolamento UE 2016/679 (GDPR) oppure “Privacy by Design”.

Quindi, se teniamo alla nostra privacy, prestiamo attenzione ai metadati eventualmente contenuti nei file che utilizziamo e che possono essere condivisi con altri.
Pensare alla propria privacy e non trascurarla significa prendersi cura di se stessi.

I comandi di Mat2

Mat2 consente, quindi, di rimuovere definitivamente i metadati dai file e il suo utilizzo è abbastanza semplice.

Mat2 va utilizzato da terminale e quindi, una volta installato come spiegato sopra, dal Mac lanciamo l’app Terminale e poi digitiamo:

mat2 -h
oppure
mat2 --help
  • per sapere quali sono i formati di file che Mat2 gestisce, digitiamo il comando (il parametro -l sta per list, elenco):
mat2 -l
  • per vedere se un certo file contiene metadati, digitiamo il seguente comando (il parametro -s sta per show, mostra):
mat2 -s nomefile
  • per eliminare i metadati di un file (es., nel caso precedente abbiamo verificato l’esistenza di metadati), digitiamo (il parametro -V - la V è maiuscola perché quella minuscola fornisce la versione - sta per verbose, cioè ci permette di avere informazioni su ciò che il tool esegue):
mat2 -V nomefile

Nell’ipotesi della cancellazione dei metadati, va precisato che Mat2 non cancella il file sul quale interveniamo perché lascia così com’è il file originale ma crea un altro file dal nome nomefile.cleaned.estensione.

Mat2 in azione

Per spiegare meglio come Mat2 agisce sui file, abbiamo preparato tre distinti video di pochi secondi.

Abbiamo effettuato un test sui seguenti formati di file:

  • jpg
  • docx
  • pdf

Nei singoli video, abbiamo digitato il comando ls -la che restituisce l’elenco dettagliato dei file della cartella. Ciò al fine di dimostrare come Mat2, per la rimozione dei metadati, crea un nuovo file inserendo cleaned tra il nomefile e la sua estensione (nel nostro caso, ad esempio, il file mat2.docx è diventato mat2.cleaned.docx).

Nel primo esempio abbiamo utilizzato Mat2 con il file giustizia.jpg (estensione .jpg):

Nel secondo esempio abbiamo utilizzato Mat2 con il file mat2.docx (estensione .docx - file di Word):

Nel terzo esempio abbiamo utilizzato Mat2 con il file mat2.pdf (estensione .pdf - file creato da Word):

Mat2-web

Esiste anche una versione web di Mat2 - Mat2 web - che, volendo, si può installare sul proprio server.

Mat2-web

Si tratta di una risorsa molto utile che evita sostanzialmente di digitare i comandi su indicati e consente di utilizzare il Mat2 direttamente dal browser.


Mat2-web
Mat2-web - immagine dalla pagina GitLab dello sviluppatore

Per una dimostrazione di come si presenta il servizio Mat2-web, rimandiamo alla pagina dell’istanza “Demo” creata ad hoc dallo sviluppatore.

Tuttavia, per ragioni di sicurezza abbiamo preferito non installare questo servizio al fine di evitare possibili attacchi, così come anche dichiarato dallo sviluppatore.



Stay tuned!