Note per il corso di Sicurezza delle Reti. Michele Boreale Dipartimento di Sistemi e Informatica Firenze

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Note per il corso di Sicurezza delle Reti. Michele Boreale Dipartimento di Sistemi e Informatica Firenze"

Transcript

1 Note per il corso di Sicurezza delle Reti Michele Boreale Dipartimento di Sistemi e Informatica Firenze 14 luglio 2003

2 Indice I Introduzione alla Network Security 3 1 Una panoramica Servizi, attacchi e meccanismi Servizi Attacchi Meccanismi Un modello per la Network Security II Crittografia a chiave condivisa 11 2 Introduzione Terminologia Criptanalisi Sicurezza dei cifrari Tecniche classiche di crittografia Cifrari a sostituzione Cifrari monoalfabetici Cifrari monoalfabetici a blocchi Cifrari polialfabetici Criptanalisi del cifrario di Vigenère Determinazione della lunghezza della chiave Determinazione della chiave Cifrari perfetti Cifrari perfetti secondo Shannon One Time Pad Cifrari di Feistel Cifrari a blocchi Lo schema di Feistel i

3 5 Data Encryption Standard Struttura di DES Dettagli di un singolo round Generazione delle sottochiavi Decryption con DES Considerazioni sulle scelte progettuali di DES Uso delle chiavi a 56 bit Caratteristiche dell algoritmo Cenni di criptanalisi lineare Modi di operazione di DES Electronic Codebook Mode Cipher Block Chaining Mode Cipher Feedback Mode Output Feedback Mode Alternative a DES Double DES Triple DES Altri cifrari simmetrici Confidenzialità e gestione della chiave condivisa Link encryption vs. end-to-end encryption Distribuzione della chiave segreta Durata delle chiavi III Crittografia a chiave pubblica 67 7 Introduzione 69 8 Teoria dei numeri Concetti di base Operazioni modulo n I teoremi di Fermat e di Eulero Algoritmo di Euclide Algoritmo di esponenziazione veloce Il Teorema Cinese del Resto Generazione di numeri primi e test di primalità Il logaritmo discreto ii

4 9 Il sistema RSA Parametri Encryption e decryption Aspetti computazionali Resistenza di RSA Attacchi di forza bruta Attacchi matematici Attacchi basati sul tempo Attacchi chosen-plaintext Alternative a RSA Il sistema El Gamal Lo Standard DSS (Digital Signature Standard) Gestione della chiave con la crittografia a chiave pubblica Gestione della chiave pubblica Annuncio pubblico Directory pubblica Public-Key Authority (PKA) Certificati Scambio di chiavi condivise Scambio della chiave di Diffie-Hellman IV Applicazioni Pretty Good Privacy (PGP) Funzionalità Firma digitale Confidenzialità Compressione Compatibilità Segmentazione Gestione delle chiavi in PGP Generazione della one-time key Identificatori di chiavi pubbliche Anelli di chiavi Uso degli anelli Uso della fiducia iii

5 13 Internet Protocol Security Authentication Header (AH) Anti-Replay Tunnel e Transport Mode Encapsulating Security Payload (ESP) Formato del pacchetto ESP Tunnel e Transport Mode Combinazioni di SA Gestione della chiave e negoziazione di SA Oakley Web Security Socket Security Layer (SSL) SSL Record Protocol Alert Protocol Change Cipher Spec Protocol Handshake Protocol Secure Electronic Transaction (SET) Requisiti Caratteristiche Partecipanti Firma duale Processo di pagamento iv

6 Nota Queste note nascono come trascrizione delle lezioni del corso Sicurezza delle Reti, tenuto per la Laurea in Informatica dell Università di Firenze, nell anno accademico Le note non si intendono in alcun modo sostitutive dei libri di testo consigliati e riportati in bibliografia, in primis l ottimo Cryptography and Network Security: Principles and Practices di W. Stallings, del quale queste note riprendono l impostazione generale. Piuttosto, esse sono da intendersi come guida e stimolo allo studio sui libri di testo. Osservazioni, errori, omissioni etc. vanno segnalati a: Michele Boreale, boreale@dsi.unifi.it. Struttura delle note Le note sono suddivise in tre parti. La prima parte consta di un unico capitolo, che è una panoramica sui concetti della network security e allo stesso tempo introduce un pò di terminologia. Nella seconda parte si prendono in esame vari aspetti legati alla crittografia a chiave condivisa, comprese le tecniche classiche e le problematiche relative alla distribuzione della chiave segreta. Nella seconda parte si studia la crittografia a chiave pubblica, ivi comprese le basi di teoria dei numeri. Si sono inclusi in questa parte anche i meccanismi di autenticazione, come le funzione hash one-way, e le problematiche di gestione della chiave pubblica. Nella terza e ultima parte si studiano alcune applicazioni delle tecniche studiate alla sicurezza nella rete Internet. Si sono inseriti diversi esercizi, il cui svolgimento dovrebbe essere considerato parte integrante dello studio della materia. Ringraziamenti A Marco Corrado, Alessandro Daidone, Dario Di Minno e Marcello Faugiana, studenti del corso di Sistemi di Elaborazione: Sicurezza (come si chiamava SR nel vecchio ordinamento) nell a.a , si deve una prima stesura di questi appunti. Senza il loro prezioso contributo queste note non avrebbero probabilmente visto la luce. 1

7 2

8 Parte I Introduzione alla Network Security 3

9

10 Capitolo 1 Una panoramica Al giorno d oggi, ogni organizzazione gestisce i propri dati servendosi di sistemi informativi. L accesso a questi dati da parte di singoli o di altri sistemi prevede la loro trasmissione attraverso reti di comunicazione, locali o su larga scala, che sono per loro natura insicure, cioè soggette ad intrusioni da parte di malintenzionati. La sicurezza delle reti (in inglese, network security) studia le tecniche, e i concetti alla loro base, che permettono di prevenire, rilevare e correggere violazioni della sicurezza nella trasmissione dei dati. Consideriamo quindi la network security come distinta dalla system security, che si occupa della protezione dei dati locali ai singoli sistemi informativi. Tuttavia, è bene notare che non sempre è possibile tracciare un confine netto tra i due campi di studio: ad esempio, i dati memorizzati in un PC possono essere attaccati da un virus ricevuto attraverso un messaggio di posta elettronica. Vediamo ora qualche convenzione che adotteremo nel resto di questi appunti: indichiamo con M, M 1,... i messaggi che i diversi sistemi si scambiano tra loro; indichiamo con A, B,... i sistemi o agenti che si scambiano informazioni; non facciamo distinzione fra messaggio, documento, file,... : per noi si tratta semplicemente di informazioni che vanno protette; indichiamo con K, K 1,... le chiavi utilizzate per cifrare informazioni; indichiamo con C, C 1,... i messaggi cifrati scambiati tra i sistemi. Vediamo subito alcuni esempi tipici di violazione di sicurezza, che riprenderemo in seguito per motivare alcune definizioni. 5

11 Esempio A trasmette a B un file con informazioni che devono essere mantenute segrete (ad esempio numeri di carta di credito), ed un terzo sistema C, non autorizzato, intercetta il messaggio e legge le informazioni. 2. A trasmette ad B un informazione M, contenente diritti di accesso ad un certo sistema. C intercetta il messaggio lo modifica in M, alterando a suo piacere i diritti di accesso. 3. C comunica con B, ma spacciandosi per A. 4. Un investitore A compra delle azioni mandando un ordine di acquisto al suo agente di borsa B. Il titolo acquistato crolla, e A afferma di non aver mai mandato quell ordine. 5. Qualcuno non autorizzato, come un impiegato appena licenziato, accede al sistema informativo per distruggere dei dati importanti. 6. Qualcuno impedisce il normale funzionamento di un servizio di rete, sopprimendo i messaggi del fornitore del servizio, o sovraccaricandolo di messaggi, in modo da renderlo inservibile. 1.1 Servizi, attacchi e meccanismi Per poter ragionare in modo sistematico di questi problemi, introduciamo un poò di terminologia, presa a prestito da [Sta03]. Nella network security si possono distinguere i seguenti concetti: 1. servizi offerti; 2. attacchi sui dati trasmessi; 3. meccanismi di difesa. Tali concetti vengono analizzati di seguito Servizi I servizi definiscono il tipo di protezione dei dati che si vuole ottenere. Ecco una possibile classificazione: 6

12 Confidenzialità (o Segretezza): Garantisce che i dati siano accessibili in lettura solo alle parti autorizzate; viene violata nell esempio 1.1(1). Integrità: Assicura che un messaggio venga trasmesso senza subire modifiche da parte di terzi non autorizzati; viene violata nell esempio 1.1(2). Autenticazione: Assicura che l origine di un messaggio sia correttamente identificata, e che non sia stata falsificata; viene violata nell esempio 1.1(3). Non-ripudiabilità: Garantisce che nè il mittente nè il destinatario potranno negare di aver trasmesso o ricevuto un messaggio; viene violata nell esempio 1.1(4). Controllo degli accessi: Assicura che l accesso esterno ai dati sia in ogni momento ristretto ai soli autorizzati; viene violata nell esempio 1.1(5). Disponibilità: Garantisce che il sistema sia disponibile agli autorizzati ogni qualvolta si renda necessario; viene violata nell esempio 1.1(6). Gli ultimi due tipi di servizi sono in effetti parte integrante della system security: ignoreremo per lo più questi servizi e le relative problematiche nel resto di queste note Attacchi Gli attacchi definiscono i modi in cui un servizio può essere violato. Una prima classificazione li suddivide in passivi e attivi. Attacchi passivi Un entità non autorizzata, l attaccante, monitora le trasmissioni fra due entità. L obiettivo, per l attaccante, è quello di ottenere informazioni su ciò che si sta trasmettendo. Questo può essere fatto o scoprendo il contenuto del messaggio (in inglese disclosure), o attraverso la traffic analysis. Per traffic analysis si intende un insieme di tecniche che, pur non svelando il contenuto del messaggio, forniscono all attaccante informazioni potenzialmente utili come il mittente, il destinatario, la lunghezza di un messaggio, un analisi statistica sul contenuto, o altro ancora. Attacchi attivi Gli attacchi attivi presuppongono che l attaccante sia in grado di modificare il normale flusso di informazioni fra le entità che comunicano. A livello del singolo messaggio trasmesso, questo può avvenire essenzialmete in tre modi: 7

13 1. Interruption: il messaggio viene soppresso. 2. Modification: il messaggio viene modificato. 3. Fabrication: un nuovo messaggio viene creato e immesso nella rete. Gli attacchi attivi sono tipicamente diretti a violare l autenticazione e l integrità. Tipicamente, l attaccante cerca di falsificare la propria identità (masquerade) nel colloquiare con un sistema, oppure di replicare vecchi messaggi di utenti legittimi per trarre in inganno il sistema (replay). Confrontando le caratteristiche di attacchi passivi e attivi, possiamo dire che i primi sono difficili da rilevare, ma relativamente facili da prevenire, mentre i secondi sono difficili da prevenire, ma più facili da rilevare Meccanismi I meccanismi, ovvero le tecniche che servono a prevenire gli attacchi e quindi a garantire i servizi, sono principalmente rappresentati da certe trasformazioni dei messaggi, come le funzioni di encryption (cifratura), hash e firma digitale. Tratteremo queste trasformazioni in dettaglio nel seguito di queste note. Per il momento, possiamo dire che i meccanismi di cifratura hanno lo scopo di rendere inintelleggibile il contenuto di un messaggio a chi non sia in possesso di una opportuna chiave. La cifratura viene perciò impiegata per garantire la confidenzialità. Accenniamo qui anche al fatto che, come vedremo, esistono due tipi fondamentali di funzioni di cifratura: convenzionale (o a chiave condivisa) e a chiave pubblica. Tipicamente, i due tipi di cifratura vanno impiegati in una opportuna combinazione per garantire sia la sicurezza che l efficienza di un servizio. Le funzioni di hash servono a generare vere e proprie impronte digitali uniche e non falsificabili di un messaggio. Queste impronte sono spesso usate in combinazione con i meccanisimi di cifratura per produrre dei particolari codici che, concatenati ad un documento elettronico, garantiscono al ricevente l autenticità del documento o assumono vero e proprio valore di firma, da parte del mittente, del documento stesso. Questo è, a grandi linee, il meccanismo della firma digitale, che viene usata per garantire l autenticazione e la non ripudiabilità dei messaggi. A livello più alto, queste funzioni vanno usate all interno di opportuni protocolli, di cui vedremo in seguito molti esempi. I tipi più comuni di protocolli servono a distribuire le chiavi per le funzioni di cifratura ai vari 8

14 partecipanti ad una comunicazione (key management), o a garantire la loro corretta identificazione (autenticazione). 1.2 Un modello per la Network Security Per quanto detto fino a questo momento, quando si affronta il progetto di un servizio bisogna sempre considerare i seguenti ingredienti fondamentali: 1. I nodi A, B,... che si scambiano i messaggi M, M, Una funzione di trasformazione T la sua inversa T 1. Un esempio sono gli algoritmi di cifratura e decifrazione a chiave condivisa. 3. Un algoritmo per generare un segreto S, che, tipicamente, servirà da chiave. 4. I metodi per distribuire S, in maniera sicura, ai nodi coinvolti nella comunicazione. 5. Protocolli che facciano uso di T e di T 1 insieme a S, per garantire il particolare servizio. Il modello concettuale che useremo nello studio delle tecniche di sicurezza viene rappresentato nella figura 1.1. Il nodo A vuole spedire un messaggio M al nodo B, usando una trasformazione T. Il messaggio viene spedito su un canale, sul quale può essersi messo in ascolto un attaccante, che può anche interrompere o modificare il normale flusso di comunicazione. Il nodo B, per recuperare M, applica T 1, che è l inverso della trasformazione usata da A. Può essere richiesto che i due nodi condividano un segreto S (tipicamente una chiave condivisa), generato e distribuito con l aiuto di un server fidato. 9

15 Server fidato Nodo A canale logico/fisico Nodo B M S T Attaccante T 1 M S Figura 1.1: Modello per la network security. 10

16 Parte II Crittografia a chiave condivisa 11

17

18 Capitolo 2 Introduzione 2.1 Terminologia Introduciamo ora un modello e un pò di terminologia per la crittografia a chiave condivisa. Il modello è rappresentato in Figura 2.1. L idea è che il mittente e il destinatario di un messaggio condividono una chiave segreta K, che viene usata per cifrare i messaggi in partenza e decifare quelli in arrivo. Più in dettaglio, sia A un alfabeto, ad esempio l alfabeto delle 26 lettere oppure A = {0, 1}. Consideriamo sequenze X, Y, K,... di questo tipo: X = (X 1,..., X l ) plaintext (X i A) Y = (Y 1,..., Y m ) ciphertext (Y i A) K = (K 1,..., K n ) chiave (K i A) dove plaintext è un messaggio in chiaro, e ciphertext un messaggio cifrato ottenuto cifrando un plaintext con la chiave K, condivisa fra due nodi A e B. Nel modello è previsto anche un attaccante, che produce delle stime X e K, rispettivamente del messaggio X e della chiave K. Dati l insieme K delle chiavi e P dei plaintext, si possono definire delle funzioni di encryption E : K P C e di decryption D : K C P. In questi appunti verrà usata la notazione E K [X] per indicare E(K, X) e D K [Y ] per indicare D(K, Y ). Devono valere le seguenti proprietà: 1. Per ogni chiave K D K = E 1 K 13

19 cioè D K [ EK [X] ] = X. Quindi, per ogni K, E K deve essere iniettiva, cioè X, X con X X E K [X] E K [X ]. 2. Data la chiave K, sia E K che D K devono essere facili da calcolare. 3. Viceversa, dato solo il ciphertext Y = E K [X], deve essere difficile risalire a X e a K. In altre parole, la sicurezza del sistema deve dipendere solo dalla segretezza della chiave K, per la quale devono essere previsti opportuni metodi di distribuzione ai vari nodi. Il fatto che la sicurezza dello schema non dipenda dalla conoscenza degli algoritmi D ed E, che si suppongono noti all attaccante, è un concetto fondamentale, alla base della crittografia moderna. Questo concetto ha reso possibile lo sviluppo di hardware e software dedicati efficienti e a basso costo. Infine, notiamo che non abbiamo qui precisato cosa si debba intendere per facile e difficile. In effetti, si possono dare delle definizioni ben precise, cui accenneremo. Per ora ci basta sapere che, nella crittografia moderna, facile vuol dire computazionalmente facile, ovvero calcolabile con una quantità ragionevole di risorse. Difficile al contrario significa che occorre impiegare una quantità talmente elevata di risorse da rendere l operazione non fattibile o non conveniente per l attaccante. 2.2 Criptanalisi Per criptanalisi si intende genericamente un processo mediante il quale, nel modello prima illustrato, l attaccante O cerca di scoprire il messaggio originale X, la chiave K o ambedue. La criptanalisi è, in generale, progettata per sfruttare il fatto che nel testo cifrato possono resistere tracce della struttura o del pattern del testo originario. Si possono classificare i vari tipi di attacchi criptanalitici secondo il tipo di informazione che è disponibile all analista, nella maniera seguente: 14

20 Attaccante ^ X ^ K Sorgente del messaggio X algoritmo di encryption Y=E k [X] algoritmo di decryption X=D k [Y] Destinazione K K canale sicuro Generazione chiave Figura 2.1: Modello per la crittografia a chiave singola. Nome Disponibile all analista 1 Ciphertext only il ciphertext da decifrare (Y = E K [X]) 2 Known plaintext il ciphertext da decifrare e coppie X i, E K [X i ] formate con K. 3 Chosen plaintext il ciphertext da decifrare e coppie X i, E K [X i ] con gli X i scelti dall analista. 4 Chosen ciphertext il ciphertext da decifrare e coppie D K [Y i ], Y i con gli Y i scelti dall analista. Il ciphertext only è il tipo di attacco più facile dal quale difendersi. Di solito sono attacchi di tipo forza bruta, in cui O prova tutte le chiavi possibili su Y, fino a ottenere qualcosa che assomiglia a un plaintext. Questo presuppone che O possieda qualche informazione sul tipo del plaintext (testo inglese, sorgente Java o altro). Questo attacco comunque non è praticabile se lo spazio delle chiavi è molto grande. Quando l analista possiede qualche coppia di plaintext e testo cifrato (questo può succedere, per esempio, se l analista sa che i file trasmessi hanno un certo header noto, come in un file PostScript o in un sorgente Java) può usarli per estrarre una qualche relazione generale tra il ciphertext, la chiave e il plaintext: siamo difronte ad un attacco di tipo known plaintext. La 15

21 relazione congetturata può aiutare a limitare lo spazio di ricerca (si veda ad esempio, la criptanalisi lineare, [Sch96a]). Quando l analista ha anche solo temporaneamente accesso al meccanismo di encryption, può attuare un attacco di tipo chosen plaintext (questo è il caso della criptanalisi differenziale, [Sch96a]). Quando invece l analista ha accesso al meccanismo di decryption, può condurre un attacco di tipo chosen ciphertext. 2.3 Sicurezza dei cifrari Dato uno schema di encryption, si possono considerare due tipi di sicurezza: 1. Uno schema è incondizionatamente sicuro (cifrario perfetto) se non c è alcun modo per risalire da un testo cifrato a quello in chiaro corrispondente, indipendentemente dalla quantità di testo cifrato e dalle risorse computazionali disponibili per l attaccante. Si può quindi dire che non c è alcuna correlazione fra testo originale e cifrato. Questo concetto fu formalizzato da Shannon nel 1948 in termini probabilistici. Se vediamo il plaintext X e il ciphertext Y come variabili aleatorie, questa condizione si può scrivere come: x, y P[ X = x Y = y ] = P[ X = x ]. Ovvero: la probabilità che X valga x, sapendo che Y vale y e uguale alla probabilità che X vale x. Questa formula esprime il concetto che osservare un ciphertext non dà all opponente O alcuna informazione sul plaintext. L unica cosa che O può fare è indovinare il plaintext scegliendolo a caso. Vedremo un esempio di tale schema, detto one time pad. 2. Uno schema è computazionalmente sicuro se il costo in termini di risorse di calcolo per forzare il cifrario eccede il valore dell informazione, oppure se il tempo per forzare lo schema eccede il lasso di tempo in cui l informazione può essere utile. Sebbene gli schemi del primo tipo, quelli incodizionatamente sicuri, siano in teoria da preferire, vedremo che sono difficili da realizzare in pratica, per cui quasi tutti gli schemi in uso oggi sono (o aspirano ad essere) solo computazionalmente sicuri. Il problema degli schemi computazionalmente sicuri è che il tempo o le risorse necessarie per forzare un cifrario è difficile da stimare. Consideriamo un caso specifico. 16

22 Esempio 2.1. Il cifrario a chiave singola DES (Data Encryption System) è stato introdotto nel 1976 ed è di gran lunga il più usato. Utilizza chiavi di 56 bit. Nel 1976, si valutava che questa lunghezza fosse sufficiente a mettere DES al ripara da attacchi di tipo forza bruta. Difatti, assumendo un tempo ragionevole di 1 encryption/µs, ci vorrebbero in media 2 55 µs, più di un migliaio di anni, per trovare la chiave. I progressi tecnologici hanno però reso possibile la realizzazione ad un costo ragionevole di hardware dedicato che esegue più encryption in parallelo: si può arrivare a 10 6 encryption/µs, e quindi basterebbero in media 10,01 ore per trovare la chiave. Di conseguenza DES non dovrebbe più essere considerato computazionalmente sicuro (e di fatti non lo è). Nel prossimo capitolo prenderemo in esame due tipi di cifrari storici, quelli a sostituzione e il one-time-pad, che hanno avuto una grande rilevanza nello sviluppo della crittografia moderna. Ne analizzeremo punti di forza e debolezze. Questo ci condurrà, nel capitolo successivo, a introdurre la classe dei cifrari di Feistel, su cui la crittografia moderna a chiave condivisa è basata. Quindi analizzeremo il Data Encryption Standard (DES), che è un cifrario di questa classe ed è di gran lunga quello più usato. Nel capitolo conclusivo di questa parte analizzeremo alcune questioni legate alla distribuzione delle chiavi e alla confidenzialità. 17

23 18

24 Capitolo 3 Tecniche classiche di crittografia 3.1 Cifrari a sostituzione I cifrari a sostituzione sono quelli in cui ogni lettera (o blocco di bit) del plaintext viene sostituita da un altra lettera (o blocco di bit), determinata in base alla chiave. Ad esempio, se assegniamo ad ogni lettera un numero (a = 0, b = 1,..., z = 25) e selezioniamo una chiave K {1,..., 25}, possiamo definire: { E K [ p ] = ( p + K ) mod 26 D K [ q ] = ( q K ) mod 26. Ad esempio, con piccolo abuso di notazione, si può scrivere: E 4 [ message ] = qiwweki. Questo tipo di cifratura viene a volte chiamato shift encryption 1, perchè il ciphertext si ottiene semplicemente spostando in avanti di K posizioni nell alfabeto ciascuna lettera del plaintext, dove K è il valore della chiave. Dal momento che ci sono 25 possibili chiavi non banali (ignoriamo la chiave K = 0, che lascia il plaintext invariato), è facilissimo rompere questo schema con un attacco forza bruta, purchè si conosca la natura del testo in chiaro Cifrari monoalfabetici Questo problema viene risolto da un cifrario a sostituzione monoalfabetico, in cui ogni lettera può essere sostituita con qualsiasi altra, secondo una permu- 1 Il cifrario usato da Giulio Cesare corrisponde a fissare K = 3. 19

25 tazione fissata dell alfabeto. La chiave diventa così la permutazione stessa, e dunque abbiamo 26! possibili chiavi, un numero che rende impossibile l attacco forza bruta. I cifrari a sostituzione presentano però un altro problema: essi sono facili da rompere ricorrendo a tecniche statistiche, e a patto di avere sufficiente quantità di testo cifrato. Per le lingue parlate, infatti, la frequenza di ogni lettera è ben nota (ad esempio, nella lingua inglese le sei lettere più frequenti sono, nell ordine: E, T, R, N, I, O). Supponiamo che l analista conosca la natura del testo originario, ad esempio un testo in lingua inglese. Si procede nel modo seguente: Si determina la frequenza di ciascuna lettera nel testo cifrato. Siano a 0, a 1,..., a 25 le lettere in ordine decrescente di frequenza; Si confrontano queste frequenze con la distribuzione standard delle lettere in Inglese: E : 12,75 % T : 9,25 % R : 8,5 % I, N : 7,75 %. Se il testo cifrato è abbastanza lungo, possiamo aspettarci che a 0 sia la codifica di E, a 1 la codifica di T, e così via. Se non c è abbastanza differenza fra le frequenze di a 0, a 1,... possiamo procedere per tentativi. Un altra possibilità è quella di considerare la frequenza dei digrammi (sequenze di 2 lettere) della lingua inglese, procedendo come per le lettere singole (ad esempio, in inglese il digramma più frequente è th ). In ogni caso, se il testo cifrato è lungo qualche centinaio di caratteri, questo metodo ci porta rapidamente alla soluzione. Il problema qui è che il testo cifrato riflette fedelmente la frequenza delle singole lettere del testo in chiaro. Per nascondere questa frequenza ci sono due possibilità: Si cifrano più lettere alla volta (digrammi, trigrammi e, in generale, q-grammi): cifrari monoalfabetici a blocchi. Si usano più cifrari monoalfabetici a rotazione: cifrari polialfabetici Cifrari monoalfabetici a blocchi La distribuzione delle frequenze dei q-grammi è molto più piatta che per le lettere singole. Inoltre, ci sono molti più q-grammi che lettere singole (ad 20

26 esempio i digrammi sono = 676); quindi per accumulare evidenza statistica occorre molto più testo cifrato. Un cifrario di questo tipo è il Playfair, usato dalle forze armate inglesi fino alla prima guerra mondiale. Tale cifrario fa uso dei digrammi; tuttavia è piuttosto facile da rompere con l aiuto di un calcolatore, perché lascia intatta molta della struttura statistica del testo originario. Un altro cifrario interessante è quello di Hill. Il cifrario di Hill Il cifrario di Hill (1929) funziona nel seguente modo: dato un testo da cifrare, si considerano m lettere alla volta, con m 2, e si sostituiscono con m lettere di ciphertext. La sostituzione è determinata da un sistema di m equazioni lineari: C 1 = (K 11 p K 1m p m ) mod 26. C m = (K m1 p K mm p m ) mod 26. Se definiamo C = C 1. C m, K = K 11 K 1m..... K m1 K mm, P = possiamo esprimere il sistema in forma matriciale come segue (tutte le operazioni si intendono modulo 26): { E K [ P ] = C = K P D K [ C ] = K 1 C = K 1 K P = P dove K 1 è la matrice inversa modulo 26 di K, ovvero (K K 1 ) mod 26 = (K 1 K) mod 26 = I. Dunque la chiave K è data da una matrice di interi, che deve essere invertibile (mod 26), altrimenti E K non sarebbe iniettiva. Se prendiamo m grande, allora il cifrario di Hill è abbastanza sicuro contro attacchi ciphertext only, perché il numero degli m-grammi possibili diventa troppo grande per fare un analisi statistica. Tuttavia, Hill è vulnerabile ad un attacco known plaintext. Infatti, si supponga che un attaccante abbia a disposizione m coppie di plaintext e ciphertext: P 1, C 1 = K P 1. P m, C m = K P m. 21 p 1. p m

27 Se definiamo le matrici P e C nel modo seguente: P = [P 1... P m ] C = [C 1... C m ] sappiamo che C = (K P ) mod 26. Se P è invertibile (se non lo è, occorre raccogliere altre coppie P i, C i ), l attaccante può calcolare: e quindi scoprire la chiave Cifrari polialfabetici C P 1 = K P P 1 = K Un altro modo per migliorare le tecniche monoalfabetiche è utilizzare sostituzioni monoalfabetiche diverse all interno di uno stesso plaintext. In questo caso, due lettere uguali nel ciphertext non corrispondono in generale a due lettere uguali nel plaintext. Questo complica notevolmente le tecniche di criptoanalisi basate sulla frequenza delle lettere. Tali schemi prendono il nome di cifrari polialfabetici e consistono di: 1. un insieme di cifrari monoalfabetici; 2. una regola in base alla quale la chiave determina quale cifrario usare per ogni lettera del plaintext. Il cifrario di Vigenère Un esempio di cifrario polialfabetico, in cui: 1. si usano i 26 caratteri alfabetici; 2. per ogni lettera del plaintext, si considera una lettera della chiave, che ci dice quale cifrario usare. Se indichiamo con m la lunghezza della chiave K, con P i, C i, K i la i-esima lettera di plaintext, ciphertext e chiave, rispettivamente, contate a partire da 0, le regole per encryption e decryption sono: Esempio 3.1. E K [P i ] = P i + K i mod m mod 26 D K [C i ] = C i K i mod m mod

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI

APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI APPUNTI DI MATEMATICA LE FRAZIONI ALGEBRICHE ALESSANDRO BOCCONI Indice 1 Le frazioni algebriche 1.1 Il minimo comune multiplo e il Massimo Comun Divisore fra polinomi........ 1. Le frazioni algebriche....................................

Dettagli

RETI DI CALCOLATORI. Crittografia. La crittografia

RETI DI CALCOLATORI. Crittografia. La crittografia RETI DI CALCOLATORI Crittografia La crittografia La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice ed è il fondamento su cui si basano i meccanismi di autenticazione,

Dettagli

Crittografia. Appunti a cura del prof. Ing. Mario Catalano

Crittografia. Appunti a cura del prof. Ing. Mario Catalano Crittografia Appunti a cura del prof. Ing. Mario Catalano La crittografia La crittografia è la scienza che studia la scrittura e la lettura di messaggi in codice. Solitamente, i meccanismi crittografici

Dettagli

Dimensione di uno Spazio vettoriale

Dimensione di uno Spazio vettoriale Capitolo 4 Dimensione di uno Spazio vettoriale 4.1 Introduzione Dedichiamo questo capitolo ad un concetto fondamentale in algebra lineare: la dimensione di uno spazio vettoriale. Daremo una definizione

Dettagli

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo.

Siamo così arrivati all aritmetica modulare, ma anche a individuare alcuni aspetti di come funziona l aritmetica del calcolatore come vedremo. DALLE PESATE ALL ARITMETICA FINITA IN BASE 2 Si è trovato, partendo da un problema concreto, che con la base 2, utilizzando alcune potenze della base, operando con solo addizioni, posso ottenere tutti

Dettagli

! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette

! La crittoanalisi è invece la scienza che cerca di aggirare o superare le protezioni crittografiche, accedendo alle informazioni protette Crittografia Cenni Damiano Carra Università degli Studi di Verona Dipartimento di Informatica La crittografia! Scienza che si occupa di proteggere l informazione rendendola sicura, in modo che un utente

Dettagli

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0

4 3 4 = 4 x 10 2 + 3 x 10 1 + 4 x 10 0 aaa 10 2 10 1 10 0 Rappresentazione dei numeri I numeri che siamo abituati ad utilizzare sono espressi utilizzando il sistema di numerazione decimale, che si chiama così perché utilizza 0 cifre (0,,2,3,4,5,6,7,8,9). Si dice

Dettagli

Informatica per la comunicazione" - lezione 13 -

Informatica per la comunicazione - lezione 13 - Informatica per la comunicazione" - lezione 13 - Funzionamento di una password" 1: l utente tramite il suo browser richiede l accesso a una pagina del server; 2: il server richiede il nome utente e la

Dettagli

Sommario. Introduzione alla Sicurezza Web

Sommario. Introduzione alla Sicurezza Web Sommario Introduzione alla Sicurezza Web Considerazioni generali IPSec Secure Socket Layer (SSL) e Transport Layer Security (TLS) Secure Electronic Transaction (SET) Introduzione alla crittografia Introduzione

Dettagli

risulta (x) = 1 se x < 0.

risulta (x) = 1 se x < 0. Questo file si pone come obiettivo quello di mostrarvi come lo studio di una funzione reale di una variabile reale, nella cui espressione compare un qualche valore assoluto, possa essere svolto senza necessariamente

Dettagli

Lezione 9: Cambio di base

Lezione 9: Cambio di base Lezione 9: Cambio di base In questa lezione vogliamo affrontare uno degli argomenti piu ostici per lo studente e cioè il cambio di base all interno di uno spazio vettoriale, inoltre cercheremo di capire

Dettagli

Database. Si ringrazia Marco Bertini per le slides

Database. Si ringrazia Marco Bertini per le slides Database Si ringrazia Marco Bertini per le slides Obiettivo Concetti base dati e informazioni cos è un database terminologia Modelli organizzativi flat file database relazionali Principi e linee guida

Dettagli

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer

SSL: applicazioni telematiche SSL SSL SSL. E-commerce Trading on-line Internet banking... Secure Socket Layer : applicazioni telematiche Secure Socket Layer E-commerce Trading on-line Internet banking... Protocollo proposto dalla Netscape Communications Corporation Garantisce confidenzialità e affidabilità delle

Dettagli

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da

f(x) = 1 x. Il dominio di questa funzione è il sottoinsieme proprio di R dato da Data una funzione reale f di variabile reale x, definita su un sottoinsieme proprio D f di R (con questo voglio dire che il dominio di f è un sottoinsieme di R che non coincide con tutto R), ci si chiede

Dettagli

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1

LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 LA TRASMISSIONE DELLE INFORMAZIONI QUARTA PARTE 1 I CODICI 1 IL CODICE BCD 1 Somma in BCD 2 Sottrazione BCD 5 IL CODICE ECCESSO 3 20 La trasmissione delle informazioni Quarta Parte I codici Il codice BCD

Dettagli

Reti di Telecomunicazione Lezione 8

Reti di Telecomunicazione Lezione 8 Reti di Telecomunicazione Lezione 8 Marco Benini Corso di Laurea in Informatica marco.benini@uninsubria.it Livello di trasporto Programma della lezione relazione tra lo strato di trasporto e lo strato

Dettagli

La Firma Digitale La sperimentazione nel Comune di Cuneo. Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo

La Firma Digitale La sperimentazione nel Comune di Cuneo. Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo La Firma Digitale La sperimentazione nel Comune di Cuneo Pier Angelo Mariani Settore Elaborazione Dati Comune di Cuneo Perchè questa presentazione Il Comune di Cuneo, aderente alla RUPAR, ha ricevuto due

Dettagli

Strutturazione logica dei dati: i file

Strutturazione logica dei dati: i file Strutturazione logica dei dati: i file Informazioni più complesse possono essere composte a partire da informazioni elementari Esempio di una banca: supponiamo di voler mantenere all'interno di un computer

Dettagli

Analisi e diagramma di Pareto

Analisi e diagramma di Pareto Analisi e diagramma di Pareto L'analisi di Pareto è una metodologia statistica utilizzata per individuare i problemi più rilevanti nella situazione in esame e quindi le priorità di intervento. L'obiettivo

Dettagli

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora:

Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: Iniziamo con un esercizio sul massimo comun divisore: Esercizio 1. Sia d = G.C.D.(a, b), allora: G.C.D.( a d, b d ) = 1 Sono state introdotte a lezione due definizioni importanti che ricordiamo: Definizione

Dettagli

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno

Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Rappresentazione di numeri Complemento al corso di Fondamenti di Informatica I corsi di laurea in ingegneria, settore dell informazione Università la Sapienza Consorzio Nettuno Un numero e un entità teorica,

Dettagli

Scambio delle chiavi. mercoledì 7 dicembre 2011

Scambio delle chiavi. mercoledì 7 dicembre 2011 Scambio delle chiavi 1 mercoledì 7 dicembre 2011 Distribuzione della chiave Dati due terminali A e B, si possono avere varie alternative per la distribuzione delle chiavi. 1. A sceglie una chiave e la

Dettagli

Dispense di Informatica per l ITG Valadier

Dispense di Informatica per l ITG Valadier La notazione binaria Dispense di Informatica per l ITG Valadier Le informazioni dentro il computer All interno di un calcolatore tutte le informazioni sono memorizzate sottoforma di lunghe sequenze di

Dettagli

3. Introduzione all'internetworking

3. Introduzione all'internetworking 3. Introduzione all'internetworking Abbiamo visto i dettagli di due reti di comunicazione: ma ce ne sono decine di tipo diverso! Occorre poter far comunicare calcolatori che si trovano su reti di tecnologia

Dettagli

ARCHITETTURA DI RETE FOLEGNANI ANDREA

ARCHITETTURA DI RETE FOLEGNANI ANDREA ARCHITETTURA DI RETE FOLEGNANI ANDREA INTRODUZIONE È denominata Architettura di rete un insieme di livelli e protocolli. Le reti sono organizzate gerarchicamente in livelli, ciascuno dei quali interagisce

Dettagli

Esempi di algoritmi. Lezione III

Esempi di algoritmi. Lezione III Esempi di algoritmi Lezione III Scopo della lezione Implementare da zero algoritmi di media complessità. Verificare la correttezza di un algoritmo eseguendolo a mano. Imparare a valutare le prestazioni

Dettagli

Obiettivo Principale: Spiegare come la stessa cosa possa essere realizzata in molti modi diversi e come, a volte, ci siano modi migliori di altri.

Obiettivo Principale: Spiegare come la stessa cosa possa essere realizzata in molti modi diversi e come, a volte, ci siano modi migliori di altri. 6 LEZIONE: Algoritmi Tempo della lezione: 45-60 Minuti. Tempo di preparazione: 10-25 Minuti (a seconda che tu abbia dei Tangram disponibili o debba tagliarli a mano) Obiettivo Principale: Spiegare come

Dettagli

Lezione 8. La macchina universale

Lezione 8. La macchina universale Lezione 8 Algoritmi La macchina universale Un elaboratore o computer è una macchina digitale, elettronica, automatica capace di effettuare trasformazioni o elaborazioni su i dati digitale= l informazione

Dettagli

Algoritmi e strutture dati. Codici di Huffman

Algoritmi e strutture dati. Codici di Huffman Algoritmi e strutture dati Codici di Huffman Memorizzazione dei dati Quando un file viene memorizzato, esso va memorizzato in qualche formato binario Modo più semplice: memorizzare il codice ASCII per

Dettagli

La firma digitale CHE COSA E'?

La firma digitale CHE COSA E'? La firma digitale La Firma Digitale è il risultato di una procedura informatica che garantisce l autenticità e l integrità di messaggi e documenti scambiati e archiviati con mezzi informatici, al pari

Dettagli

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile

Corso di Informatica Generale (C. L. Economia e Commercio) Ing. Valerio Lacagnina Rappresentazione in virgola mobile Problemi connessi all utilizzo di un numero di bit limitato Abbiamo visto quali sono i vantaggi dell utilizzo della rappresentazione in complemento alla base: corrispondenza biunivoca fra rappresentazione

Dettagli

Teoria delle code. Sistemi stazionari: M/M/1 M/M/1/K M/M/S

Teoria delle code. Sistemi stazionari: M/M/1 M/M/1/K M/M/S Teoria delle code Sistemi stazionari: M/M/1 M/M/1/K M/M/S Fabio Giammarinaro 04/03/2008 Sommario INTRODUZIONE... 3 Formule generali di e... 3 Leggi di Little... 3 Cosa cerchiamo... 3 Legame tra N e le

Dettagli

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB.

SISTEMI E RETI. Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. SISTEMI E RETI Crittografia. Sistemi distribuiti e configurazione architetturale delle applicazioni WEB. CRITTOGRAFIA La crittografia è una tecnica che si occupa della scrittura segreta in codice o cifrata

Dettagli

RC4 RC4. Davide Cerri. Davide Cerri CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/

RC4 RC4. Davide Cerri. Davide Cerri CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/ POLITECNICO DI MILANO CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/ è un cifrario a flusso progettato da Ron Rivest (la R di RSA) nel 1987. Era un segreto commerciale della

Dettagli

Transitori del primo ordine

Transitori del primo ordine Università di Ferrara Corso di Elettrotecnica Transitori del primo ordine Si consideri il circuito in figura, composto da un generatore ideale di tensione, una resistenza ed una capacità. I tre bipoli

Dettagli

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI

INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI INTRODUZIONE AGLI ALGORITMI Prima di riuscire a scrivere un programma, abbiamo bisogno di conoscere un metodo risolutivo, cioè un metodo che a partire dai dati di ingresso fornisce i risultati attesi.

Dettagli

Logica Numerica Approfondimento 1. Minimo Comune Multiplo e Massimo Comun Divisore. Il concetto di multiplo e di divisore. Il Minimo Comune Multiplo

Logica Numerica Approfondimento 1. Minimo Comune Multiplo e Massimo Comun Divisore. Il concetto di multiplo e di divisore. Il Minimo Comune Multiplo Logica Numerica Approfondimento E. Barbuto Minimo Comune Multiplo e Massimo Comun Divisore Il concetto di multiplo e di divisore Considerato un numero intero n, se esso viene moltiplicato per un numero

Dettagli

2. Leggi finanziarie di capitalizzazione

2. Leggi finanziarie di capitalizzazione 2. Leggi finanziarie di capitalizzazione Si chiama legge finanziaria di capitalizzazione una funzione atta a definire il montante M(t accumulato al tempo generico t da un capitale C: M(t = F(C, t C t M

Dettagli

CALCOLO COMBINATORIO

CALCOLO COMBINATORIO CALCOLO COMBINATORIO 1 Modi di formare gruppi di k oggetti presi da n dati 11 disposizioni semplici, permutazioni Dati n oggetti distinti a 1,, a n si chiamano disposizioni semplici di questi oggetti,

Dettagli

Convertitori numerici in Excel

Convertitori numerici in Excel ISTITUTO DI ISTRUZIONE SUPERIORE G. M. ANGIOY CARBONIA Convertitori numerici in Excel Prof. G. Ciaschetti Come attività di laboratorio, vogliamo realizzare dei convertitori numerici con Microsoft Excel

Dettagli

Soluzione dell esercizio del 2 Febbraio 2004

Soluzione dell esercizio del 2 Febbraio 2004 Soluzione dell esercizio del 2 Febbraio 2004 1. Casi d uso I casi d uso sono riportati in Figura 1. Figura 1: Diagramma dei casi d uso. E evidenziato un sotto caso di uso. 2. Modello concettuale Osserviamo

Dettagli

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione

Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione 4 LEZIONE: Programmazione su Carta a Quadretti Tempo della lezione: 45-60 Minuti. Tempo di preparazione: 10 Minuti Obiettivo Principale: Aiutare gli studenti a capire cos è la programmazione SOMMARIO:

Dettagli

Un metodo per il rilevamento degli errori: la tecnica del Bit di Parità

Un metodo per il rilevamento degli errori: la tecnica del Bit di Parità Appunti: Tecniche di rilevazione e correzione degli errori 1 Tecniche di correzione degli errori Le tecniche di correzione degli errori sono catalogabili in: metodi per il rilevamento degli errori; metodi

Dettagli

Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza

Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza Prof. Massimiliano Sala MINICORSI 2011. Crittografia a chiave pubblica: oltre RSA Università degli Studi di Trento, Lab di Matematica

Dettagli

PROGETTO LAUREE SCIENTIFICHE -MATEMATICA 2006/2007 Modelli Matematici per la Società Incontro del 15.02.07

PROGETTO LAUREE SCIENTIFICHE -MATEMATICA 2006/2007 Modelli Matematici per la Società Incontro del 15.02.07 PROGETTO LAUREE SCIENTIFICHE -MATEMATICA 2006/2007 Modelli Matematici per la Società Incontro del 15.02.07 CODICI MONOALFABETICI E ANALISI DELLE FREQUENZE (organizzata da Francesca Visentin) Riprendiamo

Dettagli

Calcolo del Valore Attuale Netto (VAN)

Calcolo del Valore Attuale Netto (VAN) Calcolo del Valore Attuale Netto (VAN) Il calcolo del valore attuale netto (VAN) serve per determinare la redditività di un investimento. Si tratta di utilizzare un procedimento che può consentirci di

Dettagli

Parte 2. Determinante e matrice inversa

Parte 2. Determinante e matrice inversa Parte. Determinante e matrice inversa A. Savo Appunti del Corso di Geometria 013-14 Indice delle sezioni 1 Determinante di una matrice, 1 Teorema di Cramer (caso particolare), 3 3 Determinante di una matrice

Dettagli

Un gioco con tre dadi

Un gioco con tre dadi Un gioco con tre dadi Livello scolare: biennio Abilità interessate Costruire lo spazio degli eventi in casi semplici e determinarne la cardinalità. Valutare la probabilità in diversi contesti problematici.

Dettagli

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che:

Esercizio 1 Dato il gioco ({1, 2, 3}, v) con v funzione caratteristica tale che: Teoria dei Giochi, Trento, 2004/05 c Fioravante Patrone 1 Teoria dei Giochi Corso di laurea specialistica: Decisioni economiche, impresa e responsabilità sociale, A.A. 2004/05 Soluzioni degli esercizi

Dettagli

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE

LE SUCCESSIONI 1. COS E UNA SUCCESSIONE LE SUCCESSIONI 1. COS E UNA SUCCESSIONE La sequenza costituisce un esempio di SUCCESSIONE. Ecco un altro esempio di successione: Una successione è dunque una sequenza infinita di numeri reali (ma potrebbe

Dettagli

SISTEMI DI NUMERAZIONE E CODICI

SISTEMI DI NUMERAZIONE E CODICI SISTEMI DI NUMERAZIONE E CODICI Il Sistema di Numerazione Decimale Il sistema decimale o sistema di numerazione a base dieci usa dieci cifre, dette cifre decimali, da O a 9. Il sistema decimale è un sistema

Dettagli

1. Distribuzioni campionarie

1. Distribuzioni campionarie Università degli Studi di Basilicata Facoltà di Economia Corso di Laurea in Economia Aziendale - a.a. 2012/2013 lezioni di statistica del 3 e 6 giugno 2013 - di Massimo Cristallo - 1. Distribuzioni campionarie

Dettagli

Determinare la grandezza della sottorete

Determinare la grandezza della sottorete Determinare la grandezza della sottorete Ogni rete IP possiede due indirizzi non assegnabili direttamente agli host l indirizzo della rete a cui appartiene e l'indirizzo di broadcast. Quando si creano

Dettagli

Matematica generale CTF

Matematica generale CTF Successioni numeriche 19 agosto 2015 Definizione di successione Monotonìa e limitatezza Forme indeterminate Successioni infinitesime Comportamento asintotico Criterio del rapporto per le successioni Definizione

Dettagli

Capitolo 13: L offerta dell impresa e il surplus del produttore

Capitolo 13: L offerta dell impresa e il surplus del produttore Capitolo 13: L offerta dell impresa e il surplus del produttore 13.1: Introduzione L analisi dei due capitoli precedenti ha fornito tutti i concetti necessari per affrontare l argomento di questo capitolo:

Dettagli

Probabilità discreta

Probabilità discreta Probabilità discreta Daniele A. Gewurz 1 Che probabilità c è che succeda...? Una delle applicazioni della combinatoria è nel calcolo di probabilità discrete. Quando abbiamo a che fare con un fenomeno che

Dettagli

Testi di Esercizi e Quesiti 1

Testi di Esercizi e Quesiti 1 Architettura degli Elaboratori, 2009-2010 Testi di Esercizi e Quesiti 1 1. Una rete logica ha quattro variabili booleane di ingresso a 0, a 1, b 0, b 1 e due variabili booleane di uscita z 0, z 1. La specifica

Dettagli

www.andreatorinesi.it

www.andreatorinesi.it La lunghezza focale Lunghezza focale Si definisce lunghezza focale la distanza tra il centro ottico dell'obiettivo (a infinito ) e il piano su cui si forma l'immagine (nel caso del digitale, il sensore).

Dettagli

Sicurezza nelle applicazioni multimediali: lezione 8, sicurezza ai livelli di rete e data-link. Sicurezza ai livelli di rete e data link

Sicurezza nelle applicazioni multimediali: lezione 8, sicurezza ai livelli di rete e data-link. Sicurezza ai livelli di rete e data link Sicurezza ai livelli di rete e data link Sicurezza a livello applicativo Ma l utilizzo di meccanismi di cifratura e autenticazione può essere introdotto anche ai livelli inferiori dello stack 2 Sicurezza

Dettagli

4. Operazioni elementari per righe e colonne

4. Operazioni elementari per righe e colonne 4. Operazioni elementari per righe e colonne Sia K un campo, e sia A una matrice m n a elementi in K. Una operazione elementare per righe sulla matrice A è una operazione di uno dei seguenti tre tipi:

Dettagli

Corso di Matematica per la Chimica

Corso di Matematica per la Chimica Dott.ssa Maria Carmela De Bonis a.a. 203-4 I sistemi lineari Generalità sui sistemi lineari Molti problemi dell ingegneria, della fisica, della chimica, dell informatica e dell economia, si modellizzano

Dettagli

ESEMPIO 1: eseguire il complemento a 10 di 765

ESEMPIO 1: eseguire il complemento a 10 di 765 COMPLEMENTO A 10 DI UN NUMERO DECIMALE Sia dato un numero N 10 in base 10 di n cifre. Il complemento a 10 di tale numero (N ) si ottiene sottraendo il numero stesso a 10 n. ESEMPIO 1: eseguire il complemento

Dettagli

Sicurezza a livello IP: IPsec e le reti private virtuali

Sicurezza a livello IP: IPsec e le reti private virtuali Sicurezza a livello IP: IPsec e le reti private virtuali Davide Cerri Sommario L esigenza di proteggere l informazione che viene trasmessa in rete porta all utilizzo di diversi protocolli crittografici.

Dettagli

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA

UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA UNA LEZIONE SUI NUMERI PRIMI: NASCE LA RITABELLA Tutti gli anni, affrontando l argomento della divisibilità, trovavo utile far lavorare gli alunni sul Crivello di Eratostene. Presentavo ai ragazzi una

Dettagli

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete

Reti di Telecomunicazioni Mobile IP Mobile IP Internet Internet Protocol header IPv4 router host indirizzi IP, DNS URL indirizzo di rete IP Analizziamo con sufficiente dettaglio il sistema denominato IP, usato per consentire a due computer mobili di spostarsi liberamente in altre reti pur mantenendo lo stesso indirizzo IP. In particolare,

Dettagli

13. Campi vettoriali

13. Campi vettoriali 13. Campi vettoriali 1 Il campo di velocità di un fluido Il concetto di campo in fisica non è limitato ai fenomeni elettrici. In generale il valore di una grandezza fisica assegnato per ogni punto dello

Dettagli

1. PRIME PROPRIETÀ 2

1. PRIME PROPRIETÀ 2 RELAZIONI 1. Prime proprietà Il significato comune del concetto di relazione è facilmente intuibile: due elementi sono in relazione se c è un legame tra loro descritto da una certa proprietà; ad esempio,

Dettagli

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete.

Le equazioni. Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Le equazioni Diapositive riassemblate e rielaborate da prof. Antonio Manca da materiali offerti dalla rete. Definizione e caratteristiche Chiamiamo equazione l uguaglianza tra due espressioni algebriche,

Dettagli

Il concetto di valore medio in generale

Il concetto di valore medio in generale Il concetto di valore medio in generale Nella statistica descrittiva si distinguono solitamente due tipi di medie: - le medie analitiche, che soddisfano ad una condizione di invarianza e si calcolano tenendo

Dettagli

Matematica in laboratorio

Matematica in laboratorio Unità 1 Attività guidate Attività 1 Foglio elettronico Divisibilità tra numeri naturali Costruisci un foglio di lavoro per determinare se a è divisibile per b, essendo a e b due numeri naturali, con a

Dettagli

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6

Introduzione. Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD... 6 Appunti di Calcolatori Elettronici Esecuzione di istruzioni in parallelo Introduzione... 1 Classificazione di Flynn... 2 Macchine a pipeline... 3 Macchine vettoriali e Array Processor... 4 Macchine MIMD...

Dettagli

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00

Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 2005, ore 15.00 Prova di Esame - Rete Internet (ing. Giovanni Neglia) Lunedì 24 Gennaio 200, ore 1.00 NB: alcune domande hanno risposta multipla: si richiede di identificare TUTTE le risposte corrette. Cognome: Nome:

Dettagli

Capitolo 2. Operazione di limite

Capitolo 2. Operazione di limite Capitolo 2 Operazione di ite In questo capitolo vogliamo occuparci dell operazione di ite, strumento indispensabile per scoprire molte proprietà delle funzioni. D ora in avanti riguarderemo i domini A

Dettagli

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it

Excel. A cura di Luigi Labonia. e-mail: luigi.lab@libero.it Excel A cura di Luigi Labonia e-mail: luigi.lab@libero.it Introduzione Un foglio elettronico è un applicazione comunemente usata per bilanci, previsioni ed altri compiti tipici del campo amministrativo

Dettagli

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi.

Sommario. Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. Algoritmi 1 Sommario Definizione di informatica. Definizione di un calcolatore come esecutore. Gli algoritmi. 2 Informatica Nome Informatica=informazione+automatica. Definizione Scienza che si occupa dell

Dettagli

RETI DI TELECOMUNICAZIONE

RETI DI TELECOMUNICAZIONE RETI DI TELECOMUNICAZIONE SISTEMI M/G/1 e M/D/1 Sistemi M/G/1 Nei sistemi M/G/1: i clienti arrivano secondo un processo di Poisson con parametro λ i tempi di servizio hanno una distribuzione generale della

Dettagli

LE FUNZIONI A DUE VARIABILI

LE FUNZIONI A DUE VARIABILI Capitolo I LE FUNZIONI A DUE VARIABILI In questo primo capitolo introduciamo alcune definizioni di base delle funzioni reali a due variabili reali. Nel seguito R denoterà l insieme dei numeri reali mentre

Dettagli

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS

CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS CONTENUTI: CREAZIONE DI UN DATABASE E DI TABELLE IN ACCESS Creazione database vuoto Creazione tabella Inserimento dati A) Creazione di un database vuoto Avviamo il programma Microsoft Access. Dal menu

Dettagli

Interesse, sconto, ratei e risconti

Interesse, sconto, ratei e risconti TXT HTM PDF pdf P1 P2 P3 P4 293 Interesse, sconto, ratei e risconti Capitolo 129 129.1 Interesse semplice....................................................... 293 129.1.1 Esercizio per il calcolo dell

Dettagli

TECNICHE DI SIMULAZIONE

TECNICHE DI SIMULAZIONE TECNICHE DI SIMULAZIONE INTRODUZIONE Francesca Mazzia Dipartimento di Matematica Università di Bari a.a. 2004/2005 TECNICHE DI SIMULAZIONE p. 1 Introduzione alla simulazione Una simulazione è l imitazione

Dettagli

1 Applicazioni Lineari tra Spazi Vettoriali

1 Applicazioni Lineari tra Spazi Vettoriali 1 Applicazioni Lineari tra Spazi Vettoriali Definizione 1 (Applicazioni lineari) Si chiama applicazione lineare una applicazione tra uno spazio vettoriale ed uno spazio vettoriale sul campo tale che "!$%!

Dettagli

Statistica. Lezione 6

Statistica. Lezione 6 Università degli Studi del Piemonte Orientale Corso di Laurea in Infermieristica Corso integrato in Scienze della Prevenzione e dei Servizi sanitari Statistica Lezione 6 a.a 011-01 Dott.ssa Daniela Ferrante

Dettagli

Allegato 3 Sistema per l interscambio dei dati (SID)

Allegato 3 Sistema per l interscambio dei dati (SID) Sistema per l interscambio dei dati (SID) Specifiche dell infrastruttura per la trasmissione delle Comunicazioni previste dall art. 11 comma 2 del decreto legge 6 dicembre 2011 n.201 Sommario Introduzione...

Dettagli

Parte 3. Rango e teorema di Rouché-Capelli

Parte 3. Rango e teorema di Rouché-Capelli Parte 3. Rango e teorema di Rouché-Capelli A. Savo Appunti del Corso di Geometria 203-4 Indice delle sezioni Rango di una matrice, 2 Teorema degli orlati, 3 3 Calcolo con l algoritmo di Gauss, 6 4 Matrici

Dettagli

Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio

Appunti di informatica. Lezione 2 anno accademico 2015-2016 Mario Verdicchio Appunti di informatica Lezione 2 anno accademico 2015-2016 Mario Verdicchio Sistema binario e logica C è un legame tra i numeri binari (0,1) e la logica, ossia la disciplina che si occupa del ragionamento

Dettagli

II.f. Altre attività sull euro

II.f. Altre attività sull euro Altre attività sull euro II.f È consigliabile costruire modelli in carta o cartoncino di monete e banconote, e farli usare ai bambini in varie attività di classe fin dal primo o al più dal secondo anno.

Dettagli

LEZIONE 23. Esempio 23.1.3. Si consideri la matrice (si veda l Esempio 22.2.5) A = 1 2 2 3 3 0

LEZIONE 23. Esempio 23.1.3. Si consideri la matrice (si veda l Esempio 22.2.5) A = 1 2 2 3 3 0 LEZIONE 23 231 Diagonalizzazione di matrici Abbiamo visto nella precedente lezione che, in generale, non è immediato che, data una matrice A k n,n con k = R, C, esista sempre una base costituita da suoi

Dettagli

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12};

Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; ESERCIZI 2 LABORATORIO Problema 1 Definire all'interno del codice un vettore di interi di dimensione DIM, es. int array[] = {1, 5, 2, 4, 8, 1, 1, 9, 11, 4, 12}; Chiede all'utente un numero e, tramite ricerca

Dettagli

Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente

Funzioni funzione dominio codominio legge argomento variabile indipendente variabile dipendente Funzioni In matematica, una funzione f da X in Y consiste in: 1. un insieme X detto dominio di f 2. un insieme Y detto codominio di f 3. una legge che ad ogni elemento x in X associa uno ed un solo elemento

Dettagli

Il principio di induzione e i numeri naturali.

Il principio di induzione e i numeri naturali. Il principio di induzione e i numeri naturali. Il principio di induzione è un potente strumento di dimostrazione, al quale si ricorre ogni volta che si debba dimostrare una proprietà in un numero infinito

Dettagli

Ing. Simone Giovannetti

Ing. Simone Giovannetti Università degli Studi di Firenze Dipartimento di Elettronica e Telecomunicazioni Ing. Simone Giovannetti Firenze, 29 Maggio 2012 1 Incertezza di Misura (1/3) La necessità di misurare nasce dall esigenza

Dettagli

Appunti sulla Macchina di Turing. Macchina di Turing

Appunti sulla Macchina di Turing. Macchina di Turing Macchina di Turing Una macchina di Turing è costituita dai seguenti elementi (vedi fig. 1): a) una unità di memoria, detta memoria esterna, consistente in un nastro illimitato in entrambi i sensi e suddiviso

Dettagli

10. Insiemi non misurabili secondo Lebesgue.

10. Insiemi non misurabili secondo Lebesgue. 10. Insiemi non misurabili secondo Lebesgue. Lo scopo principale di questo capitolo è quello di far vedere che esistono sottoinsiemi di R h che non sono misurabili secondo Lebesgue. La costruzione di insiemi

Dettagli

Fasi di creazione di un programma

Fasi di creazione di un programma Fasi di creazione di un programma 1. Studio Preliminare 2. Analisi del Sistema 6. Manutenzione e Test 3. Progettazione 5. Implementazione 4. Sviluppo 41 Sviluppo di programmi Per la costruzione di un programma

Dettagli

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme

Proof. Dimostrazione per assurdo. Consideriamo l insieme complementare di P nell insieme G Pareschi Principio di induzione Il Principio di Induzione (che dovreste anche avere incontrato nel Corso di Analisi I) consente di dimostrare Proposizioni il cui enunciato è in funzione di un numero

Dettagli

CAPITOLO 10 I SINDACATI

CAPITOLO 10 I SINDACATI CAPITOLO 10 I SINDACATI 10-1. Fate l ipotesi che la curva di domanda di lavoro di una impresa sia data da: 20 0,01 E, dove è il salario orario e E il livello di occupazione. Ipotizzate inoltre che la funzione

Dettagli

Reti di calcolatori ed indirizzi IP

Reti di calcolatori ed indirizzi IP ITIS TASSINARI, 1D Reti di calcolatori ed indirizzi IP Prof. Pasquale De Michele 5 aprile 2014 1 INTRODUZIONE ALLE RETI DI CALCOLATORI Cosa è una rete di calcolatori? Il modo migliore per capire di cosa

Dettagli

Contabilità generale e contabilità analitica

Contabilità generale e contabilità analitica 1/5 Contabilità generale e contabilità analitica La sfida della contabilità analitica è di produrre informazioni sia preventive che consuntive. Inoltre questi dati devono riferirsi a vari oggetti (prodotti,

Dettagli

Coordinazione Distribuita

Coordinazione Distribuita Coordinazione Distribuita Ordinamento degli eventi Mutua esclusione Atomicità Controllo della Concorrenza 21.1 Introduzione Tutte le questioni relative alla concorrenza che si incontrano in sistemi centralizzati,

Dettagli

ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA

ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA ESERCIZI DI ALGEBRA LINEARE E GEOMETRIA Francesco Bottacin Padova, 24 febbraio 2012 Capitolo 1 Algebra Lineare 1.1 Spazi e sottospazi vettoriali Esercizio 1.1. Sia U il sottospazio di R 4 generato dai

Dettagli