Il termine steganografia si riferisce ad una tecnica elusiva della comunicazione che ha origini molto antiche. Si tratta dell'insieme delle tecniche che consente a due o più persone di comunicare tra loro in modo tale da nascondere l'esistenza della comunicazione agli occhi di un eventuale osservatore. La steganografia dunque è l’arte di nascondere un messaggio all’interno di un contenitore o vettore, in apparenza insospettabile, così da rendere non tanto la decodifica del contenuto difficoltosa come avviene per la crittografia, quanto pressoché impossibile la sua stessa identificazione.
La steganografia sostitutiva è senz'altro la tecnica
steganografica moderna più diffusa, tanto che spesso quando si parla di
steganografia ci si riferisce implicitamente a quella di questo tipo. Alla base
di questa tecnica c'è un'osservazione: la maggior parte dei canali di
comunicazione (linee telefoniche, trasmissioni radio, etc.) trasmettono segnali
che sono sempre accompagnati da qualche tipo di rumore o disturbo. In genere è
definito rumore quel fruscio di sottofondo che sentiamo in audio, oppure il
classico effetto neve di alcune immagini. Questo rumore può essere sostituito
da un segnale, il messaggio segreto, che è stato trasformato in modo tale che,
a meno di conoscere una chiave segreta, è indistinguibile dal rumore vero e
proprio, e quindi può essere trasmesso senza destare sospetti.
Il formato immagine GIF è uno dei tanti contenitori che ben si presta per inserire al suo interno un altro file o messaggio segreto. Il GIF fa uso di una palette di colori, vale a dire un sottoinsieme di colori prestabilito. I pixel che formano l’immagine possono assumere uno dei colori della palette. Questo si traduce in una grossa economia di rappresentazione del file, visto che ogni pixel può essere rappresentato semplicemente da un puntatore ad un colore della palette.
Sino a poco tempo fa si pensava fosse alquanto improbabile fare della steganografia utilizzando come contenitori i file immagine GIF. Questo non solo per le evidenti difficoltà dovute al fatto che questo tipo di file è compresso in maniera pesante col metodo LZW e, soprattutto, per le ridotte dimensioni del file, ma anche per la sua particolare struttura interna. Le tecnologie moderne, invece, hanno fatto sì che venissero implementati dei software “ad hoc” capaci di steganografare dei file all’interno di immagini in formato GIF.
Per meglio comprendere, però, come sia possibile utilizzare
un file GIF come contenitore, si rende necessario spendere due parole per
spiegare com’è strutturato al suo interno un file GIF. Lo faremo banalizzando
un po’ la spiegazione dei contenuti, rendendoli molto chiari e fruibili da
chiunque, anche dai neofiti della materia. Ciò ci aiuterà a capire meglio come
opera un algoritmo steganografico all’interno di un file GIF.
Sappiamo che un file GIF è un tipo di immagine che occupa
poco spazio sul disco in quanto è a bassa risoluzione grafica, dato l’utilizzo
di massimo 256 colori.
Se prendiamo un GIF, quello che vediamo noi è solo la crosta
superficiale dell’immagine, mentre sotto tale crosta c’è una palette di 256
colori. Immaginiamo ora la rappresentazione di una fotografia digitale di un
prato verde che contrasta un cielo azzurro. Sotto l’immagine di questo
paesaggio che noi vediamo c’è una griglia con 256 caselle, contenenti
altrettanti colori, che noi, però, non vediamo. Affinché sia possibile
visualizzare nell’immagine il colore verde del prato, in corrispondenza della
casella contenente il colore verde c’è posizionato un puntatore che indica che
in una data posizione della crosta superficiale che noi vediamo ci sono dei
pixel colorati di verde che corrispondono al prato. Lo stesso dicasi per il
cielo: in corrispondenza del cielo azzurro rappresentato nell’immagine, nella
parte sottostante che noi non vediamo, ma che ospita la palette dei colori, un
altro puntatore è posizionato sulla casella del colore azzurro, il quale ci
consente di visualizzare il cielo dell’immagine in questione.
In definitiva, tutti i colori rappresentati nell’immagine
che noi vediamo, derivano dal fatto che all’interno dell’immagine stessa ci
sono altrettanti puntatori posizionati su tutti i colori utilizzati in
quell’immagine.
Come operano allora i
software steganografici nei file GIF?
Dal momento che non tutti i 256 colori a disposizione
vengono effettivamente utilizzati, anzi, in genere non si va oltre la metà, e
tenendo in considerazione che la palette dei colori è comunque formata da 256
caselle a prescindere dai colori utilizzati, i software steganografici che si
occupano di immagini GIF operano in una maniera semplicissima e, per certi
versi, disarmante. Tenendo come esempio ancora l’immagine del paesaggio col
prato verde ed il cielo azzurro, l’algoritmo steganografico opera nel seguente
modo.
Prende possesso di una casella contenente un colore
qualsiasi che non è stato utilizzato nell’immagine e vi inserisce al suo
interno un colore verde identico a quello rappresentato dal prato, iniettando
però al suo interno un “pezzettino” del file segreto che si vuole
steganografare. Prende poi il puntatore che era posizionato sul colore verde
originale e lo sposta sul nuovo colore verde nel cui interno è stato nascosto
qualche bit del file segreto. Continua poi ad operare in questo modo con
l’azzurro del cielo e con tutti gli altri colori utilizzati per rappresentare
l’immagine in questione.
Il risultato è sorprendente: messe a confronto, l’immagine
originale e quella manipolata dall’algoritmo steganografico, sono perfettamente
identiche, anche se sottoposte a zoom o screening approfondito. In compenso
però, nella nuova immagine si è riusciti ad iniettare un altro file,
naturalmente di dimensioni ridotte per rispettare il rapporto di 1 a 8 oppure 1
a 10 tra file contenitore e messaggio inserito, per salvaguardare l’integrità
dell’immagine stessa.
Come è facile intuire, partendo dai concetti di base della
steganografia, è facile estendere queste tecniche ai più svariati formati.
Oltre a numerosi applicativi per i formati più comuni BMP, WAV, JPEG, MP3, etc,
in Rete è possibile trovare tool steganografici per i formati più vari. In
particolare esistono programmi capaci di utilizzare addirittura file PDF e
HTML.
Se volete approfondire l’argomento della steganografia, vi
consiglio un libro chiaro e completo del
percorso storico e delle nuove tecniche steganografiche spiegate con
vari esempi applicativi e con l’utilizzo di software steganografici.
Il suo titolo è: “La
steganografia da Erodoto a Bin Laden: Viaggio attraverso le tecniche elusive
della comunicazione”, e lo trovate su https://www.amazon.it/dp/1520262221
Questa immagine riepilogativa illustra in modo semplice il
funzionamento della steganografia sostitutiva applicata ai file immagine GIF.

Nessun commento:
Posta un commento