La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Sicurezza dei Sistemi Informatici Crittografia - Steganografia

Presentazioni simili


Presentazione sul tema: "Sicurezza dei Sistemi Informatici Crittografia - Steganografia"— Transcript della presentazione:

1 Sicurezza dei Sistemi Informatici Crittografia - Steganografia
Si discutera la tesi di laurea in controllo dei processi dal titolo “Effetti delle connessioni di lungo raggio nei modelli di anico basati su automi cellulari” con relatori l’ing A Rizzo e l’ing C Meloni Docente: Prof. Giuseppe Mastronardi

2 Sommario Introduzione La Crittografia La Steganografia
Algoritmi per l’implementazione del software Descrizione e visualizzazione delle simulazioni Conclusioni e sviluppi futuri Inizialmente verranno introdotti i modelli di moto collettivo, i modelli di panico basati su automi cellulari, le diverse tipologie di connessione tra gli agenti presenti e l’algoritmo utilizzato per l’implementazione del modello Infine verranno descritti i risultati sperimentali ottenuti, le conclusioni a cui siamo giunti ed i possibili sviluppi futuri del lavoro svolto nella tesi

3 Obiettivo Introduzione ed realizzazione di tecniche di stegano-crittografia: Simulazione dei processi crittografici sincronizzati alla steganografia delle immagini Valutazione dei risultati sperimentali

4 Introduzione Privacy e sicurezza sono termini sempre più ricorrenti nel nostro vocabolario di uso comune considerando anche che grandi aziende multinazionali vi investono miliardi di dollari. I militari hanno sicuramente giocato il ruolo più importante in quanto la crittografia (dal greco kryptos, nascosto, e graphein, scrivere) applicata a scopi bellici ha rappresentato per molti secoli un'arma determinante nelle mani di coloro che sapevano come usarla. Introduzione ai modelli di moto collettivo Oggi numerosi concetti della fisica vengono utilizzati per studiare in modo approfondito i sistemi complessi presenti in natura. In quest’area di studi oltre alla chimica, alla biologia ed alle scienze sociali, si sono aggiunte anche le nuove tecnologie come l’informatica, per sviluppare una ricerca interdisciplinare. Al centro dell’attenzione globale vi sono fenomeni come il flusso di mezzi, le proteine, la formazione e la crescita di colonie di batteri, l’evoluzione biologica della specie e le transazioni in mercati finanziari. Questi sistemi sono interessanti per l’ingegneria, mediante la quale il potenziale uso dei risultati ottenuti può essere applicato concretamente contribuendo a migliorare la vita di ciascuno di noi. 1.1 Modelli di Vicsek Nel modello studiato da Vicsek alcune particelle in movimento guidate ad una certa velocità, assumono la direzione media del moto delle particelle poste nelle loro vicinanze. Il modello proposto è notevolmente interessante perché può essere applicato a numerosi sistemi biologici che dove le entita hanno la tendenza a muoversi nello stesso modo dei loro simili che si trovano nelle immediate vicinanze. Oltre a stormi di uccelli, branchi di pesci, il nostro modello può essere applicato anche a fenomeni che avvengono durante la crescita di colonie di batteri. 1.3 Processi di evacuazione durante situazioni di panico Le situazioni di panico sono molto presenti nella realtà odierna. Fenomeni quali il terrorismo, guerre civili e militari, cataclismi naturali, incendi di foreste e di abitazioni ecc non fanno altro che alimentarle continuamente. Gran parte delle vittime è stata causata dal panico e dalle sue conseguenze immediate. Negli ultimi 100 anni ci sono stati più di 4000 morti in situazioni di panico. Nonostante l’incremento delle misure di sicurezza standard, la situazione generale non è migliorata a causa di eventi sempre più frequenti che coinvolgono grandi folle. Si tratta di partite di calcio, concerti, olimpiadi, manifestazioni o altro e alcuni tra gli Stati più colpiti sono il Sud Africa, gli Stati Uniti, la Russia, l’Egitto e la Palestina. In molte circostanze le vittime sono state causate dallo stesso comportamento delle persone. Spesso infatti, durante la fuga alcune di esse cadevano e non potendo rialzarsi finivano schiacciate da altre producendo così pile di persone cadute.

5 Da recenti indagini è emerso che si chiama "steganografia" la scienza più amata dai Bin Laden di tutto il mondo e, come già indica l'etimologia (dal greco "stèganos", nascosto, e "grafèin", scrivere), nella sua versione tecnologica consente di nascondere all'interno di file digitali, immagini o suoni che siano, ogni tipo di messaggio segreto. Invisibili a occhio (od orecchio) nudo ma decodificabili senza troppi problemi a chi sa dove andarli a cercare su reti globali come Internet. Introduzione Introduzione ai modelli di moto collettivo Oggi numerosi concetti della fisica vengono utilizzati per studiare in modo approfondito i sistemi complessi presenti in natura. In quest’area di studi oltre alla chimica, alla biologia ed alle scienze sociali, si sono aggiunte anche le nuove tecnologie come l’informatica, per sviluppare una ricerca interdisciplinare. Al centro dell’attenzione globale vi sono fenomeni come il flusso di mezzi, le proteine, la formazione e la crescita di colonie di batteri, l’evoluzione biologica della specie e le transazioni in mercati finanziari. Questi sistemi sono interessanti per l’ingegneria, mediante la quale il potenziale uso dei risultati ottenuti può essere applicato concretamente contribuendo a migliorare la vita di ciascuno di noi. 1.1 Modelli di Vicsek Nel modello studiato da Vicsek alcune particelle in movimento guidate ad una certa velocità, assumono la direzione media del moto delle particelle poste nelle loro vicinanze. Il modello proposto è notevolmente interessante perché può essere applicato a numerosi sistemi biologici che dove le entita hanno la tendenza a muoversi nello stesso modo dei loro simili che si trovano nelle immediate vicinanze. Oltre a stormi di uccelli, branchi di pesci, il nostro modello può essere applicato anche a fenomeni che avvengono durante la crescita di colonie di batteri. 1.3 Processi di evacuazione durante situazioni di panico Le situazioni di panico sono molto presenti nella realtà odierna. Fenomeni quali il terrorismo, guerre civili e militari, cataclismi naturali, incendi di foreste e di abitazioni ecc non fanno altro che alimentarle continuamente. Gran parte delle vittime è stata causata dal panico e dalle sue conseguenze immediate. Negli ultimi 100 anni ci sono stati più di 4000 morti in situazioni di panico. Nonostante l’incremento delle misure di sicurezza standard, la situazione generale non è migliorata a causa di eventi sempre più frequenti che coinvolgono grandi folle. Si tratta di partite di calcio, concerti, olimpiadi, manifestazioni o altro e alcuni tra gli Stati più colpiti sono il Sud Africa, gli Stati Uniti, la Russia, l’Egitto e la Palestina. In molte circostanze le vittime sono state causate dallo stesso comportamento delle persone. Spesso infatti, durante la fuga alcune di esse cadevano e non potendo rialzarsi finivano schiacciate da altre producendo così pile di persone cadute.

6 Introduzione Come ben sappiamo dalle ultime notizie l’importanza della sicurezza ha coinvolto anche la F1 punta dell’iceberg.” Dalla pista, ormai, il verdetto è arrivato: le Frecce d'argento hanno battuto il Cavallino rampante, a meno di improbabili ribaltoni tecnici da qui alla fine della stagione. A Maranello hanno incassato con stile la sconfitta in gara ma fanno sapere che di pace preventiva non se ne parla ed è stato lo stesso Jean Todt, amministratore delegato del Cavallino, a confermare come la Ferrari sarà in grado di produrre nuove prove a carico della scuderia rivale da portare in dote al Consiglio mondiale della Fia, la Federazione Internazionale dell'Automobilismo”. Le prove sono sottoforma di , messaggi via Sms, appunti, disegni e quant'altro dove non è da escludere l’impiego di tecniche stegano-crittografiche. Introduzione ai modelli di moto collettivo Oggi numerosi concetti della fisica vengono utilizzati per studiare in modo approfondito i sistemi complessi presenti in natura. In quest’area di studi oltre alla chimica, alla biologia ed alle scienze sociali, si sono aggiunte anche le nuove tecnologie come l’informatica, per sviluppare una ricerca interdisciplinare. Al centro dell’attenzione globale vi sono fenomeni come il flusso di mezzi, le proteine, la formazione e la crescita di colonie di batteri, l’evoluzione biologica della specie e le transazioni in mercati finanziari. Questi sistemi sono interessanti per l’ingegneria, mediante la quale il potenziale uso dei risultati ottenuti può essere applicato concretamente contribuendo a migliorare la vita di ciascuno di noi. 1.1 Modelli di Vicsek Nel modello studiato da Vicsek alcune particelle in movimento guidate ad una certa velocità, assumono la direzione media del moto delle particelle poste nelle loro vicinanze. Il modello proposto è notevolmente interessante perché può essere applicato a numerosi sistemi biologici che dove le entita hanno la tendenza a muoversi nello stesso modo dei loro simili che si trovano nelle immediate vicinanze. Oltre a stormi di uccelli, branchi di pesci, il nostro modello può essere applicato anche a fenomeni che avvengono durante la crescita di colonie di batteri. 1.3 Processi di evacuazione durante situazioni di panico Le situazioni di panico sono molto presenti nella realtà odierna. Fenomeni quali il terrorismo, guerre civili e militari, cataclismi naturali, incendi di foreste e di abitazioni ecc non fanno altro che alimentarle continuamente. Gran parte delle vittime è stata causata dal panico e dalle sue conseguenze immediate. Negli ultimi 100 anni ci sono stati più di 4000 morti in situazioni di panico. Nonostante l’incremento delle misure di sicurezza standard, la situazione generale non è migliorata a causa di eventi sempre più frequenti che coinvolgono grandi folle. Si tratta di partite di calcio, concerti, olimpiadi, manifestazioni o altro e alcuni tra gli Stati più colpiti sono il Sud Africa, gli Stati Uniti, la Russia, l’Egitto e la Palestina. In molte circostanze le vittime sono state causate dallo stesso comportamento delle persone. Spesso infatti, durante la fuga alcune di esse cadevano e non potendo rialzarsi finivano schiacciate da altre producendo così pile di persone cadute.

7 Introduzione Il libro Codice da Vinci ha incassato assieme al film cifre record facendo ritornare più che mai di moda il tema dei segreti dell’antichità e di personaggi illustri come Leonardo da Vinci. Le analogie con la steganografia emergono quando si racconta che all’interno della Gioconda ci sarebbero delle indicazioni misteriose dello stesso autore. Introduzione ai modelli di moto collettivo Oggi numerosi concetti della fisica vengono utilizzati per studiare in modo approfondito i sistemi complessi presenti in natura. In quest’area di studi oltre alla chimica, alla biologia ed alle scienze sociali, si sono aggiunte anche le nuove tecnologie come l’informatica, per sviluppare una ricerca interdisciplinare. Al centro dell’attenzione globale vi sono fenomeni come il flusso di mezzi, le proteine, la formazione e la crescita di colonie di batteri, l’evoluzione biologica della specie e le transazioni in mercati finanziari. Questi sistemi sono interessanti per l’ingegneria, mediante la quale il potenziale uso dei risultati ottenuti può essere applicato concretamente contribuendo a migliorare la vita di ciascuno di noi. 1.1 Modelli di Vicsek Nel modello studiato da Vicsek alcune particelle in movimento guidate ad una certa velocità, assumono la direzione media del moto delle particelle poste nelle loro vicinanze. Il modello proposto è notevolmente interessante perché può essere applicato a numerosi sistemi biologici che dove le entita hanno la tendenza a muoversi nello stesso modo dei loro simili che si trovano nelle immediate vicinanze. Oltre a stormi di uccelli, branchi di pesci, il nostro modello può essere applicato anche a fenomeni che avvengono durante la crescita di colonie di batteri. 1.3 Processi di evacuazione durante situazioni di panico Le situazioni di panico sono molto presenti nella realtà odierna. Fenomeni quali il terrorismo, guerre civili e militari, cataclismi naturali, incendi di foreste e di abitazioni ecc non fanno altro che alimentarle continuamente. Gran parte delle vittime è stata causata dal panico e dalle sue conseguenze immediate. Negli ultimi 100 anni ci sono stati più di 4000 morti in situazioni di panico. Nonostante l’incremento delle misure di sicurezza standard, la situazione generale non è migliorata a causa di eventi sempre più frequenti che coinvolgono grandi folle. Si tratta di partite di calcio, concerti, olimpiadi, manifestazioni o altro e alcuni tra gli Stati più colpiti sono il Sud Africa, gli Stati Uniti, la Russia, l’Egitto e la Palestina. In molte circostanze le vittime sono state causate dallo stesso comportamento delle persone. Spesso infatti, durante la fuga alcune di esse cadevano e non potendo rialzarsi finivano schiacciate da altre producendo così pile di persone cadute.

8 La Crittografia: cenni storici
La Crittologia ingloba in se termini più specifici: Crittografia: protezione dei messaggi. Crittanalisi: violazione della protezione o “crittazione”. La cifratura è la trasformazione del messaggio in un crittogramma mentre l’antitrasformazione è detta decifratura La crittografia è una scienza antichissima utilizzata per nascondere messaggi tra regnanti, imperatori, nobili. ● Nell'epoca dell'impero romano e di Giulio CESARE, quando ancora pochi sapevano leggere e scrivere, per comunicare con i sui generali, egli sostituiva ad ogni lettera del messaggio un'altra lettera con un certo numero di posizioni più avanti nell'alfabeto. Per l'esattezza utilizzava la chiave “3”, tutte le lettere venivano scalate di tre cifre: la A diventava D, la B diventava E, la C diventava F e così via. Un metodo semplicissimo ma per quell'epoca più che rivoluzionario. La debolezza di questo codice sta nel fatto che si possono utilizzare solo 25 chiavi, cioè tante quanto le lettere dell'alfabeto. Comunque è da questo cifrato che iniziano i miglioramenti e l'evoluzione della crittografia. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

9 La Crittografia: cenni storici
● VIGENERE: è stato inventato da Blaise De Vigenere nel 1586, si tratta di un codice a sostituzione polialfabetica. E' un'estensione più moderna (per l'epoca) del codice di Cesare, dove al posto di spostare le lettere di una stessa quantità, venivano spostate in base alla chiave. ● ATBASH: consisteva nel cifrare la prima lettera dell'alfabeto ebraico con l'ultima. La seconda con la penultima e così via. ● Dispositivo di JEFFERSON: Thomas Jefferson, all'epoca Segretario di Stato americano, in seguito divenuto Presidente, inventò un sistema composto da cilindri e dischi ruotanti intorno ad un asse. Il cilindro era lungo 15 cm e largo 4. Questo cilindro era formato da 36 ruote della stessa misura. Ognuna di esse aveva all'esterno tutte le 26 lettere dell'alfabeto ma con ordine casuale, e diverso nelle varie 36 ruote. Ogni ruota aveva un numero. Il testo cifrato veniva composto inserendo le varie ruote in un ordine prestabilito (è proprio quest'ordine che rappresenta la chiave da comunicare al destinatario). In questa immagine il dispositivo di JEFFERSON. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

10 La Crittografia: cenni storici
●ENIGMA: fu l'ultimo passo prima della crittografia moderna. Fu ideato dall'ingegnere tedesco Arthur Scherbius. Era una macchina elettromeccanica composta da ruote con i caratteri incisi sul bordo, e con contatti elettrici in corrispondenza delle lettere su entrambi i lati. Il testo in chiaro, digitato su una tastiera, veniva riprodotto utilizzando i caratteri della prima ruota, la quale a sua volta costruiva un nuovo alfabeto utilizzando i caratteri della seconda, e poi della terza, e così via. Tutte le ruote, e potevano essere parecchie, venivano "scalate", in modo che la sostituzione delle lettere fosse ogni volta diversa. La chiave consisteva nel settaggio iniziale delle ruote, che potevano essere posizionate in una quantità di posizioni diverse tanto alte quante più erano le ruote utilizzate. Tra il un gruppo di matematici inglesi guidati da Alan Turing (l'ideatore della macchina astratta di calcolo) progettarono e costruirono una macchina, chiamata Bombe, con cui riuscirono a decifrare i messaggi tedeschi. Fu attaccato anche dal matematico polacco Marin Rejewsky che con il suo lavoro permise di decifrare numerosi messaggi militari tedeschi, uno dei passi che contribuì alla vittoria degli Alleati. ●Cifrario di VERNAM ad inventarlo fu G.S. Vernam. E' uno dei più potenti metodi di crittografia. La chiave deve essere una sequenza casuale di caratteri ed avere una lunghezza uguale o superiore al testo in chiaro. Così facendo è matematicamente impossibili decifrare il testo criptato. Questo sistema fu utilizzato durante la Guerra Fredda fra i Presidenti USA-URSS. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

11 La Crittografia: evoluzione
Un algoritmo di crittografia riceve un testo da codificare (detto testo in chiaro o Plain-text) e lo trasforma, attraverso la chiave, in un testo cifrato (Cipher-text) apparentemente incomprensibile. cifratura: M = Ck(Mc) decifratura: Dk(Ck(M)) = M M è il messaggio da cifrare, C è l'algoritmo di codifica, D quello di decodifica e k la chiave per i due algoritmi. I metodi di crittografia di questo tipo, cioè che utilizzano la stessa chiave per la codifica e la decodifica sono detti a chiave segreta (o simmetrici), altri metodi che utilizzano due chiavi diverse per la codifica e la decodifica vengono detti a chiave pubblica (o asimmetrici). Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

12 La Crittografia: evoluzione
Gli algoritmi simmetrici usano un sistema per cifrare che può essere a flusso o a blocchi. Se a flusso, il codice cripta un bit, byte o una parola alla volta. Se a blocchi, viene applicato ad un gruppo di bit, byte o parole. Gli algoritmi simmetrici a blocchi principali sono: -BLOWFISH algoritmo creato da Bruce Schneier. L'autore ha implementato nel cifrario varie tecniche, fra cui Feistel network, S-box dipendenti da chiavi, funzioni non invertibili ed altro ancora. In sostanza è uno dei più sicuri. -DES la descrizione del DES si trova più avanti. -IDEA descrizione nelle pagine seguenti. -RIJNDAEL sistema di crittografia sviluppato dai matematici belgi Joan Daemen e Vincent Rijmen su richiesta della Advanced Encryption Standard (AES), fa uso di chiavi di lunghezza variabile (128, 182 e 256 bit). Viene nominato come standard AES, in sostituzione del DES. E' implementato via software in molti linguaggi: C/C++, Java, Lisp, Phyton ed anche in Perl e Javascript. -SERPENT algoritmo progettato da Ross Anderson, Eli Biham e Lars Knudsen, su richiesta della AES. Il Serpent adopera chiavi di 256 bit su blocchi di 128 bit, ed ha resistito alla crittoanalisi lineare e differenziale. Contiene delle permutazioni iniziali e finali, così come il DES. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

13 La Crittografia: evoluzione
-DSA acronimo di Digital Signature Algorithm inglobato nel Digital Signature Standard (DSS), è un cifrario usato per generare le firme digitali, più debole rispetto ad esempio all'RSA. Il software GnuPG lo usa con ELGAMAL per la creazione delle coppia di chiavi pubblica e privata. Non adatto per la crittografia dei dati. -RSA descrizione più avanti. Algoritmi per il calcolo dell'hashing di un documento (vedere il paragrafo “Funzioni di Hash”): -MD4 algoritmo di hash considerato sicuro ed alla base delle funzioni Hash. Il messaggio viene suddiviso in blocchi di 512 bit, poi tramite una struttura iterativa il blocco viene elaborato da una funzione di compressione sui blocchi di 512 bit per la generazione del valore hash. L'output ha una lunghezza di 128 bit. Hans Dobbertin ha sviluppato un attacco a questo algoritmo, in grado di generare collisioni in un minuto di tempo di calcolo su un normale computer. -SHA-1 acronimo di Secure Hash Algorithm-1, sviluppato dal NSA su richiesta del National Institute of Standard and Technology (NIST), è simile all'algoritmo MD4. L'originale progetto del 1994 aveva il nome di SHA, poi modificato nel codice dal NSA. Produce output di 160 bit. Attualmente è uno dei più sicuri, usato anche dai programmi -PGP e GPG per firmare un documento. -SHA-2, Secure Hash Algorithm-2, versione successiva a SHA-1, genera impronte di documenti da 256, 384 e 512 bit. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

14 La Crittografia: evoluzione
Il problema della trasmissione della chiave ● Volendo utilizzare un cifrario simmetrico per proteggere le informazioni tra due interlocutori come posso scambiare la chiave segreta? Devo utilizzare un canale sicuro di comunicazione. ● Ma tale canale sicuro esiste nella realtà? ● Per una comunicazione sicura tra n utenti si dovranno scambiare in tutto (n-1)*n/2 chiavi, ad esempio con 100 utenti occorreranno 4950 chiavi, il tutto per ogni comunicazione! Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

15 La Crittografia: evoluzione
DES (Data Encryption Standard) ● Sviluppato dall.IBM nel 1970 diventato standard nel 1976. ● Utilizza chiavi di 56 bit, divide il testo in chiaro in blocchi di 64 bit, effettua delle permutazioni iniziali e finali ed un ciclo di 16 iterazioni di permutazioni e xor (Feistel network, tecniche di confusione e diffusione). ● Il 17 Luglio 1998, l.EFF (Electronic Frontier Foundation) costruisce un sistema dedicato in grado di violare il DES in meno di 3 giorni, tramite un attacco di tipo .brute-force. ● Morale della favola: non utilizzate sistemi di cifratura basati sul DES! Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

16 La Crittografia: evoluzione
3DES ● Evoluzione del DES, è basato su un utilizzo del cifrario DES ripetuto, chiavi di 112 bit. ● Si utilizza la tecnica della codifica-decodifica-codifica (EDE, Encrypt-Decrypt-Encrypt) utilizzando il cifrario DES. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

17 La Crittografia: evoluzione
Rijndael ● Sviluppato Joan Daemen e Vincent Rijmen. ● Questo algoritmo ha vinto la selezione per l’Advanced Encryption Standard (AES) il 2 Ottobre Ufficialmente il Rijndael è diventato lo standard per la cifratura del XXI secolo. ● Il cifrario utilizza chiavi di lunghezza variabile 128, 192, 256 bit (gli autori hanno dimostrato come è possibile variare le dimensioni delle chiavi con multipli di 32 bit). Lo schema del Rijndael è stato influenzato dall.algoritmo SQUARE. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

18 La Crittografia: evoluzione
La crittografia a chiave pubblica ● Utilizza una coppia di chiavi per le operazioni di cifratura (encryption) e decifrazione (decryption). ● Una chiave detta pubblica (public key) viene utilizzata per le operazioni di encryption, mentre l’altra chiave, detta privata (private key), viene utilizzata per le operazioni di decryption. ● A differenza dei cifrari simmetrici non è più presente il problema della trasmissione delle chiavi. ● Sono intrinsecamente sicuri poiché utilizzano tecniche di tipo matematico basate sulla teoria dei numeri, sulla teoria delle curve ellittiche, etc. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

19 La Crittografia: evoluzione
La nascita dei sistemi PKI ● Dove trovo le chiavi pubbliche dei miei destinatari? ● Creazione di archivi di chiavi pubbliche, i public key server. ● Ma chi mi garantisce la corrispondenza delle chiavi pubbliche con i legittimi proprietari? ● Nascita delle certification authority (CA). ● A questo punto chi garantisce la validità delle certification authority? ● Atto di fede! Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

20 La Crittografia: evoluzione
Il cifrario RSA ● E’ basato su tecniche di teoria dei numeri: prodotto di due numeri primi di dimensioni elevate (ad esempio con 300 cifre decimali). Le chiavi pubbliche e private vengono determinate con il seguente algoritmo: . Si scelgono due numeri primi p e q molto grandi; . Calcolo n= p*q, e la funzione di Eulero Φ(n)= (p-1)*(q-1); . Scelgo un intero e minore di Φ(n) e primo con esso; . Calcolo l’intero d, inverso di e modulo Φ(n) (ossia tale che e*d = k*Φ(n) + 1, con k numero intero); . La chiave pubblica è costituita dalla coppia di valori <e,n>, la chiave privata dai valori <d,n>. ● Le operazioni di encryption e decryption sono: C=Me (mod n) , M=Cd (mod n)=(Me (mod n))d (mod n) dove M= blocco di testo in chiaro, C= crittogramma. ●vantaggio:sicurezza ●svantaggio:velocità minore Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

21 La Crittografia: evoluzione
La firma digitale e le funzioni hash sicure ● Nasce come applicazione dei sistemi a chiave pubblica. ● Viene utilizzata per autenticare la paternità di un documento informatico e la sua integrità. ● Si utilizza un cifrario a chiave pubblica e si .cifra. Un documento (file) con la propria chiave segreta. Chiunque può verificare la paternità del documento utilizzando la chiave pubblica dell’utente firmatario. ● Problema: per l’autenticazione di un documento di grandi dimensioni con un algoritmo a chiave pubblica occorre molto tempo. ● Soluzione: posso autenticare solo un .riassunto. del documento tramite l’utilizzo di una funzione hash sicura. ● Una funzione hash accetta in ingresso un messaggio di lunghezza variabile M e produce in uscita un digest di messaggio H(M) di lunghezza fissa. Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

22 La Crittografia: evoluzione
La crittoanalisi ● La scienza che si occupa dell’analisi e della validità degli algoritmi crittografici. ● Analizzando il contenuto di un testo cifrato, attraverso tecniche statistico/matematiche si possono ottenere informazioni sul testo in chiaro. ● Per fortuna ciò non è sempre possibile, la maggior parte dei cifrari moderni è ancora al sicuro da tecniche di crittoanalisi. Le basi della crittoanalisi ● L’attacco ad un sistema crittografico ha l’obiettivo di forzare il sistema, il metodo scelto e il suo livello di pericolosità dipendono dalle informazioni in possesso del crittoanalista. ● Fondamentalmente esistono queste tipologie di attacchi: . Cipher Text Attack (il crittoanalista è in possesso solo di alcuni crittogrammi) . Known Plain-text Attack (il crittoanalista è venuto a conoscenza di una serie di testi in chiaro e di crittogrammi) . Chosen Plain-Text Attack (il crittoanalista ha scelto una serie di testi in chiaro e di crittogrammi) Descrizione del modello basato sugli automi cellulari 2.1 Il concetto di automa cellulare Un automa cellulare è un sistema dinamico in cui spazio, tempo e stati del sistema sono discreti. Tale concetto fa la sua comparsa nell'ambiente scientifico nel 1947 allorché ci si propose di studiare la complessità dei fenomeni biologici e in particolare i meccanismi di funzionamento e auto-riproduzione degli esseri viventi. Già i primi studiosi di cibernetica cominciarono ad intuire la capacità di alcuni meccanismi di svolgere funzioni tipicamente umane, in modo particolare quelle relative ad alcune attività mentali elementari. Ogni elemento dell'automa in una griglia spaziale regolare è detto cella . Gli stati delle celle variano secondo una regola locale e sono aggiornati contemporaneamente in maniera sincrona. Gli automi cellulari si utilizzano principalmente perché forniscono una rappresentazione immediata di fenomeni in cui l'evoluzione globale dipende dalla presenza di alcune leggi locali. Questo è il caso, ad esempio, del comportamento fisico dei gas perfetti, ma anche del movimento dei filamenti di DNA all'interno di una soluzione, dell'evoluzione di una popolazione sotto l'effetto di determinate leggi economiche e sociali, e così via. Con un automa cellulare, si può implementare la legge locale nella memoria di un calcolatore e visualizzare sul suo schermo l'evoluzione che ha luogo a partire da una configurazione iniziale prefissata: questo è di grande aiuto quando si vogliono indicazioni qualitative sul comportamento di una struttura. 2.2 Descrizione degli automi cellulari utilizzati In questo modello, lo spazio di movimento viene suddiviso in piccole celle il cui stato può essere “cella vuota” (VC) o “cella occupata da un agente” (EC). Ogni agente si muove alla velocità di una cella per unità di tempo. 2.2.1 Regole di base del moto dei pedoni Mediante le entità agenti sulle celle dell’automa, possiamo modellare sia il moto di particelle elementari che di complessi organismi biologici come l’uomo. Ad ogni istante di tempo, ciascuno di questi pedoni può muoversi nelle celle vicine secondo una sua direzione privilegiata. 1,Perché il moto avvenga,per ogni pedone verrà costruita una “matrice delle preferenze” M (3x3) che conterrà le probabilità di muoversi in una delle direzioni. L’elemento centrale descrive la probabilità del pedone di non muoversi. 2. Ad ogni istante di tempo, ciascun pedone si muoverà attraverso il sorteggio della direzione, con le probabilità specificate nella matrice delle preferenze. 3. Se la cella scelta è occupata il pedone non si muove, altrimenti il movimento verrà eseguito dopo aver risolto eventuali conflitti con altri pedoni che hanno scelto la stessa cella di destinazione.

23 La Steganografia L’arte di nascondere un messaggio dentro ad un altro.
Osservate la seguente immagine: In apparenza vedrete tante immagini di fiori che però viste da lontano oppure ridotte di dimensione vanno a raffigurare l’occhio di una donna che rappresenta il messaggio nascosto. Il principio è lo stesso! Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

24 La Steganografia Le pagine Web sono arricchite da disegni e fotografie digitalizzate. Possono essere stampate, ma quando sono presenti sul monitor possono essere qualcosa di più... In certi tipi di dati, possono essere nascoste informazioni senza che il dato originale venga apparentemente modificato, in modo da non far sorgere dubbi in chi lo dovesse analizzare. Messaggio + dato di copertura (+ chiave) = dato steganografico Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

25 La Steganografia Nel campo dell'informatica, due utenti possono utilizzare la steganografia digitale per inviarsi messaggi nascosti all'interno di file di "copertura" (filigrana elettronica), come immagini o altri file multimediali: in questo tipo di file l'alterazione di pochi bit non altera in modo evidente il contenuto. La steganografia, in sé, si basa sul concetto della sicurezza tramite segretezza: cerca di proteggere i dati semplicemente nascondendoli e non proteggendoli "davvero". I sostenitori della steganografia affermano che questa è utile soprattutto quando si vuole avere la possibilità di negare l'esistenza stessa di un'informazione in loro possesso (plausible deniability). Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

26 La Steganografia Cos’ è l'information hiding ? Campi utilizzati
Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

27 La Steganografia Steganografia Lingustica
– Codice aperto: il messaggio sembra innocente • Mascheratura: circostanze note solo ai recipienti (gergo, mots convenus) • Velatura: solo alcuni caratteri nel testo (acrostici, cronogrammi, griglie) – Semagrammi: dettagli grafici visibili in uno scritto disegno • Lettere abbassate o spaziatura delle lettere • Gli elementi di un disegno contengono il messaggio • Steganografia tecnica – Inchiostri invisibili, micropunti – Congegni meccanici Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

28 La Steganografia: cenni storici
Anche se probabilmente sono gli Egizi ad applicarla per primi nei loro geroglifici di cui tuttora molti sono indecifrati, la steganografia la si fa risalire all'antica Grecia, dove si prefigge di nascondere la comunicazione tra due interlocutori. Essa fu teorizzata dall'abate Tritemio attorno al 1500 nell'omonimo libro proponendosi di inviare messaggi tramite l'uso di linguaggi magici, sistemi di apprendimento accelerato e senza l'utilizzo di simboli o messaggeri. L'opera continuò a circolare in forma di minuta e fu pubblicata postuma nel 1606. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

29 La Steganografia: evoluzione
Modelli Steganografici: • Steganografia Iniettiva • Steganografia generativa Altri Modelli: • Steganografia sostitutiva • Steganografia selettiva • Steganografia costruttiva Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

30 La Steganografia: evoluzione
Steganografia sostitutiva Rumore Sempre presente - conversione analogica-digitale Influenza i bit meno significativi Inserire il messaggio segreto nei bit meno significativi dopo la conversione Simula il rumore Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

31 La Steganografia: evoluzione
File Bitmap (.BMP) Matrice di pixel in formato RGB, dimensione MxN P. es. a 24 bit per pixel, con tre canali, servono 3xMxN bytes Pixel originario trasmesso: Sostituire i tre bit meno significativi dei canali con tre bit del messaggio: La percezione visiva • non vede molta differenza col colore originario • non sa quale fosse esattamente il colore originario Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

32 La Steganografia: evoluzione
Iniezione di Messaggio – Dimensione del messaggio iniettato: (M x N x 3) / 8 – Esempio: immagine di risoluzione 640 x 480 pixel (640 x 480 x 3) / 8 = bytes – E’ possibile codificare il messaggio con più bit 2, 3 o 4 bit meno significativi per canale aumento dimensioni del messaggio steganografico aumento del ‘rumore’ percepito – diminuzione della qualità dell’immagine – probabilità di insospettire il ricevente Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

33 La Steganografia: evoluzione
File sonoro (.WAV) Formato Hz, 16 bit, stereo, durata 1 minuto Generata una stringa di bit ogni 1/44100 secondi La stringa è di 16 bit Sono generate due stringhe di bit Dimensione file contenitore: 44100 x 16 x 2 x 60 = bit = kB Usando i due bit meno significativi, la dimensione massima del messaggio nascosto è: x 2 / 16 = = 1293 kB Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

34 La Steganografia: evoluzione
File JPEG Compressione 1. Conversione di spazio cromatico: • Immagine convertita da formato RGB a YIQ (o YUV) che consiste in tre piani di colore: luminanza (Y) e due componenti di crominanza (U e V). Opzionale ma permette una migliore qualità di compressione e minor perdita di qualità. 2. Analisi in frequenza: Discrete cosine transform - DCT 3. Quantizzazione 4. Codifica entropica: • Lettura a zig-zag • Run Length Encode – RLE • Compressione basata sul conteggio di caratteri ASCII. • DCMP • Compressione Huffman • Assegna particolari codici, corti, a sequenze di valori più frequenti. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

35 La Steganografia: evoluzione
File JPEG Non è possibile usare una semplice tecnica sostitutiva La compressione JPG intende preservare le caratteristiche visive dell’immagine e non la sequenza di pixel originaria. Nella compressione JPG viene compiuta una trasformata di Fourier dell’immagine originaria e vengono tagliate le frequenze più basse prima di compiere una trasformata di Fourier inversa. Soluzione: iniettare le informazioni nei coefficienti di Fourier ottenuti nella prima fase della compressione Iniettare le informazioni in un file BMP e poi convertirlo in JPEG? JPEG è un formato ‘lossy’: il messaggio nascosto viene perduto Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

36 La Steganografia: evoluzione
File MP3 Si inserisce il messaggio segreto nella fase di ‘inner loop’: Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

37 La Steganografia: evoluzione
File GIF Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

38 La Steganografia: evoluzione
File GIF – Decrementare il numero di colori della paletta • potenza del 2, inferiore a 256 – risultato: 1/2 o 1/4 della paletta originale • limitare la perdità di qualità • usare algoritmi specifici – Duplicare (o quadruplicare) la paletta risultante • la nuova paletta è di 256 colori • ogni colore ha 2 o 4 entries nella paletta – La scelta della semipaletta determina il bit del messaggio nascosto • P. es. 0 per paletta originaria, 1 per paletta copia – Immagine M x N pixel • messaggio nascosto di almeno M x N / 8 bytes Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

39 La Steganografia: evoluzione
File GIF Osservazioni: – E’ molto facile scoprire la presenza di sottopalette – Altro metodo di staganografia GIF: • le 256 entries della paletta si possono disporre in 256! permutazioni • variando l’ordine delle permutazioni si può codificare un messaggio • dimensione massima: – log2 256! = 1683 bit = 210 bytes – Anche altri formati sono adatti come contenitori • Postscript, PDF, HTML, ecc. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

40 La Steganografia: evoluzione
File GIF Difetti – Esposizione del contenitore • Non utilizzare file contenitori il cui originale è accessibile • Non riutilizzare lo stesso contenitore per più messaggi • Distruggere il contenitore dopo l’uso – Modelli di rumore • Il messaggio cambia le caratteristiche statistiche del rumore, sostituendosi ad esso • Chi possieda un modello statistico del rumore può accorgersene • Lo scopo è che l’opponente non sospetti neppure la presenza del messaggio nascosto Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

41 La Steganografia: evoluzione
Steganografia Selettiva – Selezionare solo file contenitori che già possiedano una certa proprietà, tra tutti i possibili • P. es. file di dimensione pari codificano uno 0, dispari un 1 • Meglio se molti contenitori piccoli – Il file contiene il messaggio segreto senza essere stato modificato – La banda passante è molto bassa – Poco usata in pratica • Ma: utile per invio password, chiavi, ‘chirp’ Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

42 La Steganografia: evoluzione
Steganografia Costruttiva – Tiene conto di un Modello di Rumore – Il falso rumore introdotto è statisticamente compatibile col modello – Problemi • difficile realizzazione di un modello di rumore • se il modello cade in mano nemica, si possono forse trovare debolezze del modello e sfruttarle Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

43 La Steganografia: evoluzione
Principio di Kerchoff – Il nemico conosce appieno il progetto e l’implementazione del modello di rumore – Il nemico non dispone solo di una chiave segreta • sequenza limitata di bit – Senza la chiave segreta non è deducibile che un canale di comunicazione contenga o meno un messaggio nascosto • Soluzioni: – Cifrare il messaggio segreto prima di iniettarlo nel contenitore – Eliminare ogni ridondanza prima dell’iniezione Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

44 La Steganografia: evoluzione
Sistema Steganografico Ideale Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

45 La Steganografia: evoluzione
File System Steganografico – I file sono organizzati in livelli di sicurezza – Ad ogni livello corrisponde una pass-phrase – Gerarchia lineare • l’accesso al livello n permette l’accesso anche a tutti i livelli inferiori – Senza la pass-phrase non è nota neppure l’esistenza del livello di sicurezza – I livelli di sicurezza massimi sono prefissati – I livelli utilizzati possono essere inferiori al massimo • L’attaccante non sa quanti livelli sono utilizzati Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

46 La Steganografia: evoluzione
Incrementare la sicurezza • Dispersione: Aumentare la dimensione dell’immagine utilizzata come contenitore e inserire i bit del messaggio segreto non modificando tutti i bit meno significativi possibili, ma ad esempio uno ogni dieci. All’aumentare della dimensione dell’immagine rispetto alla dimensione del messaggio segreto diminuisce la probabilità di rilevazione di una distorsione. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

47 La Steganografia: evoluzione
Incrementare la sicurezza • Crittografia: Utilizzare accorgimenti crittografici che permettano di rendere incomprensibili i messaggi segreti anche se scoperti. Sarà dunque necessaria una chiave per poterli poi decifrare. (vedi principio di Kerchoff che dice che il metodo steganografico è noto dall’attaccante, la sicurezza la porta la chiave segreta) Analisti esperti riconoscono anche la struttura di messaggi cifrati. Esistono programmi (Stealth) in grado di nascondere questa struttura e poi ripristinarla quando richiesto. Applicata questa trasformazione i bit sembrano apparentemente casuali. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

48 La Steganografia: evoluzione
Incrementare la sicurezza • Permutazioni pseudocasuali: Si indica con M i bit del messaggio e con N quelli che si potrebbero usare nel messaggio contenitore tenendo presente che N>M. Si calcola una permutazione per le posizioni degli M bit disponibili e a partire dal primo bit del messaggio segreto, gli si assegna la prima posizione evidenziata proprio dalla permutazione. Si ha così che il primo bit non finisce più nel primo bit, ma in uno qualunque e così anche per gli altri. Chiaramente è tanto meglio quanto più grande è M. Inoltre è necessario disporre di una chiave per poter in ricezione ricavare il messaggio originario. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

49 La Steganografia: evoluzione
Steganografia applicata • Vediamo adesso un esempio pratico di cosa nascondere in un'immagine. Prendendo immagini da 24 bit si possono imprimere dei "marchi" di due tipi e più precisamente avremo: – Watermark – Fingerprint Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

50 La Steganografia: evoluzione
Watermark • I Watermark sono un classico esempio dell'utilizzo di informazioni nascoste in un'immagine. • Con il diffondersi dell'utilizzo di Internet, gli autori di documenti digitali (come possono essere ad esempio le immagini) hanno il problema di impedire che qualcuno si impossessi delle loro opere spacciandole per proprie. • I watermark digitali quindi provvedono ad aggiungere delle informazioni dentro il documento in questione in modo tale che, nel caso ne venisse fatta una copia, il legittimo proprietario possa essere univocamente determinato. • Sempre nel caso delle immagini, un modo semplice per creare un watermark può essere quello di creare una seconda immagine che non conterrà altro che il nome del proprietario ripetuto molte volte. • Questa tecnica non viene usata quindi per nascondere un messaggio generico, ma piuttosto per occultare informazioni che vogliamo siano presenti nel documento ma che non siano visibili ad un primo impatto. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

51 La Steganografia: evoluzione
Fingerprint • I Fingerprint invece sono dei marchi separati che vengono inseriti in diverse copie della stessa immagine per distribuirla a persone diverse. L'effetto è una specie di numero seriale: fa sì che il proprietario possa identificare le persone a cui ha distribuito il suo prodotto nel caso esse lo distribuiscano "gratuitamente" a terzi. • Vediamo adesso alcune debolezze dei marchi e quindi alcuni modi che potrebbero essere utilizzati per renderli inutilizzabili. • Una pratica comune è quella di distribuire il watermark per tutta l'immagine, impedendo in questo modo eventuali attacchi basati sul taglio di una sezione dell'immagine di partenza. Più piccolo è il watermark e più è facile che venga manipolato. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

52 La Steganografia: evoluzione
Steganalisi Attacchi alle immagini • Attacchi visuali: – Sono in correlazione con le capacità visive umane – Il file stego viene filtrato con un algoritmo (di filtering) dipendente dalla funzione di embedding (inserimento del messaggio nel contenitore) utilizzata per nascondere il messaggio. – L’immagine filtrata viene osservata per determinare se è stato nascosto un messaggio o meno. • Attacchi statistici: – Effettuano test statistici sul file stego. – L’idea dell’attacco statistico è di confrontare la distribuzione di frequenza dei colori di un potenziale file stego con la distribuzione di frequenza teoricamente attesa per un file stego. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

53 La Steganografia: evoluzione
Formato WAV • LSB: La tecnica utilizzata è quella del bit meno significativo (se si utilizzano più bit diminuisce la qualità dell’operazione). • Esempio: file wave a 44100Hz, 16 bit, stereo: – 44100Hz: Nella trasformazione in digitale viene creata una stringa di 16 bit ogni 1/44100 secondi – Stereo: Le stringhe generate sono due, una per il canale destro e l’altra per quello sinistro. • Dimensione del file: Kb ossia = 16 bit x Hz x 60 sec x 2 = bit • Capacità disponibile per il segreto: usando i due bit meno significativi: bit = 1293 Kb ossia = bit /16 bit x 2 • Si aggiunge molto “rumore” di fondo facilmente avvertibile. Per far fronte a questo esiste una tecnica chiamata Echo-data-hiding. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

54 La Steganografia: evoluzione
Echo data hiding • Se il suono originale e la sua eco sono divisi da uno spazio di tempo abbastanza piccolo, l’orecchio umano non riesce a distinguere i due suoni. I dati vengono codificati in questi eco rappresentando gli 0 e gli 1 come due offset differenti di eco. • In parole povere consiste nell’inserire una pausa all’interno del file (il file potrebbe essere anche un video): – La pausa è cortissima (circa 1ms) impercettibile ai sensi umani – Si ripropone una sorta del codice morse punto linea: • pausa corta = punto • pausa lunga = linea • Questo metodo di steganografia è il metodo (inventato nel 2001) più sicuro in quanto è veramente complicato fare del detecting di pause. Le pause appartengono al file nascosto o sono le pause del video/brano ? • Ottima qualità steganografica, ma scarsa capacità per il contenimento del dato segreto. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

55 La Steganografia: evoluzione
Formato MP3: tecnica forte • Sfrutta l’Echo-hiding. • L’algoritmo di compressione per generare mp3 è lossy, ovvero comprime i dati in input con perdita di informazione. Per questo motivo, l’embedding ( il nascondere il messaggio segreto nel contenitore) deve essere effettuato nel processo di trasformazione da wav ad mp3. • Teoricamente impossibile da attaccare. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

56 La Steganografia: evoluzione
Formato MP3: tecnica debole • Anche i file MP3 sono file compressi. Vengono tagliate le frequenze non udibili all’orecchio umano. Per noi tali frequenze sono frequenze vuote, chi ci impedisce di riempirle con dati personali? • La steganografia di file MP3 può avvenire attraverso la codifica di messaggi segreti (file) all’interno di frequenze non udibili. – Un utente non si accorge di nulla ascoltando il brano, ma in realtà assieme al brano ascolta anche il file nascosto. • La steganografia moderna non utilizza tali file. Per l’utente risulta impossibile udire la differenza di suono che vi è tra il file originale e quello steganografato, ma è molto semplice implementare un software in grado di individuare file MP3 contenenti messaggi segreti: – E’ sufficiente implementare un filtro passa banda da hz e tutti quei segnali che cadono fuori sono byte appartenenti al file nascosto. Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

57 La Steganografia: evoluzione
Strumenti • Detecting di immagini steganografate: – File JPEG : StegDetect,StegoWatch, – File GIF : GIFExtract,SysCop – PCX : DiSi-Steganograph, StegoDos • Steganografia: – Jpg : Camouflage, StegHide, OutGuess, Shadow-Jpeg, Jpeg-jsteg, SecureEngine, Jpegx, InThePicture – Gif: Camouflage,appendx, EZStego, Hide and Seek, Gifshuffle, S-Tools-4, Cameleon, TheThirdEye – Bmp: Camouflage, StegHide, Hide-inpicture, WbStego, InvisibleSecrets, Courier,Xidie, Hide4PgP – WAV: Camouflage, StegHide, WeavWav,MP3Stego • Steganografia generativa: – Texto – Stego • Altri: – S-Tools (LSB), WinGIMP (plugin per GIMP) – Psteg (permutazioni pseudocasuali) Campi utilizzati Ai fini della modellizzazione delle evacuazioni sono stati introdotti due campi che virtualmente si instaurano: il campo statico ed il campo dinamico. Campo statico Il campo statico non cambia mai nel tempo e non è influenzato dalla presenza dei pedoni, ma dalla geometria della stanza. Esso viene calcolato per ogni cella ed assume valori crescenti in direzione della porta. campo dinamico Il campo dinamico si utilizza per modellare le interazioni attrattive tra i pedoni, perciò viene modificato dal loro moto. I valori del campo dinamico vengono calcolati mediante la seguente formula, ottenuta dalla discretizzazione della formula posta sopra, Costituisce quindi una traccia virtuale lasciata dai pedoni basata sulla “chemiotassi” ed ha dinamiche di diffusione e di decadimento. In generale il campo statico ed il campo dinamico vengono regolati mediante due parametri: Coefficienti di sensibilità:

58 Cooperazione tra crittografia e steganografia
Modalità di connessione degli agenti L’emissione di una traccia virtuale consente di creare una connessione fra più pedoni differenziabile in due tipologie: connessioni locali e connessioni di lungo raggio. 3.1 Le connessioni locali Se le connessioni sono locali, la traccia virtuale generata dal movimento di un pedone influenza solo il moto dei pedoni nelle sue immediate vicinanze. I fattori che influenzano il movimento dei pedoni possono essere riassunti nel seguente schema A stimoli esterni (ambientali) ed interni (motivazioni personali) i pedoni reagiscono con processi mentali e psicologici che li portano ad una reazione concreta tradotta in movimento. 3.2 Le connessioni di lungo raggio Per riprodurre alcuni comportamenti più attinenti alla realtà, è necessario introdurre anche alcune interazioni di lungo raggio. Quindi un numero limitato di pedoni, i cosiddetti “eletti” (casualmente) lascia contemporaneamente due tracce parallele, che segnalano il loro movimento sia ai pedoni vicini, che a quelli maggiormente distanti. Posizione alla quale viene emessa la traccia di lungo raggi, con Posizione iniziale+raggio: . In entrambe le tipologie le connessioni instaurate tra i pedoni sono dinamiche cioe variano nel tempo,

59 Implementazione del software
Ancient Simulator Questo primo software richiama metodi storici di crittografia : 1. Cesare 2. Enigma Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

60 Implementazione del software
Ancient Simulator Digitando 1 si esegue Cesare che è una funzione scritta in C++ che critta un testo dato da tastiera secondo il cifrario di Cesare. 1. Viene inserito il testo da crittare (evitando gli spazi o sostituendoli con dei trattini) 2. Va impostata la chiave che è un numero (anche un numero negativo è ammissibile). 3. Il testo viene crittato traslando le lettere dell’alfabeto di una quantità costante pari alla chiave Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

61 Implementazione del software
Ancient Simulator Digitando 2 si esegue Enigma che è una funzione in C++ che simula in maniera piuttosto semplificata il funzionamento di Enigma a tre rotori. I tre rotori presentano permutazioni dell’alfabeto simili a quelle utilizzate nei rotori tedeschi. 1. Viene inserito il testo da crittare. 2. I rotori vengono inizializzati automaticamente e si avvia la crittografia. 3. Il testo viene crittato. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

62 Implementazione del software
Ancient Simulator Il funzionamento si basa sull’utilizzo di cilindri ( rotori): ognuno presenta una permutazione dell’alfabeto a 26 lettere. I rotori girano attorno ad un asse: questo permette che ogni lettera immessa venga cifrata con un alfabeto diverso. Una macchina cifrante ad un rotore solo ripete il suo schema di crittografia ogni 26 lettere e si dice dunque che il suo periodo T sarà uguale a 26. Se però i rotori sono due il periodo diventerà 26*26 ovvero 262 = 676 lettere prima che il testo venga cifrato con lo stesso schema. Possiamo dunque dire che la sicurezza aumenta esponenzialmente con l’aumentare dei rotori e il periodo T di una macchina a n rotori è dato da 26n. Il settaggio iniziale può essere uno qualunque. char Rotore_1[27] = "ZYXWVUTSRQPOMNLKJIHGFEDCBA"; // Alfabeto al contrario char Rotore_2[27] = "BADCFEHGJILKNMPORQTSVUXWZY"; // Alfabeto scambiato char Rotore_3[27] = "FGHIJABCDEPQRSTKLMNOXYZUVW"; // Blocchi di 5 // Definisci gli operatori per i rotori char Codifica1(char Input) { // Conversione attraverso "i" return Rotore_1[(i + Input - 'A') - ((i + Input - 'A') / 26 * 26 )]; } Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

63 Steganocrypt Simulator
Il secondo software è stato implementato su calcolatore mediante la realizzazione di un programma in C# , che è dotato di orientazione agli oggetti . Esso consente di aaggiungere la crittografia alla steganografia. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

64 Implementazione del software
Il C# (si pronuncia C sharp, sharp in inglese significa "in gamba" o più semplicemente diesis) è un linguaggio di programmazione object-oriented sviluppato da Microsoft all'interno dell'iniziativa .NET, e successivamente approvato come standard ECMA. La sintassi del C# prende spunto da quella del Delphi (hanno il medesimo autore), del C++, da quella di Java ed a Visual Basic per gli strumenti di programmazione visuale e per la sua semplicità (meno simbolismo rispetto a C++, meno elementi decorativi rispetto a Java). Il C# è, in un certo senso, il linguaggio che meglio degli altri descrive le linee guida sulle quali ogni programma .NET gira; questo linguaggio è stato infatti creato da Microsoft specificatamente per la programmazione nel Framework .NET. I suoi tipi di dati "primitivi" hanno una corrispondenza univoca con i tipi .NET e molte delle sue astrazioni, come classi, interfacce, delegati ed eccezioni, espongono esplicitamente caratteristiche proprie del .NET framework. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

65 Implementazione del software
Osservazioni: Durante i processi di stegoanalisi, spesso si cerca di determinare in un’immagine le aree colorate con un unico colore o poche tonalità. Escluse queste si individuano le regioni con variazioni di bit maggiori, perché in esse è maggiormente probabile che siano nascosti dei messaggi perché più difficili da individuare. Guardate quest’immagine: -Il cielo blu sulle montagne non dovrebbe contenere dati nascosti perché di variazioni non ce ne sono. -Se sono presenti sulle montagne al massimo può essere stato cambiato un bit per pixel, mentre al contrario nelle zone oscure degli alberi possono essere nascosti tanti bit per pixel appartenenti a dati diversi dall’immagine. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

66 Implementazione del software
I luoghi dove è più di difficile individuare bit nascosti sono i seguenti: -Questo è uno dei motivi per cui durante la simulazione utilizzeremo un’immagine particolare. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

67 Implementazione del software
Simulazione n1. Se vogliamo semplicemente nascondere dei dati in un immagine e trasmetterli, abbiamo bisogno di un’immagine bitmap contenitore, di una password associatole per l’accesso e di un messaggio segreto. Apertura dell’immagine (.bmp) e salvataggio. Impostazione password. 3. Immissione del testo. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

68 Implementazione del software
Simulazione n1. -Simuliamo un attacco ad una base segreta terroristica! -Supponiamo di aver scelto un’immagine di Spiderman, la password rx78 ed il messaggio (“Attaccate la base nemica!”). -Sembrerebbe che due appassionati di film si stiano scambiando delle immagini via mail, ma in realtà non è così! Sono uno un comandante e l’altro un soldato distanti migliaia di km. 4. Cliccando su next abbiamo la possibilità di selezionare i poligoni dell’immagine dove nascondere il messaggio segreto. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

69 Implementazione del software
Simulazione n1. -Il messaggio lo ripartiamo nei byte dell’area selezionata. 5. Ogni poligono selezionato può essere chiuso mediante un double-click. -Le regioni vengono visualizzate istantaneamente. 6. Nascondiamo 8 bit per ogni pixel in modo da far variare le tonalità dell’immagine originaria il più possibile. 7. La dimensione del messaggio deve coincidere con la somma delle quantità di dati da nascondere per ogni byte per tutte le regioni 8. Clicchiamo su next. -Questa variazione risulterà impercettibile ad un comune essere umano, ma non per un software tecnologicamente avanzato. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

70 Implementazione del software
Simulazione n1. 9. Quindi viene creata con successo una mappa contenente le diverse regioni selezionate. -Essa viene memorizzata nei primi pixel dell’immagine in modo da essere estratta prima del resto del messaggio come header. -L’header di ogni regione contiene : Lunghezza Capacità Numero di bit usati Regione Indice del primo pixel di ogni regione Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

71 Implementazione del software
Simulazione n1. -Se non ci sono abbastanza pixel tra il primo pixel dell’immagine e l’inizio del primo della regione dove si nasconde l’header, vengono visualizzati gli opportuni messaggi errore. -Lo stesso vale anche per il messagio nascosto all’interno della regione che deve essere abbastanza grande da poterlo contenere. -A questo punto il messaggio e la mappa vengono nascosti. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

72 Implementazione del software
Simulazione n1. Modalità adottata per nascondere i byte: -Quando verrà estratto il messaggio, il seme utilizzato per inizializzare il distributore casuale di bit sarà lo stesso (un valore della chiave). -Per calcolare gli intervalli, sono necessari la lunghezza dei dati da nascondere (o estrarre) ed il conteggio dei pixel rimanenti. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

73 Implementazione del software
Simulazione n1. -Dall’immagine modificata vogliamo leggere il messaggio nascosto utilizzando le informazioni precedentemente memorizzate (la lunghezza degli dati, l’indice del pixel della regione più in alto e delle altre regioni e così via). 10. Immettiamo la password (in questo caso rx78). 11. Selezioniamo Text in modo da indicare che il messaggio da estrarre non lo vogliamo salvare su file, ma visualizzarlo immediatamente. 12. Clicchiamo su next. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

74 Implementazione del software
Simulazione n1. -Ricostruita la mappa, vengono ricostruite anche le regioni dove il messaggio è stato nascosto. -E’ necessario conoscere il numero dei byte in ogni regione e quanti bit per pixel devono essere estratti dai pixel. 13. Eseguiti questi task può essere visualizzato il messaggio in chiaro e le regioni da cui viene letto. Il soldato riceve il messaggio ed avvia i preparativi per entrare in azione. La situazione può evolversi ulteriormente! Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

75 Implementazione del software
Simulazione n2. -Simuliamo l’intercettazione del messaggio e la cifratura Il nemico, avendo adottato un software di controllo delle mail di tutti i suoi impiegati riesce ad intercettare il messaggio mediante stegoanalisi e cerca di sfruttarlo a proprio vantaggio. Infatti prepara una trappola ai soldati dell’esercito. Un altro agente segreto dell’esercito comprende la situazione e riutilizza un’altra casella di posta elettronica per trasmettere di fermare l’attacco, cifrando però il messaggio con un software di crittografia. In tale modo anche se cadesse in mani nemiche, non riuscirebbero a decifrarlo! Per impedire anche questa possibilità utilizza un’altra immagine ed una chiave memorizzata su file. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

76 Implementazione del software
Simulazione n2. Anzitutto si procede con la scrittura ed il salvataggio del messaggio in un file che viene crittato. Questo viene effettuato cliccando sul pannello principale Crypt, aprendo il file originale e indicando la directory dove salvare il file crittato. Si clicca su Encrypt, dopo aver specificato un ulteriore parametro di crittografia , la cui somma con quello in fase di decrittografia deve dare 0. Questo aggiunge ulteriore imprevedibilità al testo cifrato la cui cifratura si basa su tabelle di codici. Una tabella codici è un elenco di codici di caratteri selezionati, ossia caratteri rappresentati come punti di codice, in un determinato ordine. Le tabelle codici vengono definite in genere per supportare lingue o gruppi di lingue specifici che condividono sistemi di scrittura. In questo caso il testo viene convertito in intero, ad esso viene sommato il parametro e viene ritrasformato in stringa. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

77 Implementazione del software
Simulazione n2. 2. Poi all’immagine contenitore viene associato un file contenente una chiave d’accesso (Key File). 3. Il file viene aperto selezionando Message File e cliccando su Browse ed è quello precedentemente crittato. -Successivamente il messaggio crittato viene memorizzato all’interno dell’immagine. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

78 Implementazione del software
Simulazione n2. Vengono definite le regioni, stavolta più ampie in modo da distribuire più uniformemente i dati nascosti. Si clicca su next. Il tipo di immagine scelta aggiunge un’ulteriore vantaggio. La variazione delle tonalità e i chiaro-scuri rendono molto più difficoltosa l’individuazione di un messaggio nascosto. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

79 Implementazione del software
Simulazione n2. 6. Il messaggio crittato viene estratto su di un file dopo aver selezionato l’immagine da aprire ed il file dove salvare il messaggio crittato. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

80 Implementazione del software
Simulazione n2. 7. Il file crittato viene decrittato. Il comandante lo decritta. Immediatamente da ordine alla forza armata esterna di fermarsi, e si avvia verso lo studio di una nuova strategia. Implementazione del software Il modello da noi considerato è stato implementato mediante la realizzazione di un programma in C++. Questa scelta è basata su diverse considerazioni. La prima, riguarda il suo grande utilizzo nelle applicazioni scientifiche ed industriali. La seconda è che il C++ consente sia la programmazione ad oggetti, che la programmazione funzionale. Le strutture utilizzate constano di vettori e di matrici. I moduli software principali Le funzioni principali implementate dagli algoritmi messi a punto consistono in: ricerche, modifiche, ordinamenti, visualizzazioni, inserimenti, calcoli di massimi e di minimi, risoluzione di conflitti ecc… Il software ”panic_simulator_prototype” è composto una classe “simulator”, contenente attributi e metodi e da un programma principale chiamato ‘’main’’ dove possono essere invocati mediante l’istanziazione di oggetti. Nel main all’utente viene data la possibilità di scegliere il numero di simulazioni da effettuare. Il costruttore consente la variazione dei parametri su cui il programma si basa per generare l’output.

81 Conclusioni Realizzazione della Steganocrittografia
Implementazione del software Validazione mediante simulazioni Valutazione degli effetti Approfondimenti futuri Conclusioni Noi abbiamo studiato un caso specifico di processo di evacuazione basato sugli automi cellulari utilizzando un’idea simile alla “chemiotassi”. Per implementare il modello abbiamo ricorso ad alcuni artifici fra cui l’introduzione di due campi: il campo statico ed il campo dinamico. Ci siamo quindi proposti di analizzare l’influenza dei diversi parametri del modello sui tempi di evacuazione. Dai risultati ottenuti con le simulazioni è emerso che per valori di campo statico predominanti, i pedoni sceglievano il percorso più breve verso l’uscita. Per ->0, essi non avevano conoscenza della geometria della stanza quindi raggiungevano l’uscita solo casualmente. Viceversa per valori predominanti di campo dinamico, i pedoni avevano la tendenza a seguire gli altri disinteressandosi dell’uscita. La situazione di panico si verificava per <<1 e >>1 . I tempi di evacuazione minimi sono stati raggiunti mediante un’opportuna combinazione per ogni pedone della conoscenza dell’uscita e del movimento dei pedoni circostanti Validato il modello di base, alle connessioni locali abbiamo aggiunto anche le connessioni di lungo raggio in cui il moto dei pedoni veniva influenzato anche da altri posti a determinate distanze. Quindi per basse densità di particelle (30%), le connessioni di lungo raggio migliorano notevolmente i tempi di evacuazione della stanza introducendo un comportamento tipico alle reti smallworld . Questi ultimi si dimostrano molto sensibili anche a basse percentuali di particelle elette, consentendo l’utilizzo di percentuali comprese nella fascia del 5-10%. Solo mantenendo il raggio minimo d’interazione ugulae a meta delle dimensioni della stanza ed un periodo di connessione inferiore ai tempi di evacuazione medi, si ottengono i tempi di evacuazione desiderati. Questo può modellare nella realtà le seguenti situazioni: Se il pedone eletto non riesce a trovare il modo per uscire, anzi allontana dall’uscita i pedoni che a lui si riferiscono, questi ultimi smettono di referenziarlo e pongono come loro riferimento altri pedoni eletti. Viceversa se il pedone referenziato riesce quasi subito a trovare l’uscita e a portare il resto dei pedoni nelle sue immediate vicinanze, essi non avendo più bisogno del suo aiuto smettono di referenziarlo e si avviano da soli verso l’uscita ormai prossima. Un approfondimento futuro delle nostre ricerche potrebbe riguardare l’utilizzo di un modello con la medesima idea di base, ma con una geometria diversa tesa a rappresentare meglio le situazioni reali. Si potrebbe anche modificare il modello, in modo da assegnare ad ogni pedone eletto un proprio raggio di connessione diverso dagli altri. Inoltre si può ricorrere a funzionalità già presenti nel programma (ma non utilizzate), come la possibilità di aumentare le dimensioni della porta e di verificare le dimensioni ideali di una “porta antipanico”, oppure di aumentare il numero di porte. Si possono effettuare altre simulazioni provando a definire un “modello con leader”, in cui cioè ci sono dei pedoni che conoscono esattamente la posizione dell’uscita.

82 Sviluppi futuri TECNOLOGIE MILITARI Gli Stealth possono essere pilotati unendo al pilota automatico sistemi di controllo esterni (radiocomando). Considerando le loro potenzialità belliche diventa rilevante evitare infiltraggi durante tale procedura mediante sistemi di crittografia avanzata.

83 Sviluppi futuri ROBOTICA
Protezione e cifratura di reti small-world fra robot durante l’esplorazione di territori sconosciuti o inospitali per l’uomo .

84 Sviluppi futuri INFORMATICA MEDICA -Biometria
-Stegano-crittografia del DNA -Sistemi neurali

85 Fine: La storia ci insegna che nulla rimane per troppo tempo
Conclusioni Noi abbiamo studiato un caso specifico di processo di evacuazione basato sugli automi cellulari utilizzando un’idea simile alla “chemiotassi”. Per implementare il modello abbiamo ricorso ad alcuni artifici fra cui l’introduzione di due campi: il campo statico ed il campo dinamico. Ci siamo quindi proposti di analizzare l’influenza dei diversi parametri del modello sui tempi di evacuazione. Dai risultati ottenuti con le simulazioni è emerso che per valori di campo statico predominanti, i pedoni sceglievano il percorso più breve verso l’uscita. Per ->0, essi non avevano conoscenza della geometria della stanza quindi raggiungevano l’uscita solo casualmente. Viceversa per valori predominanti di campo dinamico, i pedoni avevano la tendenza a seguire gli altri disinteressandosi dell’uscita. La situazione di panico si verificava per <<1 e >>1 . I tempi di evacuazione minimi sono stati raggiunti mediante un’opportuna combinazione per ogni pedone della conoscenza dell’uscita e del movimento dei pedoni circostanti Validato il modello di base, alle connessioni locali abbiamo aggiunto anche le connessioni di lungo raggio in cui il moto dei pedoni veniva influenzato anche da altri posti a determinate distanze. Quindi per basse densità di particelle (30%), le connessioni di lungo raggio migliorano notevolmente i tempi di evacuazione della stanza introducendo un comportamento tipico alle reti smallworld . Questi ultimi si dimostrano molto sensibili anche a basse percentuali di particelle elette, consentendo l’utilizzo di percentuali comprese nella fascia del 5-10%. Solo mantenendo il raggio minimo d’interazione ugulae a meta delle dimensioni della stanza ed un periodo di connessione inferiore ai tempi di evacuazione medi, si ottengono i tempi di evacuazione desiderati. Questo può modellare nella realtà le seguenti situazioni: Se il pedone eletto non riesce a trovare il modo per uscire, anzi allontana dall’uscita i pedoni che a lui si riferiscono, questi ultimi smettono di referenziarlo e pongono come loro riferimento altri pedoni eletti. Viceversa se il pedone referenziato riesce quasi subito a trovare l’uscita e a portare il resto dei pedoni nelle sue immediate vicinanze, essi non avendo più bisogno del suo aiuto smettono di referenziarlo e si avviano da soli verso l’uscita ormai prossima. Un approfondimento futuro delle nostre ricerche potrebbe riguardare l’utilizzo di un modello con la medesima idea di base, ma con una geometria diversa tesa a rappresentare meglio le situazioni reali. Si potrebbe anche modificare il modello, in modo da assegnare ad ogni pedone eletto un proprio raggio di connessione diverso dagli altri. Inoltre si può ricorrere a funzionalità già presenti nel programma (ma non utilizzate), come la possibilità di aumentare le dimensioni della porta e di verificare le dimensioni ideali di una “porta antipanico”, oppure di aumentare il numero di porte. Si possono effettuare altre simulazioni provando a definire un “modello con leader”, in cui cioè ci sono dei pedoni che conoscono esattamente la posizione dell’uscita.


Scaricare ppt "Sicurezza dei Sistemi Informatici Crittografia - Steganografia"

Presentazioni simili


Annunci Google