<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Mind Unpacked &#187; Texto</title>
	<atom:link href="http://mindunpacked.com/tag/texto/feed/" rel="self" type="application/rss+xml" />
	<link>http://mindunpacked.com</link>
	<description>informatica.elettronica.chimica.new stuff</description>
	<lastBuildDate>Tue, 22 Dec 2009 17:35:13 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.8.6</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<image>
<link>http://mindunpacked.com</link>
<url>http://mindunpacked.com/wp-content/plugins/maxblogpress-favicon/icons/favicon-2.ico</url>
<title>Mind Unpacked</title>
</image>
		<item>
		<title>Algoritmi steganografici</title>
		<link>http://mindunpacked.com/2008/algoritmi-steganografici/</link>
		<comments>http://mindunpacked.com/2008/algoritmi-steganografici/#comments</comments>
		<pubDate>Mon, 24 Nov 2008 20:13:48 +0000</pubDate>
		<dc:creator>Marco</dc:creator>
				<category><![CDATA[Informatica]]></category>
		<category><![CDATA[permutazione]]></category>
		<category><![CDATA[S-Tools]]></category>
		<category><![CDATA[Steganografia]]></category>
		<category><![CDATA[Texto]]></category>

		<guid isPermaLink="false">http://mindunpacked.com/?p=67</guid>
		<description><![CDATA[Nel precedente articolo avevo parlato dell&#8217;algoritmo LSB, che è il capostipite degli algoritmi steganografici basati sulla sostituzione dei bit ridondanti. In questo articolo descriverò abbastanza dettagliatamente uno degli algoritmi steganografici più utilizzati, ovvero quello di Andrew Brown, fra l&#8217;altro implementato in un software chiamato S-Tools.
Prima di arrivare a ciò, vorrei descrivere come la steganografia possa [...]]]></description>
			<content:encoded><![CDATA[<p style="margin-bottom: 0cm; text-align: justify;">Nel <a href="http://mindunpacked.com/2008/introduzione-alla-steganografia-digitale/" target="_blank">precedente articolo</a> avevo parlato dell&#8217;algoritmo <strong>LSB</strong>, che è il capostipite degli algoritmi steganografici basati sulla sostituzione dei bit ridondanti. In questo articolo descriverò abbastanza dettagliatamente uno degli algoritmi steganografici più utilizzati, ovvero quello di <strong>Andrew Brown</strong>, fra l&#8217;altro implementato in un software chiamato S-Tools.<span id="more-67"></span><br />
Prima di arrivare a ciò, vorrei descrivere come la steganografia possa essere attaccata in modo da vanificarne gli scopi.</p>
<p style="margin-bottom: 0cm; text-align: justify;">In primis va chiarito che colui che tenta di violare una trasmissione di informazioni segreta viene chiamato steganalista, e la sua materia di studio è la steganalisi. Secondo il principio di Kerckhoff, valido egualmente anche in crittografia, la sicurezza della steganografia non fa imputata al fatto che il sistema steganografico sia sconosciuto allo steganalista, ma bensì che la sola chiave per accedere all&#8217;informazione non sia nota.<br />
Gli attacchi si possono raggruppare in due piccoli gruppi, quelli passivi e quelli attivi:</p>
<p style="margin-bottom: 0cm;" align="left"><span style="color: #ff6600;"><strong>Attacchi passivi:</strong></span></p>
<p style="text-align: justify;"><strong>stego-only-attack:</strong> lo stegoanalista intercetta il file steganografato ed è in grado di 	analizzarlo. E&#8217; il più importante tipo di attacco contro un sistema 	steganografico perché è quello che solitamente capita di 	utilizzare.<br />
<strong>stego-attack:</strong> il mittente ha usato lo stesso 	cover ripetutamente per nascondere i dati. Lo steganalista  possiede 	un file steganografato diverso ma originato dallo stesso cover. La 	differenza è che il messaggio celato all&#8217;interno sarà diverso, ma 	il compito di analisi sarà agevolato dal fatto che il file 	contenitore è il medesimo. Per rendere inutile questo tipo di 	attacco, come anche il precedente, basta avere l&#8217;accortezza di 	utilizzare sempre un file contenitore diverso, e soprattutto di 	scarsa notorietà.<br />
<strong>cover-stego-attack:</strong> In questo caso lo 	steganalista intercetta un file steganografato ma è a conoscenza di 	quale file “vergine” è stato utilizzato come cover. Basterà 	fare un confrontro tra i due per identificare i bit modificati, ed 	in caso di assenza di protezioni aggiuntive, risalire 	all&#8217;informazione.<br />
<strong>cover-emb-stego-attack:</strong> Bè, questo è il caso più favorevole, in cui lo stegoanalista possiede tutte le informazioni necessarie per estrapolare l&#8217;informazione. Tuttavia ad successiva sessione i dati potrebbero cambiare, e quindi costringere l&#8217;analista ad un stego-only-attack.</p>
<p><strong><span style="color: #008000;">Attacchi attivi:</span></strong></p>
<p><strong>manipulating the stego data:</strong> L&#8217;analista è in grado di frapporsi tra il mittente ed il destinatario, modificare il file steganografato eliminando l&#8217;informazione occultata e quindi inviare il file modificato al destinatario. Una sorta di attacco man in the middle.<strong><br />
manipulating the cover data:</strong> In questo caso si è in grado di manipolare il cover e intercettare il file steganografato. Si potrà risalire all&#8217;informazione nascosta attraverso passaggi più o meno compessi, magari sempre confrontando i due file cercando di scoprire i bit incriminati.<strong><br />
</strong><br />
<center><script type="text/javascript">
heyos_ad_user = 11334;
heyos_ad_type = "G";
heyos_ad_format = "1";
heyos_color_border = "23292b";
heyos_color_bg = "23292b";
heyos_color_link = "FFFFFF";
heyos_color_text = "21b8ca";
heyos_color_url = "21b8ca";
</script>
<script type="text/javascript" src="http://admaster.heyos.com/core/bnr.js"></script></center><br />
<span style="color: #999999;"><strong>L&#8217;algoritmo di A. Brown e S-Tools</strong></span></p>
<p style="margin-bottom: 0cm; text-align: justify;">Andrew Brown è l&#8217;artefice di uno degli algoritmi steganografici più utilizzati, che lui stesso ha implementato in un software chiamato S-Tools (scaricabile <a href="ftp://ftp.ntua.gr/pub/crypt/mirrors/idea.sec.dsi.unimi.it/code/s-tools4.zip">qui</a>).</p>
<p style="margin-bottom: 0cm; text-align: justify;">Si tratta di un algoritmo sostitutivo appartenente alla famiglia LSB. E&#8217; in grado di nascondere più messaggi nello stesso file, che in questo caso può essere un&#8217;immagine in formato gif o bitmap oppure un file sonoro con estensione wav. L&#8217;algoritmo procede attraverso tre fasi:</p>
<ul>
<li>
<p style="margin-bottom: 0cm;" align="justify">Compressione dei file da 	nascondere</p>
</li>
<li>
<p style="margin-bottom: 0cm;" align="justify">Cifratura dei dati 	mediante vari algoritmi (<strong>IDEA</strong>, <strong>DES</strong>, <strong>triplo DES</strong> e <strong>MDC</strong>) con password 	scelta dall&#8217;utente</p>
</li>
<li>
<p style="margin-bottom: 0cm;" align="justify">Generazione casuale di 	una serie di numeri che individuano i byte dove inserire il 	messaggio nascosto.</p>
</li>
</ul>
<p style="margin-bottom: 0cm; text-align: justify;">I primi due stadi sono dei preliminari e consentono di pretrattare i dati da nascondere secondo metodi distinti dalla steganografia; essi infatti vengono compressi in modo che occupino meno spazio e quindi criptati per avere un ulteriore grado di sicurezza. Il primo punto consente anche di avere un cover di dimensioni più piccole.</p>
<p style="margin-bottom: 0cm; text-align: justify;">Il terzo passo è il più importante da un punto di vista steganografico. Tale fase si occupa di iniettare il messaggio nascosto nei bit meno significativi di alcuni byte scelti casualmente, o meglio, a seconda della password inserita dall&#8217;utente. Considerando come file di copertura un wav, è noto come quest&#8217;ultimo si ottiene attraverso la simultanea applicazione dei due procedimenti di campionamento e <a href="http://it.wikipedia.org/wiki/Convertitore_analogico-digitale" target="_blank">quantizzazione</a>. Per esempio in Windows la quantizzazione è attuata con 8 o 16 bit, cosicché si può attingere rispettivamente a scale di 256 e <strong>65536</strong> valori. Cambiare il bit meno significativo di alcuni byte che operano la digitalizzazione, soprattutto nel secondo caso, produce modificazioni impercettibili anche alla più sensibile delle orecchie. Si stratta quindi di un processo del tutto analogo a quello adottato per le immagini. La particolarità dell&#8217;algoritmo di Brown sta nel fatto che i byte da modificare vengono scelti casualmente e dipendono sempre dalla password immessa dall&#8217;utente.</p>
<p style="margin-bottom: 0cm; text-align: justify;"><span style="color: #ffffff;">.</span></p>
<p style="margin-bottom: 0cm; text-align: justify;"><strong>Steganografia nei testi : Texto</strong></p>
<p style="margin-bottom: 0cm; text-align: justify;">Alcuni algoritmi sono in grado di nascondere dei messaggi all&#8217;interno di frasi opportunamente generate, ed è proprio questo il caso di Texto (sorgenti scaricabili <a href="http://www.nic.funet.fi/pub/crypt/steganography/texto.tar.gz">qui</a>), un programma sviluppato da Kevin Maher. Va detto subito che le frasi prodotte, pur avendo un significato grammaticale, assumono un indiscutibile valore semantico, apparendo il più delle volte come periodi demenziali. Ovviamente le frasi generate da Texto sono in inglese, essendo lo stesso autore di lingua anglosassone. Maher ha approntato un dizionario di parole divise in categorie che sono: oggetti, luoghi, verbi, avverbi e aggettivi. Inoltre ha generato delle frase che fanno da template da completare con le parole appena menzionate.<br />
Ogni categoria è costituita da 64 alternative, quindi si possono codificare fino a 6 bit, ed essendo gli spazi vuoti cinque (per ciascun template), il testo segreto per ogni frase può essere costituito da un massimo di 30 bit. Il tutto funziona se il mittente ed il destinatario utilizzano il medesimo dizionario, inoltre è facile intuire come l&#8217;esigua quantità di parole faciliti il compito dello steganalista. Tuttavia la sicurezza può essere aumentata ampliando il dizionario ed il numero di template, o magari cifrando il testo prima di steganografarlo.</p>
<p style="margin-bottom: 0cm;"><strong><br />
</strong></p>
<p><span style="color: #999999;"><strong> <span>Permutazioni pseudo-casuali</span></strong></span></p>
<p style="margin-bottom: 0cm; text-align: justify;">Gli algoritmi di <strong>permutazione pseudo-casuale</strong> appartengono sempre alla famiglia degli LSB e si basano ugualmente sulla modifica dei bit meno significativi. La differenza sta nella scelta dei byte da modificare, che non viene fatta come una sequenza seppure random come nel caso di <strong>S-Tools</strong>, ma con la permutazione di un sottoinsieme di tali byte. Una permutazione di n oggetti è la nuova disposizione degli stessi secondo un nuovo ordine. Il numero totale di permutazioni aumenta in modo esponenziale all&#8217;aumentare del numero di oggetti – byte in questo caso. In particolare le permutazioni di n byte sono n! (n <a href="http://it.wikipedia.org/wiki/Fattoriale" target="_blank">fattoriale</a>), quindi anche una piccola frase da 512 bit può essere permutata in talmente tanti modi che l&#8217;analizzarli tutti richiederebbe – anche ad un computer – un tempo non indifferente. Scegliendo come successione di byte da modificare una permutazione del sottoinsieme prescelto si perde la caratteristica di ordine, cosicché il messaggio occultato viene “sparpagliato” tra i byte del cover. La distribuzione non ordinata dei bit modificati tra i byte disponibili fornisce un ulteriore elemento di sicurezza contro eventuali attacchi.<br />
Questa è una tecnica utilizzata molto anche in crittografia, ma ovviamente le modalità di impiego sono ben diverse.</p>
<h3 style="margin-bottom: 0cm; text-align: justify;"><span style="color: #ffffff;">.</span></h3>
<p style="margin-bottom: 0cm; text-align: justify;"><strong>Conclusione</strong></p>
<p style="margin-bottom: 0cm; text-align: justify;">Bè, si fa per dire. D&#8217;altronde di cose da esporre sulla steganografia ce ne sarebbero ancora molte, ma diciamo che per il momento è tutto. Per il futuro ho intenzione di illustrarvi come funziona un&#8217;altra interessante applicazione pratica della steganografia, ovvero i file system steganografati. Continuate a seguirci <img src='http://mindunpacked.com/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
]]></content:encoded>
			<wfw:commentRss>http://mindunpacked.com/2008/algoritmi-steganografici/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>

<!-- www.000webhost.com Analytics Code -->
<script type="text/javascript" src="http://analytics.hosting24.com/count.php"></script>
<noscript><a href="http://www.hosting24.com/"><img src="http://analytics.hosting24.com/count.php" alt="web hosting" /></a></noscript>
<!-- End Of Analytics Code -->
