BLOWFISH. Introduzione Algoritmo. Prestazioni Cryptanalysis of Vaundenay. Egizio Raffaele
|
|
- Adelina Pinna
- 7 anni fa
- Visualizzazioni
Transcript
1 Introduzione Algoritmo Prestazioni Cryptanalysis of Vaundenay Egizio Raffaele Introduzione E un cifrario a blocchi a chiave simmetrica Utilizza varie tecniche tra le quali la rete Feistel, le S-box dipendenti da chiavi e funzioni F non invertibili Le chiavi utilizzate sono di dimensioni variabili fino ad un max. di 448 bit Lavora su blocchi di 64 bit Non si conoscono al momento tecniche di attacco valide nei suoi confronti E' considerato uno degli algoritmi di cifratura a blocchi più veloce (risulta più veloce di DES e IDEA) Non è brevettato ed è di dominio pubblico Algoritmo La procedura consiste in due fasi: una fase di espansione della chiave e una fase di cifratura dei dati L'espansione chiave converte una chiave di al più 448 bit in un array di sottochiavi per un totale di 4168 byte La cifratura dei dati avviene attraverso 16 round Le sole operazioni usate sono XOR, somme su parole a 32- bit e quattro letture per round in array di dati indicizzati Algoritmo Dalla chiave simmetrica vengono ricavati il P-array con 18 sottochiavi a 32 bit (P1, P2,..., P18) e 4 S-box ognuna costituita da 256 sottochiavi a 32 bit P 1 P 2. P 18 CHIAVE (lunghezza compresa tra 64 e 448 bit) Codifica Blowfish è una rete di Feistel che consiste di 16 round Funzione F Dividere xl in quattro blocchi di 8 bit: a, b, c e d F(xL)=[(S1(a)+ S2(b)) S3(c))] + S4(d) + addizione modulo 2 32
2 Passo 1) Passo 1) P 1 P 2. P k. P 18.. P ik+1 P ik+2.. P (i+1)k... CHIAVE C i =32 bit 2<=k<=14 P-array P i =32 bit.. C k. C k Passo 1) Passo 3) P-array del passo 2) P 1 P 2 (00.00) P 3 P 4 xl 1 xr 1 P 3 P 4 xl 1 xr 1 xl 2 xr 2. P jk P jk+1 P jk+2. P 18. (xl 1,xR 1 ) (xl 2,xR 2 ) (xl 3,xR 3 ) Si itera la procedura fino a quando non vengono sostituite tutte le chiavi del P-array ottenendo:. C s. C k xl 1 xr 1 xl 2 xr 2.. xl 17 xr 17 xl 18 xr 18 Passo 4) Si procede come nel passo 3) partendo dalla codifica di (xl 17,xR 18 ) e utilizzando il P-array ottenuto alla fine del medesimo passo. Ad ogni iterazione si sostituiscono le sottochiavi delle S-box invece di quelle del P-array e le S- box così modificate vengono utilizzate nell iterazione successiva Ogni iterazione genera due sottochiavi Sono necessarie 521 iterazioni per generare tutte le sottochiavi (18/2 iterazioni per generare il P-array e 256/2 iterazioni per ognuna delle quattro S-box) Decodifica La decodifica avviene allo stesso modo della codifica ad eccezione dell ordine in cui vengono usate le sottochiavi P1, P2,..., P18 che è invertito
3 Prestazioni Fase di inizializzazione molto complessa (costruzione P-array e S-box) ma può essere precomputata Codifica e decodifica dei dati molto veloci Sicurezza Il Blowfish è stato presentato per la prima volta da B. Schneier sulle pagine del noto dr. Dobb's journal nel 1994 La stessa rivista ha poi sponsorizzato una gara di crittoanalisi (1000 dollari di premio per il vincitore) terminata nell'aprile del 1995 I risultati più interessanti sono stati ottenuti da Serge Vaundenay che, oltre a definire attacchi a versioni modificate del Blowfish, ha evidenziato la presenza di chiavi deboli nell'algoritmo Cryptanalysis Una "weak key" (chiave debole) è una chiave per cui almeno una delle 4 S-Box generate, ad esempio S1, ha almeno una collisione Per S1 esistono due byte diversi, a ed a', tali che S1(a)=S1(a') Mediamente esiste una weak key ogni 2 15 chiavi Assumeremo che l'attaccante conosce la parte di chiave privata che descrive la funzione F, cioè partiremo dal presupposto che l'attaccante conosce tutte le entrate delle S- Box ma non le chiavi P1, P2,..., P18 Assumeremo che la chiave sia una weak-key con d = xor della collisione per S1 d = a xor a, a diverso da a e S1(a)=S1(a') Siano P1, P2,..., P18 le sottochiavi generate dalla weak key e consideriamo la seguente figura Assumendo una sola collisione per S1, con differenza d, la probabilità che si verifichi questo risultato è 2-7 Iterando il precedente procedimento per tre volte si ottiene Blowfish su otto round Sempre assumendo una sola collisione per S1, con differenza d, la probabilità che si verifichi questo risultato è 2-21 ( 2-7 *2-7 *2-7 ) Provando 2 21 coppie di chosen plaintex con xor [0000d000], è facile trovare una coppia di ciphertext (C,C ) con xor [d000xyzt] Sia C=(L,R). Abbiamo: F(L xor P10) xor F(L xor P10 xor [d000])=[xyzt] Provando tutte le 2 32 possibili combinazioni riusciamo a calcolare il valore di P10 che verifica la precedente equazione
4 Per il Blowfish con t round che usa una weak key, è possibile calcolare Pt+2 provando 2 7* t-2/2 coppie di chosen plaintex Una coppia casuale di ciphertext ha xor=[d000xyzt] con probabilità 2-32 Per essere sicuri che il risultato sia valido, è conveniente verificarlo con più coppie di ciphertext con tale xor E possibile dimostrare che con t < 11 una sola coppia è sufficiente a garantire, con buona probabilità, che il risultato sia corretto Con t >=11 è possibile trovare circa 2 7* t-2/223 coppie di ciphertext con xor = [d000xyzt] che ci porterebbero ad un risultato errato per Pt+2 Quando t >= 11 bisogna trovare almeno tre coppie di ciphertext che diano lo stesso risultato, il che implica che bisogna tentare mediamente con 3*2 7* t-2/2 coppie di di chosen plaintex con xor = [0000d000] Una volta scoperta la sottochiave Pt+2 è possibile attaccare la chiave Pt+1 usando lo stesso metodo sul Blowfish con t- 1 round Usando questo metodo in modo iterativo possiamo risalire a tutte le t+2 sottochiavi Poiché,se t è pari,la complessità dell attacco su t round è la stessa che su t-1 round, la ricerca di tutte le sottochiavi richiede 3*2 2+7* t-2/2 coppie di chosen plaintex Per t=16,tale valore è 3*2 51. Per t=8,poiché 8<11, il numero di chosen plaintex richiesto per tale attacco è 2 23 La chiave privata è una chiave qualsiasi e non necessariamente una weak key La funzione (a,b) in S1(a)+S2(b) è un espansione da 16 a 32 bit che può portare ad una collisione S1(a)+S2(b) = S1(a )+S2(b ) con probabilità relativamente alta Sia d = a xor a, µ = b xor b Assumendo una sola collisione per S1+S2, con differenza d µ, la probabilità che si verifichi questo risultato è 2-15 Iterando il precedente procedimento per tre volte si ottiene Blowfish su otto round Sempre assumendo una sola collisione per S1+S2, la probabilità che si verifichi questo risultato è 2-45 ( 2-15 *2-15 *2-15 ) Il numero di chosen plaintex richiesto per attaccare P10 è 2 46 (vogliamo due coppie di ciphertext con xor = [d000xyzt] in modo da poter verificare il risultato ottenuto con la prima coppia) e 2 48 coppie per ottenere tutte le sottochiavi Per Blowfish con più di otto round tale attacco è impossibile perché richiede di provare un numero eccessivo di chosen plaintex S-Box non conosciute Senza assumere che le S-box siano conosciute, è possibile solo scoprire se la chiave utilizzata è una weak key o meno non è possibile risalire al P-array, alle S-box né alla chiave stessa Scegliendo a caso i byte B1, B2, B3, B4, B6, B7, e B8 (non B5 quindi), nella matrice MB di tutte le 2 8 possibili combinazioni di [B1, B2, B3, B4, B5, B6, B7, B8], abbiamo 2 7 coppie con buono xor (cioè 2 7 coppie con xor uguale a [0000d000] dove d è il valore dell eventuale collisione per S1) Sia MC la matrice dei corrispondenti ciphertext [C1, C2, C3, C4, C5, C6, C7, C8]
5 S-Box non conosciute E possibile dimostrare che in ogni coppia buna il valore þ=[(b5 xor C5), C6, C7, C8] è lo stesso per entrambi i messaggi della coppia dove, per coppia buona, si intende la coppia (Bi,Bj) tale che Bi xor Bj = [0000d000] e i rispettivi ciphertext hanno xor uguale =[d000xyzt] Per trovare una buona coppia, ci basta verificare se nella matrice ci sono delle coppie per cui è presente una collisione per il valore þ. Se non ci sono buone coppie, cioè se non ci sono collisioni per nessuna delle quattro S-Box, la probabilità di avere una collisione per þ è molto bassa (circa 2-17 ) S-Box non conosciute Con 2 14 matrici esiste un alta probabilità di trovare una buona coppia, sempre che ci sia almeno una collisione per almeno una delle S-box. Quindi con 2 22 chosen plaintex (2 14 matrici con 2 8 chosen plaintex ciascuna ) siamo in grado, con buona probabilità, di scoprire se ci sono collisioni per le S-box, cioè di scoprire se la chiave utilizzata è una weak key Lo stesso attacco, però, non è attuabile sul Blowfish completo in quanto richiederebbe un numero enorme di chosen plaintex
Converte una chiave di al più 14 word a 32 bit (K-array) in un array di 18 sottochiavi a 32 bit (P-array) Genera 4 S-box, ognuna con 256 word a 32 bit
% RC2 [1989] IDEA (International Data Encryption Algorithm) [1990] Blowfish [1993]!"###"$ SAFER (Secure And Fast Encryption Routine) SAFER K-64 [1994], SAFER K-128 [1995] cifrario bit chiave bit testo
DettagliAltri cifrari a blocchi
Altri cifrari a blocchi Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci RC2 [1989] IDEA (International
DettagliFunzioni di hash sicure: MD5 e SHA-1
POLITECNICO DI MILANO Funzioni di hash sicure: MD5 e SHA-1 CEFRIEL - Politecnico di Milano cerri@cefriel.it http://www.cefriel.it/~cerri/ Funzioni di hash Una funzione di hash (o message digest) è una
DettagliCrittografia a chiave pubblica
Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica Università di Salerno bmasucci@unisa.it http://www.di.unisa.it/professori/masucci Cifrari simmetrici canale insicuro Bob 1 Distribuzione
DettagliIntroduzione alla Crittografia. L algoritmo DES. Bruno Martino - Fabio Guglietta
Introduzione alla Crittografia L algoritmo DES Bruno Martino - Fabio Guglietta Cosa faremo oggi? Convenzioni Uso della libreria di utilita Struttura del programma Modalita operative Uso della libreria
DettagliCorso di Crittografia Prof. Dario Catalano. Advanced Encryption Standard
Corso di Crittografia Prof. Dario Catalano Advanced Encryption Standard Perche un nuovo standard? n Quando si è deciso di sostituire DES, questo era ancora sicuro. n Sorge naturale la questione del perche
DettagliStream cipher. Cifrari simmetrici. Stream cipher. Stream cipher. I cifrari simmetrici possono essere:! Cifrari a blocchi: !
Stream cipher Alfredo De Santis Dipartimento di Informatica ed Applicazioni Università di Salerno Marzo 2012 ads@dia.unisa.it http://www.dia.unisa.it/professori/ads Cifrari simmetrici I cifrari simmetrici
DettagliDue numeri naturali non nulli a, b tali che MCD(a,b) = 1 si dicono coprimi o relativamente primi.
MASSIMO COMUNE DIVISORE E ALGORITMO DI EUCLIDE L algoritmo di Euclide permette di calcolare il massimo comun divisore tra due numeri, anche se questi sono molto grandi, senza aver bisogno di fattorizzarli
DettagliCorso di Crittografia Prof. Dario Catalano. Firme Digitali
Corso di Crittografia Prof. Dario Catalano Firme Digitali Introduzione n Una firma digitale e l equivalente informatico di una firma convenzionale. n Molto simile a MA, solo che qui abbiamo una struttura
DettagliAnno 4 Matrice inversa
Anno 4 Matrice inversa 1 Introduzione In questa lezione parleremo della matrice inversa di una matrice quadrata: definizione metodo per individuarla Al termine della lezione sarai in grado di: descrivere
DettagliInformatica. Mario Pavone - Dept. Mathematics & Computer Science - University of Catania. Trasferimento. Ambiente esterno.
Trasferimento Ambiente esterno Controllo Informatica Mario Pavone - Dept. Mathematics & Computer Science - University of Catania mpavone@dmi.unict.it Cos è l Informatica La scienza della rappresentazione
DettagliCRITTOGRAFIA 2014/15 Appello del 13 gennaio Nome: Cognome: Matricola:
CRITTOGRAFIA 2014/15 Appello del 13 gennaio 2015 Esercizio 1 Crittografia ellittica [9 punti] 1. Descrivere l algoritmo di Koblitz per trasformare un messaggio m, codificato come numero intero, in un punto
DettagliIl Ricevente comunica pubblicamente una chiave e. Il Mittente codifica il messaggio usando la funzione f(m, e) = C e
Crittografia a chiave pubblica. Il problema della crittografia è semplice da enunciare: vi sono due persone, il Mittente e il Ricevente, che vogliono comunicare fra loro senza che nessun altro possa leggere
DettagliData Encryption Standard. Alessandro Ballini Silvio Donnini Roberto Pariset Alberto Pettini
Data Encryption Standard Alessandro Ballini Silvio Donnini Roberto Pariset Alberto Pettini DES, breve storia 1973: Il National Bureau of Standards (NBS) pubblica un bando in cui richiede un algoritmo di
Dettagli!"### "$ " Applicazioni. Autenticità del messaggio M Integrità del messaggio M. Stelvio Cimato DTI Università di Milano, Polo di Crema
!"### "$ " %& Applicazioni Autenticità del messaggio M Integrità del messaggio M 1 2 ' Easy computation: dato un valore M e la chiave K, MAC(K,M) è facile da calcolare Compression: M di lunghezza finita,
DettagliProgrammazione Lineare Intera. Programmazione Lineare Intera p. 1/4
Programmazione Lineare Intera Programmazione Lineare Intera p. 1/4 Programmazione Lineare Intera Problema di PLI in forma standard: max cx Ax = b x 0, x I n I insieme degli interi. Regione ammissibile:
DettagliCrittografia a chiave pubblica
Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica Università di Salerno bmasucci@unisa.it http://www.di.unisa.it/professori/masucci Sicurezza CCA In un attacco CCA, è capace di
DettagliLunghezza media. Teorema Codice D-ario prefisso per v.c. X soddisfa. L H D (X). Uguaglianza vale sse D l i. = p i. . p.1/27
Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza vale sse D l i = p i.. p.1/27 Lunghezza media Teorema Codice D-ario prefisso per v.c. X soddisfa L H D (X). Uguaglianza
DettagliRappresentazione di numeri relativi (interi con segno) Rappresentazione di numeri interi relativi (con N bit) Segno e Valore Assoluto
Rappresentazione di numeri relativi (interi con segno) E possibile estendere in modo naturale la rappresentazione dei numeri naturali ai numeri relativi. I numeri relativi sono numeri naturali preceduti
DettagliTempo e spazio di calcolo (continua)
Tempo e spazio di calcolo (continua) I numeri di Fibonacci come case study (applichiamo ad un esempio completo le tecniche illustrate nei lucidi precedenti) Abbiamo introdotto tecniche per la correttezza
DettagliLa codifica digitale
La codifica digitale Codifica digitale Il computer e il sistema binario Il computer elabora esclusivamente numeri. Ogni immagine, ogni suono, ogni informazione per essere compresa e rielaborata dal calcolatore
DettagliSteganografia in un. Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06
Steganografia in un file di testo Corso di Sicurezza dei sistemi informatici Michelangelo Rinelli Anno Accademico 2005/06 Steganografia È l arte di nascondere un messaggio all interno di un altro messaggio
DettagliCodifica binaria. Rappresentazioni medianti basi diverse
Codifica binaria Rappresentazione di numeri Notazione di tipo posizionale (come la notazione decimale). Ogni numero è rappresentato da una sequenza di simboli Il valore del numero dipende non solo dalla
DettagliMetodo di Quine- McCluskey
Metodo di Quine- McCluskey Maurizio Palesi Maurizio Palesi Definizioni Date due funzioni f(x,x 2,,x n ) e g(x,x 2,,x n ) si dice che f copre g (oppure g implica f) e si scrive f g se f(x,x 2,,x n )= quando
DettagliCorso di Geometria BIAR, BSIR Esercizi 2: soluzioni
Corso di Geometria 2- BIAR, BSIR Esercizi 2: soluzioni Esercizio Calcolare il determinante della matrice 2 3 : 3 2 a) con lo sviluppo lungo la prima riga, b) con lo sviluppo lungo la terza colonna, c)
DettagliLezione 4. Problemi trattabili e soluzioni sempre più efficienti. Gianluca Rossi
Lezione 4 Problemi trattabili e soluzioni sempre più efficienti Gianluca Rossi Trattabile o intrattabile? Consideriamo ora il problema, ben noto a tutti gli studenti a partire dalla scuola media, di calcolare
DettagliUn ripasso di aritmetica: Conversione dalla base 10 alla base 2
Un ripasso di aritmetica: Conversione dalla base 10 alla base 2 Dato un numero N rappresentato in base dieci, la sua rappresentazione in base due sarà del tipo: c m c m-1... c 1 c 0 (le c i sono cifre
Dettagli2. ALGORITMO DEL SIMPLESSO
. ALGORITMO DEL SIMPLESSO R. Tadei Una piccola introduzione R. Tadei SIMPLESSO L obiettivo del capitolo è quello di fornire un algoritmo, l algoritmo del simplesso, che risolve qualsiasi problema di programmazione
DettagliCifrari a blocchi: Data Encryption Standard
Cifrari a blocchi: Data Encryption Standard Alfredo De Santis Dipartimento di Informatica Università di Salerno ads@dia.unisa.it http://www.dia.unisa.it/professori/ads Cifrari simmetrici! Crittosistemi
DettagliLaboratorio di Informatica. Esercitazione su algoritmi e diagrammi di flusso
Laboratorio di Informatica Esercitazione su algoritmi e diagrammi di flusso Algoritmi, programmi e dati Algoritmo = insieme di istruzioni che indicano come svolgere operazioni complesse su dei dati attraverso
DettagliSISTEMI LINEARI. x y + 2t = 0 2x + y + z t = 0 x z t = 0 ; S 3 : ; S 5x 2y z = 1 4x 7y = 3
SISTEMI LINEARI. Esercizi Esercizio. Verificare se (,, ) è soluzione del sistema x y + z = x + y z = 3. Trovare poi tutte le soluzioni del sistema. Esercizio. Scrivere un sistema lineare di 3 equazioni
DettagliCRITTOGRAFIA: introduzione
CRITTOGRAFIA: introduzione Crittografia "Crittografia scrittura nascosta "Studio di tecniche matematiche sofisticate per "mascherare i messaggi "o tentare di svelarli. Scenario "Due mondi in contrapposizione:
DettagliMetodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I)
Metodi e Modelli per l Ottimizzazione Combinatoria Ripasso sulla Programmazione Lineare e il metodo del Simplesso (parte I) Luigi De Giovanni Giacomo Zambelli 1 Problemi di programmazione lineare Un problema
DettagliEsercizi svolti. risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale
Esercizi svolti 1. Matrici e operazioni fra matrici 1.1 Date le matrici 1 2 1 6 A = B = 5 2 9 15 6 risolvere, se possibile, l equazione xa + B = O, essendo x un incognita reale Osservazione iniziale: qualunque
DettagliProgetto Matlab N 2. Calcolo Numerico 6 CFU. Corso di Laurea in Ingegneria delle Comunicazioni 31/05/2014
Progetto Matlab N 2 Calcolo Numerico 6 CFU Corso di Laurea in Ingegneria delle Comunicazioni 31/05/2014 Procedimento 1. Scrivere una function che implementi il prodotto matrice-vettore AX con A matrice
DettagliComunicazioni Elettriche Esercizi
Comunicazioni Elettriche Esercizi Alberto Perotti 9 giugno 008 Esercizio 1 Un processo casuale Gaussiano caratterizzato dai parametri (µ = 0, σ = 0.5) ha spettro nullo al di fuori dellintervallo f [1.5kHz,
DettagliCorso di Calcolo Numerico
Corso di Calcolo Numerico Dott.ssa M.C. De Bonis Università degli Studi della Basilicata, Potenza Facoltà di Ingegneria Corso di Laurea in Ingegneria Meccanica Risoluzione di Equazioni Algebriche Le equazioni
DettagliDerivazione numerica. Introduzione al calcolo numerico. Derivazione numerica (II) Derivazione numerica (III)
Derivazione numerica Introduzione al calcolo numerico Il calcolo della derivata di una funzione in un punto implica un processo al limite che può solo essere approssimato da un calcolatore. Supponiamo
DettagliCrittografia con Python
Crittografia con Python Corso introduttivo Marzo 2015 Con materiale adattato dal libro Hacking Secret Cypher With Python di Al Sweigart (http://inventwithpython.com/hacking/index.html) Ci eravamo lasciati
DettagliCrittografia a chiave pubblica
Crittografia a chiave pubblica Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Cifrari simmetrici canale
DettagliCodifica binaria dell informazione
Codifica binaria dell informazione Marco D. Santambrogio marco.santambrogio@polimi.it Ver. aggiornata al 13 Agosto 2014 Un obiettivo per domarli tutti 2 Obiettivi Rappresentazione dell informazione Da
DettagliRETTE E PIANI NELLO SPAZIO
VETTORI E GEOMETRIA ANALITICA 1 RETTE E PIANI NELLO SPAZIO Rette e piani in forma cartesiana e parametrica. Parallelismo e perpendicolarità, posizioni reciproche tra rette e piani, distanze. Esercizio
DettagliAPPUNTI DI CRITTOGRAFIA: Dai cifrari storici ad RSA. info@vittorioprisco.com
APPUNTI DI CRITTOGRAFIA: Dai cifrari storici ad RSA 1 APPUNTI DI CRITTOGRAFIA (Dai cifrari storici ad RSA) CRITTOLOGIA: scienza che si occupa di comunicazioni in forma sicura e segreta CRITTOGRAFIA: studio
DettagliLa funzione Hash. Garanzia dell integrità dei dati e autenticazione dei messaggi
La funzione Hash Garanzia dell integrità dei dati e autenticazione dei messaggi Come funziona l Hash function Associa stringhe di bit di lunghezza arbitraria e finita stringhe di bit di lunghezza inferiore.
DettagliL ALGORITMO DEL SIMPLESSO REVISIONATO
L ALGORITMO DEL SIMPLESSO REVISIONATO L'algoritmo del simplesso revisionato costituisce una diversa implementazione dell algoritmo standard tesa a ridurre, sotto certe condizioni, il tempo di calcolo e
Dettaglia + 2b + c 3d = 0, a + c d = 0 c d
SPAZI VETTORIALI 1. Esercizi Esercizio 1. Stabilire quali dei seguenti sottoinsiemi sono sottospazi: V 1 = {(x, y, z) R 3 /x = y = z} V = {(x, y, z) R 3 /x = 4} V 3 = {(x, y, z) R 3 /z = x } V 4 = {(x,
DettagliLaboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale
Dipartimento di Ingegneria dell Informazione Università degli Studi di Parma Laboratorio di Programmazione Laurea in Ingegneria Civile e Ambientale Algebra di Boole Stefano Cagnoni Algebra di Boole L algebra
DettagliEsercitazione di Calcolo Numerico 1 22 Aprile Determinare la fattorizzazione LU della matrice a 1 1 A = 3a 2 a 2a a a 2 A =
Esercitazione di Calcolo Numerico 22 Aprile 29. Determinare la fattorizzazione LU della matrice a A = 3a 2 a 2a a a 2 ed utilizzarla per calcolare il det(a). 2. Calcolare il determinante della matrice
DettagliALGEBRA I: SOLUZIONI QUINTA ESERCITAZIONE 9 maggio 2011
ALGEBRA I: SOLUZIONI QUINTA ESERCITAZIONE 9 maggio 2011 Esercizio 1. Usando l algoritmo euclideo delle divisioni successive, calcolare massimo comune divisore e identità di Bézout per le seguenti coppie
DettagliConversione di base. Conversione decimale binario. Si calcolano i resti delle divisioni per due
Conversione di base Dato N>0 intero convertirlo in base b dividiamo N per b, otteniamo un quoto Q 0 ed un resto R 0 dividiamo Q 0 per b, otteniamo un quoto Q 1 ed un resto R 1 ripetiamo finché Q n < b
DettagliGeometria BIAR Esercizi 2
Geometria BIAR 0- Esercizi Esercizio. a Si consideri il generico vettore v b R c (a) Si trovi un vettore riga x (x, y, z) tale che x v a (b) Si trovi un vettore riga x (x, y, z) tale che x v kb (c) Si
DettagliAlgoritmi per operazioni con le matrici
Algoritmi per operazioni con le matrici 1 Sommario Definizioni Alcune operazioni principali sulle matrici Somma di due matrici Trasposta di una matrice Prodotto di matrici: algoritmo classico Prodotto
DettagliAPPUNTI DI INFORMATICA
APPUNTI DI INFORMATICA Per il biennio di liceo scientifico scienze applicate Sommario Il calcolo binario... 2 Numerazione Decimale... 2 Numerazione Binaria... 2 Conversione Binario -> Decimale... 2 Conversione
DettagliPORTE LOGICHE. Si effettua su due o più variabili, l uscita assume lo stato logico 1 se almeno una variabile di ingresso è allo stato logico 1.
PORTE LOGICHE Premessa Le principali parti elettroniche dei computer sono costituite da circuiti digitali che, come è noto, elaborano segnali logici basati sullo 0 e sull 1. I mattoni fondamentali dei
DettagliRappresentazione in complemento a 2: caratteristiche generali
Rappresentazione in complemento a 2: caratteristiche generali La rappresentazione non è completamente posizionale, ma in parte sì. Guardando il bit più significativo (MSB) si capisce se il numero è positivo
DettagliLa codifica. dell informazione
00010010101001110101010100010110101000011100010111 00010010101001110101010100010110101000011100010111 La codifica 00010010101001110101010100010110101000011100010111 dell informazione 00010010101001110101010100010110101000011100010111
DettagliUNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa 1 Seconda prova intermedia 17 giugno 2013
A UNIVERSITÀ DEGLI STUDI ROMA TRE Corso di Studi in Ingegneria Informatica Ricerca Operativa Seconda prova intermedia 7 giugno 0 Nome: Cognome: Matricola: Orale /06/0 ore aula N Orale 0/07/0 ore aula N
DettagliUniversità del Piemonte Orientale
Compito di Algebra del 13 Gennaio 2009 1) Trovare l ordine di [11] 112 in Z 112. Si dica poi per quali valori di k si ha [11] k 112 [34] 112 = [31] 112. Soluzione. L ordine di [11] 112 è 12. k 12 8. 2)
DettagliProgetto di Geometria Computazionale: simulazione del movimento ondoso di un fluido utilizzando Kass e Miller
Progetto di Geometria Computazionale: simulazione del movimento ondoso di un fluido utilizzando Kass e Miller Stefano Ceroni, Sara Toia Luglio 2011 1 Introduzione Il metodo di Kass e Miller [1] per la
DettagliTeoria dell informazione
Corso di Laurea a Distanza in Ingegneria Elettrica Corso di Comunicazioni Elettriche Teoria dell informazione A.A. 2008-09 Alberto Perotti DELEN-DAUIN Modello di sistema di comunicazione Il modello di
DettagliCodifica di canale. (dalle dispense e dalle fotocopie) Trasmissione dell Informazione
Codifica di canale (dalle dispense e dalle fotocopie) Codici lineari a blocchi Un codice lineare (n,k) è un codice che assegna una parola lunga n ad ogni blocco lungo k. Si dice che il codice abbia un
DettagliFigura 1: 1) Si scriva la formulazione del problema come problema di PLI (con un numero minimo di vincoli) e la matrice dei vincoli.
ESERCIZIO 1 Sia dato il grafo orientato in Figura 1. Si consideri il problema di flusso a 1 2 4 Figura 1: costo minimo su tale grafo con b 1 = 4 b 2 = 2 b = b 4 = e c 12 = 2 c 1 = 4 c 14 = 1 c 2 = 1 c
DettagliLA MATEMATICA DELLE RELAZIONI SOCIALI
LA MATEMATICA DELLE RELAZIONI SOCIALI ALESSIO TORTI SILVIA LAZZARI FRANCESCA GERACE FLAVIA VICICONTE ABSTRACT. Nell articolo si analizzano, utilizzando la teoria dei grafi, le diverse configurazioni che
DettagliGEOMETRIA PIANA. 1) sia verificata l uguaglianza di segmenti AC = CB (ossia C è punto medio del segmento AB);
VETTORI E GEOMETRIA ANALITICA 1 GEOMETRIA PIANA Segmenti e distanza tra punti. Rette in forma cartesiana e parametrica. Posizioni reciproche di due rette, parallelismo e perpendicolarità. Angoli e distanze.
DettagliRappresentazione e Codifica dell Informazione
Rappresentazione e Codifica dell Informazione Capitolo 1 Chianese, Moscato, Picariello, Alla scoperta dei fondamenti dell informatica un viaggio nel mondo dei BIT, Liguori editore. Sistema di numerazione
DettagliLa circonferenza nel piano cartesiano
6 La circonferenza nel piano cartesiano onsideriamo la circonferenza in figura in cui il centro è ; e il raggio 5 r : se indichiamo con P ; un punto della circonferenza avremo, per definizione, che la
DettagliV Esercitazione di Matematica Finanziaria
V Esercitazione di Matematica Finanziaria 25 Novembre 200 Esercizio. Date due operazioni finanziarie (con scadenzari in anni) x = { 40, 7.8, 7.8, 7.8, 7.8, 7.8, 47.8}/t = {0, 0.5,,.5, 2, 2.5, 3}; determinare:
DettagliTeorema di Thevenin generalizzato
Teorema di Thevenin generalizzato Si considerino due reti elettriche lineari, A e B, aventi rispettivamente N A e N B nodi interni. Esse si interfacciano attraverso n (n 3) fili di collegamento, in cui
DettagliRappresentazione dell informazione
Rappresentazione dell informazione Problema che coinvolge aspetti filosofici Interessa soprattutto distinguere informazioni diverse Con un solo simbolo è impossibile Pertanto l insieme minimo è costituito
DettagliCOME CALCOLARE LA COMBINAZIONE DI MINIMO COSTO DEI FATTORI
COME CALCOLARE LA COMBINAZIONE DI MINIMO COSTO DEI FATTORI In questa Appendice, mostreremo come un impresa possa individuare la sua combinazione di minimo costo dei fattori produttivi attraverso il calcolo
DettagliRiassumiamo le proprietà dei numeri reali da noi utilizzate nel corso di Geometria.
Capitolo 2 Campi 2.1 Introduzione Studiamo ora i campi. Essi sono una generalizzazione dell insieme R dei numeri reali con le operazioni di addizione e di moltiplicazione. Nel secondo paragrafo ricordiamo
DettagliIntroduciamo ora un altro campo, formato da un numero finito di elementi; il campo delle classi resto modulo n, con n numero primo.
Capitolo 3 Il campo Z n 31 Introduzione Introduciamo ora un altro campo, formato da un numero finito di elementi; il campo delle classi resto modulo n, con n numero primo 32 Le classi resto Definizione
DettagliFondamenti di Informatica - 1. Prof. B.Buttarazzi A.A. 2011/2012
Fondamenti di Informatica - 1 Prof. B.Buttarazzi A.A. 2011/2012 Sommario I sistemi di numerazione Il sistema binario Altri sistemi di numerazione Algoritmi di conversione Esercizi 07/03/2012 2 Sistemi
DettagliCodice Gray. (versione Marzo 2007)
Codice Gray (versione Marzo 27) Data una formula booleana con n variabili, per costruire una tavola di verità per questa formula è necessario generare tutte le combinazioni di valori per le n variabili.
DettagliIntroduzione al Metodo del Simplesso. 1 Soluzioni di base e problemi in forma standard
Introduzione al Metodo del Simplesso Giacomo Zambelli 1 Soluzioni di base e problemi in forma standard Consideriamo il seguente problema di programmazione lineare (PL), relativo all esempio di produzione
DettagliEquazioni, funzioni e algoritmi: il metodo delle secanti
Equazioni, funzioni e algoritmi: il metodo delle secanti Christian Ferrari 1 Introduzione La risoluzione di equazioni in R ci ha mostrato che solo per le equazioni polinomiali di primo e secondo grado,
DettagliI.4 Rappresentazione dell informazione
I.4 Rappresentazione dell informazione Università di Ferrara Dipartimento di Economia e Management Insegnamento di Informatica Ottobre 13, 2015 Argomenti Introduzione 1 Introduzione 2 3 L elaboratore Introduzione
DettagliCorso di Matematica per la Chimica
Dott.ssa Maria Carmela De Bonis a.a. 2013-14 Pivoting e stabilità Se la matrice A non appartiene a nessuna delle categorie precedenti può accadere che al k esimo passo risulti a (k) k,k = 0, e quindi il
DettagliFunzioni elementari: funzioni potenza
Funzioni elementari: funzioni potenza Lezione per Studenti di Agraria Università di Bologna (Università di Bologna) Funzioni elementari: funzioni potenza 1 / 36 Funzioni lineari Come abbiamo già visto,
Dettagli11.4 Chiusura transitiva
6 11.4 Chiusura transitiva Il problema che consideriamo in questa sezione riguarda il calcolo della chiusura transitiva di un grafo. Dato un grafo orientato G = hv,ei, si vuole determinare il grafo orientato)
DettagliDipendenza e indipendenza lineare (senza il concetto di rango)
CAPITOLO 5 Dipendenza e indipendenza lineare (senza il concetto di rango) Esercizio 5.1. Scrivere un vettore w R 3 linearmente dipendente dal vettore v ( 1, 9, 0). Esercizio 5.2. Stabilire se i vettori
DettagliElementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia
Elementi di Algebra e di Matematica Discreta Cenno di un applicazione alla crittografia Cristina Turrini UNIMI - 2015/2016 Cristina Turrini (UNIMI - 2015/2016) Elementi di Algebra e di Matematica Discreta
Dettagli04 - Numeri Complessi
Università degli Studi di Palermo Scuola Politecnica Dipartimento di Scienze Economiche, Aziendali e Statistiche Appunti del corso di Matematica 04 - Numeri Complessi Anno Accademico 2015/2016 M. Tumminello,
DettagliSistemi lineari - Parte Seconda - Esercizi
Sistemi lineari - Parte Seconda - Esercizi Terminologia Operazioni elementari sulle righe. Equivalenza per righe. Riduzione a scala per righe. Rango di una matrice. Forma canonica per righe. Eliminazione
DettagliConfidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica
Confidenzialità e crittografia simmetrica Barbara Masucci Dipartimento di Informatica ed Applicazioni Università di Salerno masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci Contenuto Uso
DettagliCrittografia e sicurezza delle reti. WEP: Wired Equivalent Privacy
Crittografia e sicurezza delle reti WEP: Wired Equivalent Privacy Stream Ciphers Inizia con una chiave segreta ( seed ) Genera uno stream di byte (Keystream): byte i dello stream è funzione della chiave
DettagliPROBLEMI ALGORITMI E PROGRAMMAZIONE
PROBLEMI ALGORITMI E PROGRAMMAZIONE SCIENZE E TECNOLOGIE APPLICATE CLASSE SECONDA D PROGRAMMARE = SPECIFICARE UN PROCEDIMENTO CAPACE DI FAR SVOLGERE AD UNA MACCHINA UNA SERIE ORDINATA DI OPERAZIONI AL
DettagliESERCIZI SULLE MATRICI
ESERCIZI SULLE MATRICI Consideriamo il sistema lineare a, x + a, x + + a,n x n = b a, x + a, x + + a,n x n = b a m, x + a m, x + + a m,n x n = b m di m equazioni in n incognite che ha a, a,n A = a m, a
DettagliFUNZIONI BOOLEANE. Vero Falso
FUNZIONI BOOLEANE Le funzioni booleane prendono il nome da Boole, un matematico che introdusse un formalismo che opera su variabili (dette variabili booleane o variabili logiche o asserzioni) che possono
DettagliAppunti su Indipendenza Lineare di Vettori
Appunti su Indipendenza Lineare di Vettori Claudia Fassino a.a. Queste dispense, relative a una parte del corso di Matematica Computazionale (Laurea in Informatica), rappresentano solo un aiuto per lo
DettagliEsercizi Capitolo 7 - Hash
Esercizi Capitolo 7 - Hash Alberto Montresor 19 Agosto, 2014 Alcuni degli esercizi che seguono sono associati alle rispettive soluzioni. Se il vostro lettore PDF lo consente, è possibile saltare alle rispettive
DettagliLe coniche: circonferenza, parabola, ellisse e iperbole.
Le coniche: circonferenza, parabola, ellisse e iperbole. Teoria in sintesi Queste curve si chiamano coniche perché sono ottenute tramite l intersezione di una superficie conica con un piano. Si possono
Dettagliuna possibile funzione unidirezionale
una possibile funzione unidirezionale moltiplicare due interi a n bit è facile (in O(n 2 ) con l algoritmo usuale) trovare un primo a n bit, e verificare che è primo, è facile (vedremo poi) fattorizzare
DettagliALGEBRA E GEOMETRIA Esercizi Corso di Laurea in Chimica - anno acc. 2015/2016 docente: Elena Polastri,
ALGEBRA E GEOMETRIA Esercizi Corso di Laurea in Chimica - anno acc. 05/06 docente: Elena Polastri, plslne@unife.it Esercizi 3: SPAZI VETTORIALI e MATRICI Combinazioni lineari di vettori.. Scrivere il vettore
Dettagli( ) le colonne della matrice dei coefficienti, con. , risulta A 3 = A 1 + 4A 2 + 4A 5, A 4 = A 1 + A 2,
1 Elementi di Analisi Matematica e Ricerca Operativa prova del 6 luglio 2016 1) Discutere il seguente problema di Programmazione Lineare: Trovare il massimo di p x 1, x 2, x 3, x 4 # x 2 + 4 x 3 + x 4
DettagliDistribuzioni campionarie. Antonello Maruotti
Distribuzioni campionarie Antonello Maruotti Outline 1 Introduzione 2 Concetti base Si riprendano le considerazioni fatte nella parte di statistica descrittiva. Si vuole studiare una popolazione con riferimento
DettagliELEMENTI di TEORIA degli INSIEMI
ELEMENTI di TEORI degli INSIEMI & 1. Nozioni fondamentali. ssumeremo come primitivi il concetto di insieme e di elementi di un insieme. Nel seguito gli insiemi saranno indicati con lettere maiuscole (,,C,...)
DettagliRapida Nota sulla Rappresentazione dei Caratteri
TECNOLOGIA DIGITALE TECNOLOGIA DIGITALE (segue) CPU, memoria centrale e dispositivi sono realizzati con tecnologia elettronica digitale Dati ed operazioni vengono codificati tramite sequenze di bit 8 bit
DettagliInversa. Inversa. Elisabetta Colombo
Corso di Approfondimenti di Matematica per Biotecnologie, Anno Accademico 00-0, http://users.mat.unimi.it/users/colombo/programmabio.html e 3 con i Matrici inverse di matrici quadrate e con i Sia A una
DettagliGruppi, Anelli, Campi
Gruppi, Anelli, Campi (A1) Chiusura per addizione (A2) Associatività addizione (A3)Elemento neutro addizione (A4)Esistenza inversi additivi Campo (A5) Commutatività addizione (M1) Chiusura per moltiplicazione
Dettagli