Dal momento stesso in cui la scrittura fu inventata, qualcuno iniziò a pensare a tutti i possibili modi per nascondere informazioni all’interno della codifica della scrittura stessa.
In questa mini serie di post è mia intenzione riassumere alcuni aspetti che riguardano il mondo della steganografia, ovvero l’arte di nascondere un messaggio segreto all’interno di una comunicazione che sembra trasportare un altro messaggio o informazione.
In questo senso la steganografia può essere considerata come sorella della crittografia, nel senso che la prima cerca di nascondere l’esistenza dell’informazione, mentre la seconda ha in qualche modo l’intento di nasconderne il contenuto. Per fare un esempio banale scrivere una lettera con l’inchiostro simpatico è un tentativo steganografico, scriverla con caratteri apparentemente incomprensibili è un tentativo crittografico.
Ma come si lega il concetto della steganografia a quello dell’informatica? Molti infatti conoscono, almeno di nome, le principali tecniche di crittografia, ma non hanno mai sentito parlare di quelle steganografiche.
Tra le tecniche più diffuse la steganografia sostitutiva trova sicuramente un posto di rilievo.
Il concetto di base è che ogni tipo di comunicazione è accompagnata da un rumore spesso trascurabile che non ne altera la percezione del contenuto. Pertanto è possibile sfruttare questa caratteristica per sostituire quel rumore con un messaggio segreto, opportunamente convertito per assomigliare il più possibile al rumore originale.
Di fatto ogni tipo di comunicazione possiede (o può possedere) un rumore caratteristico, sia essa una telefonata, una trasmissione radio, un sequenza di informazioni scambiate in rete, ecc.
In informatica l’applicazione della steganografia passa spesso attraverso file contenenti immagini e suoni, ovvero i risultati di una conversione analogica/digitale che per loro stessa natura trasportano con se una certa quantità di rumore.
Tuttavia, in generale, è possibile introdurre un certo rumore all’interno di qualsiasi file digitale, non necessariamente importato mediante una codifica analogia/digitale come può essere un processo di scannerizzazione, oppure un’importazione audio da una periferica di acquisizione sonora.
Una volta che il rumore è stato inserito (vedremo nelle prossime puntate come farlo) il file risultante sarà in tutto e per tutto analogo a quello originale, rendendo impossibile l’individuazione del messaggio nascosto, almeno a quegli utenti che non conoscono le tecniche steganografiche o non si aspettano di individuare un contenuto diverso da quello che sperimentano con la vista o l’udito.
Nella prossima parte vedremo in che modo utilizzare i prodotti disponibili in rete per iniettare contenuto stenografico all’interno di file immagini.