Dalla Crittografia a Chiave Pubblica al Commercio Elettronico

Dimensione: px
Iniziare la visualizzazioe della pagina:

Download "Dalla Crittografia a Chiave Pubblica al Commercio Elettronico"

Transcript

1 Dalla Crittografia a Chiave Pubblica al Commercio Elettronico Vincenzo Schifano Abstract Uno degli aspetti sicuramente più attuale all interno del mondo dell informatica, con cui ci relazioniamo quotidianamente, è quello della sicurezza informatica e quindi della crittografia. La crittografia è impiegata nelle operazioni più comuni, quando utilizziamo il cellulare, quando accediamo al nostro account per controllare la posta, quando preleviamo del denaro presso uno sportello ATM, sono tutte operazioni rese sicure grazie a un qualche protocollo crittografico che proibisce a un probabile agressore di accedere ai nostri dati sensibili. 1. Introduzione Sin dai tempi più antichi si è sentito il bisogno di proteggere le informazioni sensibili, dalle direttive di un generale ai vari accampamenti durante delle guerre alle corrispondenze di carattere politico e diplomatico tra i regnanti di paesi diversi. Uno dei primi approcci utilizzati per raggiungere tale scopo fu l'uso della steganografia (dal greco στεγανός, nascosto, e γραφία, scrittura), l'idea era dunque quella di nascondere il messaggio in qualcosa o in qualcuno. Il passo successivo che rivoluzionò il mondo della sicurezza nello scambio delle informazioni fu l'uso della crittografia, dal greco κρυπτóς che significa "nascosto", e γραφία che vuol dire scrittura. Sebbene sembri che le due parole vogliano dire la stessa cosa, questa volta l'idea consiste nel cifrare il messaggio vero e proprio e non semplicemente nel nasconderlo, così da renderlo incomprensibile in caso di intercettazione da parte di persone non autorizzate. Tra le varie tecniche di encrypting ricordiamo: cifrari a trasposizione, cifrari a sostituzione monoalfabetica, cifrari a sostituzione polialfabetica, cifrari poligrafici o tomogrammici, cifrari a dizionario o a repertorio, cifrari misti, macchine cifranti, cifrari a chiavi segrete e, infine, i moderni cifrari a chiave pubblica. Per meglio comprendere i vari protocolli e le tecniche usate è necessario operare dei richiami matematici: Definizione 1: (Modulo di un numero). Dato un numero qualsiasi, calcolarne il modulo è abbastanza semplice: per esempio, per calcolare 25 modulo 7, si divide 25 per 7 ottenendo il quoziente 3 e il resto 4, ne segue che (25 mod 7) = 4. In generale per calcolare (a mod b) si trovano due interi q ed r tali che a = qb + r e ovviamente 0 r b. il valore di (a mod b) è definito pari a r. [1] Definizione 2: (Gruppo, Gruppo moltiplicativo). Un gruppo ammette una sola operazione binaria. I numeri in Z p sono un gruppo con l addizione. La somma di due numeri del gruppo restituisce un terzo elemento che fa ancora parte del gruppo. Gli elementi 1,, (p-1) insieme alla moltiplicazione (mod p) formano un gruppo detto gruppo moltiplicativo (mod p) o anche Z p *. Nel caso di Z p il campo finito è costituito dal gruppo di addizione, definito dall addizione (mod p), e dal gruppo moltiplicativo Z p *. Un gruppo può contenere un sottogruppo, costituito da una parte degli elementi del gruppo completo: se si applica l operazione del gruppo a due elementi del sottogruppo, si ottiene ancora un elemento del sottogruppo. I sottogruppi sono molto utilizzati per velocizzare alcune operazioni di crittografia. Per esaurire completamente un gruppo moltiplicativo è necessario definire anche l operazione inversa alla moltiplicazione: la divisione (mod p) può essere definita come segue: c = a/b (mod p). La formula è equivalente a dire che esiste un numero c, (mod p), tale che c b = a (mod p). Non si può dividere per 0 ma l operazione è sempre definita se b 0. Scelto un g qualsiasi nel gruppo Z p * consideriamo i numeri: 1, g, g 2, g 3 tutti (mod p) : questa è una serie infinita di numeri ma Z p * contiene un numero finito di elementi, ad un certo punto gli elementi cominceranno a ripetersi. Supponiamo che accada quando g i = g j con i < j. Dividendo per g i otteniamo 1 = g j-i. Ne consegue che esiste un numero q = j-i tale che g q = 1 (mod p). Continuando a moltiplicare i vari g, è possibile ottenere tutti gli elementi 1, g, g 2, g 3,, g q-1, per questo motivo g prende il nome di generatore del gruppo: il numero totale di elementi che possono essere scritti come potenza di g è esattamente q ovvero l ordine di g. [2]

2 Definizione 3: (Campo, Campo finito). In matematica si definisce campo un insieme non vuoto K, caratterizzato da due operazioni binarie denominate somma, (K, +), e prodotto (K, ). Le due operazioni godono della proprietà commutativa, della distributiva rispetto al prodotto e dell'esistenza dell'elemento neutro (0 per la somma e 1 per il prodotto). Se l'insieme K ha un numero finito di elementi il campo si dice finito. In particolare il campo finito dei numeri modulo un numero primo p, si indica con campo (mod p) o semplicemente (mod p) o anche con Z/Z p. L'insieme degli elementi di un campo finito (mod p) contiene gli elementi 0, 1, (p-1). Ricordiamo che si può sempre aggiungere o sottrarre qualsiasi elemento multiplo di p senza cambiarne il risultato e tutti i risultati sono sempre compresi nell intervallo di valori 0, 1, (p-1). [3] Definizione 4: (Piano proiettivo). Dato il piano affine A = K 2, il piano proiettivo su K associato a V è l'insieme P(K), i cui elementi, chiamati punti di P(K), sono i sottospazi vettoriali di dimensione uno di K, cioè le rette vettoriali di K. Uno spazio proiettivo è detto reale se K = R, complesso se K = C. Ogni v ϵ V genera il sottospazio di V di dimensione uno <v> = {λv : λ ϵ V}. Quindi: P(K) = {P = <v> : v 0, v ϵ K 3 } = {<v> = λv : λ ϵ K}. Il generico punto P sarà definito come: P = [X P, Y P ; T P ] = [λx P, λy P ; λt P ]. Scegliamo la coordinata T e discriminiamo i punti per cui T P 0 (allora P = [x, y; 1], le coordinate non sono omogenee ed i punti si dicono proprii) e i punti per cui T P = 0 (allora P = [x, y; 0], le coordinate sono omogenee ed i punti si dicono impropri o all'infinito). 2. Crittografia a Chiave Pubblica Supponiamo di avere dieci persone che vogliono comunicare tra loro in maniera sicura, per fare ciò si incontrano scambiandosi una chiave segreta. Come succede con tutte le chiavi, è necessario un continuo aggiornamento delle stesse che porta dunque a successivi incontri. Si ha che per un gruppo di n persone servono n(n-1)/2 chiavi, quindi nel nostro caso sono necessarie ben 45 chiavi. All aumentare delle persone coinvolte nello scambio di informazioni la gestione delle chiavi diventa rapidamente ingestibile. La crittografia convenzionale è basata sull'uso di una chiave segreta, il problema principale di questo tipo di protocollo è quello di trovare un canale sicuro per trasmettere suddetta chiave. Per ovviare a questo problema si pensò dunque di usare non una sola chiave ma due, una segreta, per decifrare, e una pubblica, per cifrare. Lo scenario tipico dunque non prevede più la presenza di due sole parti bensì, per esempio, una rete di utenti. Data la asimmetria, dovuta all'uso di due chiavi diverse, questo tipo di cifrari sono detti asimmettrici. Le origini della crittografia a chiave pubblica si fanno risalire al 1976 con la pubblicazione dell articolo New Directions in Cryptography ad opera di Whitfield Diffie e Martin Hellman. La sicurezza della crittografia asimmetrica è garantita da delle funzioni one-way (a senso unico) con trapdoor (passaggio segreto), facili da calcolare ma difficili da invertire dove per difficili da invertire si intende operazioni che computazionalmente risultano essere proibitive. L'informazione trapdoor (vale a dire quella caratteristica aggiuntiva che aiuta nell'operazione di inversione della funzione prescelta) non deve però essere deducibile dalla descrizione della funzione altrimenti non sarebbe più one-way. [4] La Crittografia è la maniera per due persone, Alice (A) e Bob (B), di comunicare segretamente usando un canale non sicuro senza che un avversario, Oscar (O), capisca cosa sia stato detto tra i due. Definizione 5: (Criptosistema). Un Criptosistema è costituito da: un insieme finito P di possibili testi in chiaro ( Plaintext ); un insieme finito C di possibili testi crittografati ( Ciphertext ); un insieme finito K di possibili chiavi k = (k E, k D ) consistenti, in realtà come già detto, nella coppia chiave pubblica, chiave privata ; tali che per ogni k ϵ K, esiste una funzione regola per cifrare e k ϵ E e una corrispondente regola per decifrare d k appartenente a D. Ognuna delle e k : Pζ C e d k : C P sono funzioni tali che d k (e k (x)) = x per ogni testo in chiaro x appartenente a P. In un criptosistema ci sono quindi due chiavi. La chiave pubblica, che è pubblicata in una directory, definisce la e k e consente la cifratura, e la chiave

3 privata che è tenuta segreta, definisce la d k e permette di decifrare il messaggio [5]. 3. Problema del Logaritmo Discreto (DLP), Protocollo Diffie-Hellman (DH) e Algoritmo di El Gamal Come detto precedentemente, i padri fondatori della crittografia a chiave pubblica, Diffie ed Hellman, proposero il loro schema di lavoro, conosciuto come Schema Diffie-Hellman, per ovviare al problema inerente lo scambio della chiave segreta per poi garantire future comunicazioni. Definizione 6: (Discrete Logarithm problem - DLP). Dato un gruppo Z p, un α ϵ Z p e β= α b, calcolare b. Il problema del logaritmo discreto (DLP) è uno dei problemi matematici più noti all'interno della Teoria dei Numeri, è un problema per il quale non si conoscono delle soluzioni efficienti e pertanto uno dei migliori candidati in ambito crittografico. L'esponente b, dato ad α per ottenere β, è detto logaritmo discreto di β in base α rispetto al modulo p. Il problema del calcolo del logaritmo discreto è un esempio di funzione one-way inversa utilizzata per i protocolli asimmetrici (come ad esempio il celebre algoritmo RSA). Esistono infatti degli algoritmi efficienti per il calcolo di qualsiasi potenza ma non per l'operazione inversa. Se scegliamo un numero primo p sufficientemente grande, infatti, risulta un'operazione computazionalmente complicata, ne consegue che con la dovuta attenzione riguardo il numero p, si ottengono tempi polinomiali. Esempi di algoritmi con tempo polinomiale per risolvere questo tipo di problema sono l'algoritmo di Pohlig - Hellman o l'algoritmo di Shanks. Dalla complessità computazionale molto elevata deriva un certo grado di sicurezza dato dal fatto che la risoluzione di tale quesito va oltre le possibilità di un crittoanalista reale [6]. Algoritmo 1: (Diffie-Hellman key exchange Protocollo DH). 1. (Setup) A e B scelgono pubblicamente il campo Z p e un elemento ζ ϵ Z p. 2. A genera un intero casuale a ϵ Z p-1, chiave privata di A, calcola α = ζ a (mod p) in Z p e trasmette α a B attraverso un canale di comunicazione pubblico. 3. B genera un intero casuale b ϵ Z p-1, chiave privata di B, calcola β = ζ b (mod p) in Z p e trasmette β ad A attraverso lo stesso canale. 4. A riceve γ e calcola β = k A = β a = (ζ b ) a. 5. B riceve α e calcola k = k B = α b = (ζ a ) b. Adesso sia A che B conoscono l'elemento k = ζ ab, chiave segreta, che può essere usato come chiave private per comunicazioni future. Anche se un avversario O dovesse in qualche modo venire a conoscenza dei valori Z p, ζ, α = ζ a (mod p) e β = ζ b (mod p) e volesse ricavare la chiave k, si troverebbe contro la funzione DH cioè k = DH(ζ a (mod p), ζ b (mod p)) = ζ ab (mod p). Il problema che l'avversario deve risolvere mediante la funzione DH, detta Funzione Diffie-Hellman, è noto proprio come il Problema di Diffie-Hellman o anche DHP. Malgrado l'alto grado di sicurezza di una crittografia basata sul DHP, vi è un particolare tipo di attacco per violare questo tipo di protocollo: il cosiddetto Man in the middle o anche MITM. Questo tipo di attacco consiste nella capacità dell'attaccante di intromettersi tra i due interlocutori, assumendo con uno l'identità dell'altro, e di leggere i messaggi scambiati ed eventualmente modificarne alcuni ingannando i diretti interessati, prima di inoltrarli al vero destinatario. Nel caso della crittografia a chiave pubblica, se Alice chiede a Bob di inviarle la sua chiave pubblica ed Eve, una possibile attaccante, è capace di intercettarla allora questa può inviare all'ignara Alice una falsa chiave pubblica, la sua, della quale possiede la relativa chiave privata. A questo punto Alice cifra i suoi messaggi rivolti a Bob con la chiave di Eve che li decifra usando la sua chiave privata e li cifra nuovamente, magari alterandoli, usando la chiave pubblica di Bob che non sospetta nulla. Un modo per evitare la possibilità di un attacco di tipo MITM è quello di firmare le chiavi. [7]

4 Algoritmo 2: (El Gamal). 1. (Setup) Sono scelti un gruppo G qualsiasi e un elemento α ϵ G. Ogni utente prende un intero casuale (la chiave privata) l ϵ {0, 1,..., G -1} e rende pubblico β = α l (la chiave pubblica). Supponiamo che i messaggi siano elementi di G e che l'utente A desideri inviare un messaggio, m, all'utente B. 2. A genera un intero casuale k ϵ {0, 1,..., G -1} e calcola α k. 3. A consulta la chiave pubblica di B, β = α l, e calcola (β) k dopo mβ k. 4. A invia a B la coppia di elementi del gruppo (α k, mβ k ). 5. B calcola (m β k )((α k ) l ) -1 = (mα lk )(α lk ) -1 = m e recupera il messaggio. L'eventuale avversario O, ascoltando il canale pubblico, viene a conoscenza di α, α k, β e mβ k. Se risolvere il logaritmo discreto fosse possibile, si darebbe modo all'attaccante di trovare l e quindi sarebbe possibile usare lo stesso procedimento che effettua B per decifrare m [8]. Esempio 1: (Cifratura e decifratura con il gruppo G = Z * 11 = {1, 2, 3,..., 10} = <2>). 4. Curve Ellittiche Il primo uso delle curve ellittiche in Crittografia risale al 1985 ad opera di Victor Miller e Neal Koblitz, l'idea non era quella di creare dei nuovi criptosistemi più efficienti bensì di adattarne dei vecchi già esistenti applicando quanto visto sul DLP, invece che sul gruppo ciclico Z p, sul gruppo dei punti di una curva ellittica definita su un campo finito. Questo approccio consente di poter variare più gruppi al variare dei coefficienti della curva e, inoltre, risulta molto più efficiente. Ai fini di questa tesi, è sufficiente dare, per una curva ellittica, la seguente definizione, alla quale comunque ci si può sempre riportare anche dando definizioni più generali. Definizione 7: (Curva ellittica). Una curva ellittica ε, su un campo K, che denoteremo ε/k, o semplicemente con ε, è l'insieme dei punti proprii (x, y) ϵ K 2 che soddisfano l'equazione y 2 = x 3 +ax+b, con a, b appartenenti a K costanti tali che 4a 3 +27b 2 0, insieme al punto all'infinito ϴ = (0, 1; 0) della curva ε del piano proiettivo. Se K è finito, allora ε ha un numero finito di punti ε. 1. (Setup) Abbiamo G = 10 e α = 2. L'utente B sceglie casualmente l = 5 e calcola α l = 2 5 = 10 (mod 11). La chiave pubblica sarà composta dalla terna (n, α, α l ) = (10, 2, 10) e la chiave privata sarà l = L'utente A sceglie k = 7 e calcola α k = 2 7 = 7 (mod 11). 3. L'utente A considera α l = 10 e cifra il messaggio m = 3, calcola m(α l ) k = = L'utente A invia la coppia (α k, mαl k ) = (7,8). 5. L'utente B, l'unico che conosce la chiave privata l, calcola mα lk (((α k ) l ) -1 = 8(7 5 ) -1 = 3. L'utente B riceve correttamente il messaggio, m = 3, inviato da A. [9] I punti di una curva ellittica si possono sommare mediante la regola corda-tangente, che consiste, in linea di massima, nel determinare il terzo punto d'intersezione R tra la retta per P e Q con la curva

5 stessa, e nel porre P + Q uguale al punto simmetrico di R rispetto all'asse x. Lo zero del gruppo è il punto all'infinito ϴ = (0, 1; 0), così l'opposto di un punto è il suo simmetrico rispetto all'asse x. In formule: siano P = (x P, y P ; 1) e Q = (x Q, y Q ; 1) due punti propri sulla curva y 2 = x 3 +ax +b. 1. Se x P = x Q allora y P = ± y Q. 1.1) Se y P + y Q = 0, allora P + Q = ϴ = (0, 1; 0). 1.2) Se y P = y Q 0, allora P = Q e P + Q = 2P = ({(3x P 2 +a) / 2y P } 2-2x P, -y P - (3x P 2 +a) {((3x P 2 +a) / 2y P ) 2-3x P } / 2y P ; 1). 2. Infine, se x P è diverso da x Q, sia m = (y P - y Q )/(x P - x Q ) il coefficiente angolare della retta passante per i punti P e Q. Allora (x P, y P ; 1) + (x Q, y Q ; 1) = (m 2 - x P - x Q, - y P - m(m 2-2 x P x Q ); 1). I crittosistemi basati su curve ellittiche sembrano offrire lo stesso livello di sicurezza di quelli basati su chiave pubblica con il vantaggio di avere delle chiavi molto più corte, permettendo dunque una maggiore velocità di encrypting e decrypting utilizzando però una minore quantità di ampiezza di banda. Nel mondo della crittografia non si suole usare le curve ellittiche sui reali, ma si restringe l'ordine del campo o a un numero primo dispari, quindi su Z p, oppure avente ordine una potenza di due. Non sembrano esserci molte differenze tra la sicurezza offerta nei due casi, la differenza sta dal punto di vista implementativo dato che le realizzazioni su potenze di 2 sono più veloci ed economiche. Siano date una curva ellittica ε su un campo finito K e un punto B ϵ ε, il problema del logaritmo discreto applicato alla curva ε in base B (o anche ECDLP) equivale a trovare, dato un punto P ϵ ε, se esiste, x ϵ K tale che xb = P. Se ci manteniamo su dei campi finiti allora è possibile calcolare il logaritmo discreto con tempi subesponenziali mediante l'algoritmo dell'index calculus. Questo è reso possibile dal fatto che un campo finito gode di due operazioni, somma e prodotto, mentre le curve ellittiche sono solamente additive pertanto non consentono l'uso di questo tipo di algoritmo rendendo i calcoli necessari molto laboriosi. Anche questa volta, la non esistenza di algoritmi efficienti per il calcolo del logaritmo discreto ci assicura un notevole grado di sicurezza crittografica. Così come il protocollo DH poteva essere violato tramite un attacco di tipo Man in the middle, così anche il protocollo EC ha dei punti deboli; per questo motivo non tutte le curve ellittiche sono delle candidate eccellenti per i nostri scopi. Vediamo ora come funziona il protocollo: Alice e Bob scelgono pubblicamente una curva ellittica ε su un campo finito K e un punto Q ϵ ε. Alice sceglie un intero casuale k A e calcola il punto k A Q inviandolo poi a Bob. Bob allora sceglie un intero casuale k B e calcola quindi il punto k B Q, dunque lo invia ad Alice. A questo punto Alice e Bob condividono la chiave P = k A k B Q. Se un attaccante Eve dovesse intercettare la comunicazione tra i due allora dovrebbe determinare P conoscendo Q, k A e k B. Questo è noto come problema Diffie Hellman applicato alle Curve Ellittiche. Un altro esempio di algoritmo basato sull'uso della crittografia a Curve Ellittiche è l'ecdsa (Elliptic Curve Digital Signature Algorithm), algoritmo di firma che viene utilizzato per autenticare un dispositivo oppure un messaggio inviato dal dispositivo. Ipotizziamo uno scambio di messaggi tra due dispostivi A e B, il dispositivo A invia il messaggio e la firma, creata mediante la chiave privata di A. Per verificare la firma di A, il dispositivo B deve conoscere la chiave pubblica di A ma dato che la conosce può facilmente verificare se il messaggio ricevuto è stato inviato proprio da A. Affinché questo algoritmo sia realizzabile, A e B devono decidere a priori su una curva ellittica usata come dominio dei parametri del processo. Algoritmo 3: (El Gamal per le Curve Ellittiche). L'algoritmo di El Gamal applicato alle Curve ellittiche fondamentalmente è lo stesso applicato precedentemente, l'unica differenza sta nel fatto che questa volta consideriamo il gruppo additivamente. 1. (Setup) Scegliamo una curva ellittica ε su un campo finito Z p, insieme ad un punto P sulla curva. Il punto P genera un sottogruppo ciclico G = {ϴ, P, 2P,..., (n-1)p} di ordine n. Ogni utente sceglie un intero casuale l appartenente a {0, 1,..., n-1} come chiave privata e rende pubblico il prodotto lp come chiave pubblica. Supponiamo che i messaggi siano elementi di G e che l'utente A desideri inviare un messaggio, m, all'utente B.

6 2. A genera un intero casuale k appartenente a {0, 1,..., n-1} e calcola kp. 3. A considera la chiave pubblica di B, lp, e successivamente la somma m+klp. 4. A invia a B la coppia di elementi del gruppo (kp, m+klp). 5. B calcola (m+klp) -l(kp) = m e recupera il messaggio. Ancora una volta, essere capaci di trovare l da P ed lp (risolvendo dunque il problema del logaritmo discreto applicato alle curve ellittiche) ci consentirebbe di crackare questo criptosistema [11]. 5. Pairing Bilineari Come abbiamo visto finora, la sicurezza del protocollo di scambio delle chiavi di Diffie-Hellman e quella di El Gamal è basata sulla difficoltà del problema del logaritmo discreto in un gruppo che può essere il gruppo moltiplicativo di un campo finito o, più efficientemente, il sottogruppo generato da un punto di una curva ellittica. Se però è possibile definire una funzione (bi)-lineare (pairing) tra punti di una curva ellittica e elementi del campo finito, tutto il vantaggio del considerare l'uso in Crittografia delle curve ellittiche è perso. Il campo della crittografia basato sui Pairing è relativamente recente. Definizione 8: (Pairing bilineare). Siano G 1 e G 2 due gruppi di ordine p (per qualche numero primo p sufficientemente grande). Un Pairing bilineare è una mappa bilineare e : G 1 G 1 G 2 tale cioè che e(ap, bq) = e(p,q) ab, per ogni P, Q ϵ G 1 e a, b Z Un Pairing bilineare si dice ammissibile se soddisfa le seguenti proprietà: Non-degenericità: P ϵ G 1 Q ϵ G 1 : e(p, Q) 1. Computazionabilità: esiste un algoritmo efficiente per calcolare e(p, Q) per qualche P, Q ϵ G 1 [12]. Osserviamo che se è possibile riconoscere un pairing ammissibile quando G 1 è una curva ellittica, allora è altresì possibile ridurre il calcolo del logaritmo discreto di P in base B mediante la relazione 1 = e(p, P) = e(xb, P) = e(b, P) x, ponendo e(b, P) = y e risolvendo y x = 1 nel campo finito. Il Pairing ammissibile più comunemente usato è il Pairing di Weil. Per introdurlo occorre definire alcuni concetti: Definizione 9: (Divisore, Ordine del Divisore, Grado del Divisore, Supporto del Divisore, Divisore principale). Se ε/k è una curva non singolare, allora un divisore di ε è una combinazione lineare di punti su ε. Se P j denota i punti su ε, allora un divisore è scritto come D = n j P j, dove gli n j sono interi. Se P è un punto e D è un divisore, allora l'ordine v P (D) è il coefficiente di P in D (è pari a 0 se P non è presente in D). Il grado del divisore D è dato da deg(d):= n j. L'insieme di tutti i punti P con coefficienti diversi da zero è chiamato supporto del divisore ed è definito come supp(d) = {P ϵ ε n j 0}. Se φ = f/g è una funzione razionale omogenea di grado n, allora il numero n degli zeri di φ è uguale al numero dei poli di φ. Il divisore di grado zero il cui supporto è determinato dagli n zeri di φ (quindi di f) con la loro molteplicità e con segno positivo e dagli n poli di φ (quindi gli zeri di g) con la loro molteplicità e con segno negativo si dice divisore principale di φ e si denota con div(φ). Due divisori D 1 e D 2 si dicono linearmente equivalenti e si scrive D 1 ~ D 2 se la loro differenza D 1 - D 2 è un divisore principale. [13] Definizione 10: (Funzione di Weil). Se ε è una curva ellittica, D un divisore su ε e f è una funzione razionale definita sulla curva e tale che supp(d) supp(div(f)) = 0, allora definiamo f(d):= P ϵ ε f(p) vp(d). Da notare che se f ha grado 0 allora f(d) dipende solamente da div(f), pertanto se moltiplichiamo f per una costante b, moltiplichiamo f(d) per P ϵ ε b vp(d) = 1. [14]

7 Definizione 11: (Weil Pairing). Sia n > 1 un intero e siano D 1, D 2 divisori su una curva ellittica ε, con supporti disgiunti, tali che nd 1, nd 2 ~ 0 (cioè sono entrambi divisori principali). Questo significa che ci sono funzioni φ 1 e φ 2 tali che nd i = div(φ i ) per i =1, 2. Definiamo il Weil Pairing come e n (D 1, D 2 ) = φ 1 (D 2 ) / φ 2 (D 1 ). Esempio 2: (Calcolo del Weil Pairing). Sia data la curva ε/f 7 : y 2 = x 3 +2, calcolare e 3 ((0, 3; 1), (5, 1; 1)). Siano: D (0,3;1) = [(0, 3; 1)]-[(0, 1; 0)] D (5,1;1) = [(5, 1; 1)+(6, 1; 1)] [(6, 1; 1)] = [(3, 6; 1)] [(6, 1; 1)] Le funzioni di cui sono i divisori principali sono: div((y 3t)/t) = 3D (0,3;1) div ((4x - y + t)/(5x - y - t)) = 3D (5,1;1) ne segue che: f (0,3;1) = (y - 3t)/t f (5,1;1) = (4x - y + t)/(5x - y - t) quindi: f (0,3;1) D (5,1;1) = f (0,3;1) (3, 6; 1)/f (0,3;1) (6, 1; 1) = (6-3)/(1-3) = 2 (mod 7) f (5,1;1) D (0,3;1) = f (5,1;1) (0, 3; 1)/f (5,1;1) ((0, 1; 0)) = 4/1 = 4 (mod 7) Infine: e 3 ((0, 3; 1), (5, 1; 1)) = 4/2 = 2 (mod 7) [15] Da notare che per alcune curve il pairing di Weil vale sempre 1, cioè è degenere. Ad esempio: sia p un un numero primo tale che p = 2 (mod 3) e sia q > 3 qualche fattore primo di (p+1). Sia la curva ellittica ε definita dall'equazione y 2 = x 3 +1 su Z p. Per ogni punto Q, R ϵ ε(z p ) vale e q (Q, R) = 1. In altre parole, il Weil Pairing è degenere su ε(z p ) Elenchiamo ora alcune proprietà del Weil Pairing su questa curva particolare: Poiché x 3 +1 è una permutazione su Z p ne consegue che il gruppo ε(z p ) contiene p+1 punti (compreso il punto all'infinito ϴ). Sia P ε(z p ) un punto di ordine q e sia G 1 il sottogruppo di punti generato da P. Per ogni y 0 ϵ Z p esiste un unico punto di coordinate (x 0, y 0 ) su ε(z p ). Quindi, se il punto (x, y) diverso da zero è generico su ε(z p ), allora y è uniformemente distribuita su Z p. Sia ζ un simbolo per cui valga ζ 2 + ζ + 1 = 0 e sia K = {a + ζ b : a,b Z p } il campo finito con p 2 elementi. La mappa ϕ(x, y) = (ζx, y) risulta un automorfismo del gruppo di punti sulla curva ε/k. È da notare che per ogni punto Q = (x, y) ε(z p ) abbiamo che ϕ(q) ε(k), ma ϕ(q) ε(z p ). Pertanto Q ε(z p ) è linearmente indipendente da ϕ(q) ε(k). Poiché i punti Q G 1 e ϕ(q) sono linearmente indipendenti, essi generano un gruppo isomorfo a Z q Z q. Chiamiamo questo gruppo di punti ε[q]. [17] Sia G 2 il sottogruppo di K di ordine q. Il Weil Pairing sulla curva ε(k) è una mappa e : ε[q] ε[q] G 2 tale che per ogni punto Q, R ϵ ε(z p ) vale e(q, R) = 1. Per avere una mappa non degenere è necessario definire il Weil Pairing modificato. Definizione 12: (Weil Pairing Modificato). Il Weil Pairing modificato è una mappa ê : G 1 G 1 G 2 tale che: ê(p, Q) = e(p, ϕ(q)). Il Weil Pairing modificato soddisfa le seguenti proprietà: Bilinearità: P, Q ϵ G 1 e a,b ϵ Z abbiamo che ê(ap, bq) = ê(p, Q) ab. Non-degenericità: Se P è un generatore di G 1 allora ê(p, P)ϵ K * è un generatore di G 2. Computabilità: Dati P, Q ϵ G 1 esiste un efficiente algoritmo, per esempio l'algoritmo di Miller, per calcolare ê(p, Q) ϵ G 2 [18].

8 Algoritmo 4: (El Gamal per il Weil Pairing). L'algoritmo di El Gamal applicato al Weil Pairing lavora come segue: (Setup) Sia G un generatore dei parametri per il BDH. Assegnato un parametro di sicurezza k ϵ Z +, l'algoritmo procede nel seguente modo: 1. Generiamo tramite G un numero primo q, due gruppi G 1, G 2, di ordine q e un'ammissibile mappa bilineare ê : G 1 G 1 G 2. Scegliamo ora casualmente un punto P generatore di G Scegliamo casualmente un s ϵ Z * q e fissiamo Q = sp. 3. Scegliamo una funziona hash crittografica H tale che H : G 2 {0, 1} n. Lo spazio dei messaggi M = {0,1} n. Lo spazio dei testi cifrati C = G 1 X {0, 1} n. I parametri del sistema pertanto sono params = <q, G 1, G 2, ê, n, P, Q, H> [19]. Algoritmo 5: (Miller). L'Algoritmo di Miller per il calcolo del Pairing di Weil si applica a curve ellittiche supersingolari, definite su Z P con p > 3 e quindi con l'ordine della curva pari a ord(ε(z p )) = 1 (mod p). Vediamo ora come funziona detto algoritmo: In input abbiamo due punti P, Q appartenente a ε[q], in output avremo e(p,q). 1. Si selezionano casualmente due punti T ed U della curva ε, tali che P+T, T, Q+U, U siano punti distinti. A questo punto, siano D P = (P+t)-T e D Q = (Q+U)-U equivalenti rispettivamente a (P)-(O) e (Q)-(O). 2. Si usa un algoritmo di valutazione per calcolare f P (Q+U), f P (U), f Q (P+T) e f Q (T) con div(f P ) = qd P e div(f Q ) = qd Q. 3. Si calcola ora e(p,q) = f P (D Q )/f Q (D P ) = (f P (D+U)f Q (U))/(f Q (P+T)f P (U)). La parte cruciale dell'algoritmo di Miller è il passo 2, per S = (x S, y S ) f P (S) produce f P tale che div(f P ) = qd P e calcola f P (x S, y S ). Dato che Dp = (P+T)-(T), per ogni k intero positivo esiste una funzione razionale f k tale che: div(f k ) = k(p+t)-k(t)-k(p)+(o). Se k = q allora : div(f Q ) = q(p+t)-q(t)-q(p)+(o) e f P = f Q. 6. Il progetto OpenSSL Il progetto OpenSSL è un'implementazione open source dei protocolli SSL v2/v3 (Secure Sockets Layers) e TLS v1 (Transport Layer Security), l'idea alla base di tale progetto era quella di creare un toolkit completo per effettuare operazioni di cifratura dei dati, per questo motivo l'intera piattaforma è stata sviluppata in linguaggio C così da essere portabile sui sistemi operativi più diffusi, inizialmente solo quelli di tipo unix-like e successivamente anche per Microsoft Windows. Il pacchetto supporta diversi algoritmi crittografici. Tra questi ricordiamo: Cifrari: Blowfish, Camellia, Cast, DES, RC2, RC4, RC5, IDEA, AES; Funzioni Hash Crittografiche: MD5, MD2, SHA, MDC-2; Crittografia a Chiave Pubblica: RSA, DSA, Scambio di chiavi Diffie-Hellman Funzioni di Autenticazione dei Messaggi: HMAC, MD2, MD4, MD5, MDC2, RIPEMD, SHA Certificati: X.509 [20] Il protocollo SSL/TLS nasce con lo scopo di garantire la sicurezza dello scambio di informazioni su Internet, consentendo alle applicazioni client/server di comunicare garantendo la sicurezza del collegamento mediante tre condizioni fondamentali: Affidabilità: per sua costituzione, il livello di trasporto include un controllo sull'integrità del messaggio basato su un apposito codice di autenticazione del messaggio (MAC) che utilizza funzioni hash sicure così da evitare che le informazioni scambiate tra client e server siano alterate durante la trasmissione delle stesse; Privatezza del collegamento: per far sì che il canale usato da due o più utenti per trasmettere i dati sia sicuro, si utilizzano degli

9 algoritmi crittografici a chiave simmetrica per cifrare i dati; Autenticazione: per autenticare l'identità degli utenti che usano il canale di trasmissione, è possibile usare la crittografia a chiave pubblica così che il client possa comunicare con il server corretto evitando che un utente malevolo si interponga nella comunicazione. In aggiunta all'uso della crittografia a chiave pubblica è prevista anche la certificazione sia del client che del server. OpenSSL è composto da un insieme di funzioni di cifratura e da utilities che permettono di usarle, in particolare porremo la nostra attenzione sul protocollo SSL che permette la mutua autenticazione tra un client e un server e la conseguente creazione di una connessione in primo luogo autenticata e successivamente crittografata. Il protocollo crittografico utilizzato nell'esempio è lo scambio di chiavi di Diffie-Hellman. L'obiettivo è quindi quello di creare un canale sicuro per trasferire informazioni da un client ad un server: il server genera e controlla i parametri condivisi con il client, entrambe le parti generano una coppia di chiavi, una pubblica ed una privata e si scambiano il rispettivo parametro pubblico. A questo punto, client e server generano autonomamente la chiave simmetrica condivisa. Per fare ciò è stato sufficiente avvalersi delle api EVP e delle numerose funzioni presenti in OpenSSL, incluse nelle librerie <openssl/dh.h>, usata per gestire il protocollo DH, e <openssl/bn.h> relativa alle funzioni che si occupano dei numeri primi sufficientemente grandi necessari per far sì che il protocollo sia sicuro. In particolare il contesto EVP è una struttura dati che ci consente di implementare il cifrario a chiave simmetrica. Come prima cosa quindi, è necessario allocare un contesto EVP : EVP_CIPHER_CTX*ctx; ctx = malloc(sizeof(evp_cipher_ctx)); Successivamente, si deve inizializzare settando la dimensione che deve avere la chiave e il blocco: EVP_CIPHER_CTX_init(ctx); EVP_CIPHER_CTX_set_key_length(ctx, key_size); Per deallocare il contesto invece: EVP_CIPHER_CTX_cleanup(ctx); free(ctx); Per dare vita ad un canale di comunicazione sicuro Diffie-Hellman è necessario che il server generi i parametri DH e li invii al client. È quindi necessario utilizzare un'altra struttura dati, la struttura DH, che contienga al suo interno i parametri necessari per applicare il protocollo (il numero primo p, il generatore g, la chiave privata priv_key e la chiave pubblica pub_key). Per generare una coppia di chiavi da utilizzare come parametri si usa la funzione DH_generate_key(dh) e si invia la pub_key al client. A questo punto il client, mediante la funzione DH_new() crea una struttura dati DH per accogliere i parametri generati dal server, successivamente viene generata un'altra coppia di chiavi e invia la pub_key al server. A questo punto, client e server costruiscono la chiave simmetrica Diffie-Hellman, il client cifra un file con la chiave simmetrica e lo invia al server che lo decifra. 7. Bibliografia [1] N. Ferguson, B. Schneier and T. Kohno, Il manuale della crittografia, Apogeo, pp.153. [2] N. Ferguson, B. Schneier and T. Kohno, Il manuale della crittografia, Apogeo, pp [3] N. Ferguson, B. Schneier and T. Kohno, Il manuale della crittografia, Apogeo, pp [4] N. Ferguson, B. Schneier and T. Kohno, Il manuale della crittografia, Apogeo, pp [5] M. Leslie, Elliptic Curve Cryptography, pp.1 [6] A. Nicolosi, Sicurezza e applicazioni crittografiche della funzione Diffie-Hellman, Università degli Studi di Catania, pp [7] M. Leslie, Elliptic Curve Cryptography, pp.2

10 [8] M. Leslie, Elliptic Curve Cryptography, pp.3 [9] M. Leslie, Elliptic Curve Cryptography, pp.4 [10] E. Bellini, La crittografia a curve ellittiche e applicazioni, Torino 2011, pp.4 [11] M. Leslie, Elliptic Curve Cryptography, pp.9 [12] D. Boneh, M. Franklin, Identity-Based Encryption from the Weil Pairing, Stanford University, pp.7 [13] D. Boneh, M. Franklin, Identity-Based Encryption from the Weil Pairing, Stanford University, pp. 28 [14] D. Boneh, M. Franklin, Identity-Based Encryption from the Weil Pairing, Stanford University, pp. 28 [15] R. Chen, The Weil Pairing, Computation of the Pairings, [16] V. Miller, The Weil Pairing, and its Efficient Calculation, Princeton 2004, pp 237 [17] D. Boneh, M. Franklin, Identity-Based Encryption from the Weil Pairing, Stanford University, pp. 19 [18] D. Boneh, M. Franklin, Identity-Based Encryption from the Weil Pairing, Stanford University, pp. 20 [19] D. Boneh, M. Franklin, Identity-Based Encryption from the Weil Pairing, Stanford University, pp. 23 [20] AA.VV., [21] C. Ventre, Oblivious Transfer per la generazione di chiavi RSA: protocolli ed implementazione in OpenSSL, Università degli Studi di Salerno, pp.10

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

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

! 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

da chi proviene un messaggio?

da chi proviene un messaggio? da chi proviene un messaggio? in un crittosistema simmetrico solo Alice e Bob conoscono la chiave se Bob riceve un messaggio di Alice e la decifratura del messaggio ha senso, il messaggio proviene certamente

Dettagli

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

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

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

Lezioni di Matematica 1 - I modulo

Lezioni di Matematica 1 - I modulo Lezioni di Matematica 1 - I modulo Luciano Battaia 16 ottobre 2008 Luciano Battaia - http://www.batmath.it Matematica 1 - I modulo. Lezione del 16/10/2008 1 / 13 L introduzione dei numeri reali si può

Dettagli

STRUTTURE ALGEBRICHE

STRUTTURE ALGEBRICHE STRUTTURE ALGEBRICHE Operazioni in un insieme Sia A un insieme non vuoto; una funzione f : A A A si dice operazione binaria (o semplicemente operazione), oppure legge di composizione interna. Per definizione

Dettagli

Introduzione alla crittografia con OpenPGP

Introduzione alla crittografia con OpenPGP Introduzione alla crittografia con OpenPGP D avide Cerri dav ide@ linux.it Crittografia Per proteggere le comunicazioni su Internet si utilizza la crittografia. La crittografia è la scienza che si occupa

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

Corrispondenze e funzioni

Corrispondenze e funzioni Corrispondenze e funzioni L attività fondamentale della mente umana consiste nello stabilire corrispondenze e relazioni tra oggetti; è anche per questo motivo che il concetto di corrispondenza è uno dei

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

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma.

PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si sostituisce la loro somma. Addizione: PROPRIETA' COMMUTATIVA Cambiando l'ordine degli addendi la somma non cambia. 1) a + b = b + a PROPRIETA' ASSOCIATIVA La somma di tre o più addendi non cambia se al posto di alcuni di essi si

Dettagli

UNIVERSITÀ DEGLI STUDI DI TERAMO

UNIVERSITÀ DEGLI STUDI DI TERAMO UNIVERSITÀ DEGLI STUDI DI TERAMO CORSO DI LAUREA IN ECONOMIA BANCARIA FINANZIARIA ED ASSICURATIVA (Classe 7) Corso di Matematica per l Economia (Prof. F. Eugeni) TEST DI INGRESSO Teramo, ottobre 00 SEZIONE

Dettagli

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC.

Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC. Il glossario della Posta Elettronica Certificata (PEC) Diamo una definizione ai termini tecnici relativi al mondo della PEC. Avviso di mancata consegna L avviso, emesso dal sistema, per indicare l anomalia

Dettagli

Analisi di programmi: Crittografia

Analisi di programmi: Crittografia Analisi di programmi: Crittografia Come caso concreto di sistema, proviamo ad abbozzare e a vedere una prima implementazione di un sistema di crittografia a chiave pubblica La crittografia studia le tecniche

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

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione

Comunicazioni sicure su Internet: https e SSL. Fisica dell Informazione Comunicazioni sicure su Internet: https e SSL Fisica dell Informazione Il servizio World Wide Web (WWW) Come funziona nel dettaglio il Web? tre insiemi di regole: Uniform Resource Locator (URL) Hyper Text

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

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

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

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

( x) ( x) 0. Equazioni irrazionali

( x) ( x) 0. Equazioni irrazionali Equazioni irrazionali Definizione: si definisce equazione irrazionale un equazione in cui compaiono uno o più radicali contenenti l incognita. Esempio 7 Ricordiamo quanto visto sulle condizioni di esistenza

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

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

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

Funzioni inverse Simmetrie rispetto alla bisettrice dei quadranti dispari. Consideriamo la trasformazione descritta dalle equazioni : = y

Funzioni inverse Simmetrie rispetto alla bisettrice dei quadranti dispari. Consideriamo la trasformazione descritta dalle equazioni : = y Funzioni inverse Simmetrie rispetto alla bisettrice dei quadranti dispari. Consideriamo la trasformazione descritta dalle equazioni : ' = y y' = Consideriamo il punto P(,5) se eseguiamo tra trasformazione

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

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

I sistemi di numerazione

I sistemi di numerazione I sistemi di numerazione 01-INFORMAZIONE E SUA RAPPRESENTAZIONE Sia dato un insieme finito di caratteri distinti, che chiameremo alfabeto. Utilizzando anche ripetutamente caratteri di un alfabeto, si possono

Dettagli

Firma digitale Definizione

Firma digitale Definizione FIRMA DIGITALE Firma digitale Definizione La definizione di firma digitale è contenuta nel Dlgs. Del 4/04/2006 n.159 che integra il Codice dell amministrazione digitale in vigore dal 1/01/2006. Firma digitale

Dettagli

L espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0.

L espressione torna invece sempre vera (quindi la soluzione originale) se cambiamo contemporaneamente il verso: 1 < 0. EQUAZIONI E DISEQUAZIONI Le uguaglianze fra espressioni numeriche si chiamano equazioni. Cercare le soluzioni dell equazione vuol dire cercare quelle combinazioni delle lettere che vi compaiono che la

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

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti

razionali Figura 1. Rappresentazione degli insiemi numerici Numeri reali algebrici trascendenti frazionari decimali finiti 4. Insiemi numerici 4.1 Insiemi numerici Insieme dei numeri naturali = {0,1,,3,,} Insieme dei numeri interi relativi = {..., 3,, 1,0, + 1, +, + 3, } Insieme dei numeri razionali n 1 1 1 1 = : n, m \{0}

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

La firma digitale e le sue possibili applicazioni

La firma digitale e le sue possibili applicazioni Il documento informatico e la firma digitale nelle applicazioni pratiche La firma digitale e le sue possibili applicazioni dott. Enrico Zimuel (enrico@zimuel.it) Pescara, 15 febbraio 2008 Centro Studi

Dettagli

DOCUMENTO ELETTRONICO E FIRMA DIGITALE

DOCUMENTO ELETTRONICO E FIRMA DIGITALE DOCUMENTO ELETTRONICO E FIRMA DIGITALE CHE COSA È LA CRITTOGRAFIA LA CRITTOLOGIA È SCIENZA CHE STUDIA LE SCRITTURE SEGRETE 2 CRITTOGRAFIA STUDIA I SISTEMI DI PROTEZIONE DEI MESSAGGI CRITTOANALISI STUDIA

Dettagli

2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione

2.1 Definizione di applicazione lineare. Siano V e W due spazi vettoriali su R. Un applicazione Capitolo 2 MATRICI Fra tutte le applicazioni su uno spazio vettoriale interessa esaminare quelle che mantengono la struttura di spazio vettoriale e che, per questo, vengono dette lineari La loro importanza

Dettagli

SOMMARIO. 13.1 I radicali pag. 3. 13.2 I radicali aritmetici pag. 5. 13.3 Moltiplicazione e divisione fra radicali aritmetici pag.

SOMMARIO. 13.1 I radicali pag. 3. 13.2 I radicali aritmetici pag. 5. 13.3 Moltiplicazione e divisione fra radicali aritmetici pag. SOMMARIO CAPITOLO : I RADICALI. I radicali pag.. I radicali aritmetici pag.. Moltiplicazione e divisione fra radicali aritmetici pag.. Potenza di un radicale aritmetico pag.. Trasporto di un fattore esterno

Dettagli

Funzioni. Funzioni /2

Funzioni. Funzioni /2 Funzioni Una funzione f è una corrispondenza tra due insiemi A e B che a ciascun elemento di A associa un unico elemento di B. Si scrive: f : A B l'insieme A si chiama il dominio della funzione f, l'insieme

Dettagli

un protocollo è costituito da una serie di passi (step) e coinvolge due o più persone (parti, entità) allo scopo di svolgere un incarico

un protocollo è costituito da una serie di passi (step) e coinvolge due o più persone (parti, entità) allo scopo di svolgere un incarico protocolli un protocollo è costituito da una serie di passi (step) e coinvolge due o più persone (parti, entità) allo scopo di svolgere un incarico proprietà ogni persona coinvolta deve conoscere il protocollo

Dettagli

Basi di matematica per il corso di micro

Basi di matematica per il corso di micro Basi di matematica per il corso di micro Microeconomia (anno accademico 2006-2007) Lezione del 21 Marzo 2007 Marianna Belloc 1 Le funzioni 1.1 Definizione Una funzione è una regola che descrive una relazione

Dettagli

2 FUNZIONI REALI DI VARIABILE REALE

2 FUNZIONI REALI DI VARIABILE REALE 2 FUNZIONI REALI DI VARIABILE REALE 2.1 CONCETTO DI FUNZIONE Definizione 2.1 Siano A e B due insiemi. Una funzione (o applicazione) f con dominio A a valori in B è una legge che associa ad ogni elemento

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

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

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

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica)

Sicurezza nelle applicazioni multimediali: lezione 4, crittografia asimmetrica. Crittografia asimmetrica (a chiave pubblica) Crittografia asimmetrica (a chiave pubblica) Problemi legati alla crittografia simmetrica Il principale problema della crittografia simmetrica sta nella necessità di disporre di un canale sicuro per la

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

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

Prodotto libero di gruppi

Prodotto libero di gruppi Prodotto libero di gruppi 24 aprile 2014 Siano (A 1, +) e (A 2, +) gruppi abeliani. Sul prodotto cartesiano A 1 A 2 definiamo l operazione (x 1, y 1 ) + (x 2, y 2 ) := (x 1 + x 2, y 1 + y 2 ). Provvisto

Dettagli

Lezione 1. Gli Insiemi. La nozione di insieme viene spesso utilizzata nella vita di tutti i giorni; si parla dell insieme:

Lezione 1. Gli Insiemi. La nozione di insieme viene spesso utilizzata nella vita di tutti i giorni; si parla dell insieme: Lezione 1 Gli Insiemi La nozione di insieme viene spesso utilizzata nella vita di tutti i giorni; si parla dell insieme: degli iscritti ad un corso di laurea delle stelle in cielo dei punti di un piano

Dettagli

1 Giochi a due, con informazione perfetta e somma zero

1 Giochi a due, con informazione perfetta e somma zero 1 Giochi a due, con informazione perfetta e somma zero Nel gioco del Nim, se semplificato all estremo, ci sono due giocatori I, II e una pila di 6 pedine identiche In ogni turno di gioco I rimuove una

Dettagli

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente.

Algoritmo. I dati su cui opera un'istruzione sono forniti all'algoritmo dall'esterno oppure sono il risultato di istruzioni eseguite precedentemente. Algoritmo Formalmente, per algoritmo si intende una successione finita di passi o istruzioni che definiscono le operazioni da eseguire su dei dati (=istanza del problema): in generale un algoritmo è definito

Dettagli

Statistica e biometria. D. Bertacchi. Variabili aleatorie. V.a. discrete e continue. La densità di una v.a. discreta. Esempi.

Statistica e biometria. D. Bertacchi. Variabili aleatorie. V.a. discrete e continue. La densità di una v.a. discreta. Esempi. Iniziamo con definizione (capiremo fra poco la sua utilità): DEFINIZIONE DI VARIABILE ALEATORIA Una variabile aleatoria (in breve v.a.) X è funzione che ha come dominio Ω e come codominio R. In formule:

Dettagli

Esercizi su lineare indipendenza e generatori

Esercizi su lineare indipendenza e generatori Esercizi su lineare indipendenza e generatori Per tutto il seguito, se non specificato esplicitamente K indicherà un campo e V uno spazio vettoriale su K Cose da ricordare Definizione Dei vettori v,,v

Dettagli

Numeri naturali numeri naturali minore maggiore Operazioni con numeri naturali

Numeri naturali numeri naturali minore maggiore Operazioni con numeri naturali 1 Numeri naturali La successione di tutti i numeri del tipo: 0,1, 2, 3, 4,..., n,... forma l'insieme dei numeri naturali, che si indica con il simbolo N. Tale insieme si può disporre in maniera ordinata

Dettagli

Logaritmi ed esponenziali

Logaritmi ed esponenziali Logaritmi ed esponenziali definizioni, proprietà ITIS Feltrinelli anno scolastico 2007-2008 A cosa servono i logaritmi I logaritmi rendono possibile trasformare prodotti in somme, quozienti in differenze,

Dettagli

Corso di Informatica

Corso di Informatica Corso di Informatica Modulo T3 1-Sottoprogrammi 1 Prerequisiti Tecnica top-down Programmazione elementare 2 1 Introduzione Lo scopo di questa Unità è utilizzare la metodologia di progettazione top-down

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

Lezione 7 Sicurezza delle informazioni

Lezione 7 Sicurezza delle informazioni Lezione 7 Sicurezza delle informazioni Sommario Concetti generali Meccanismi per la sicurezza IT: Crittografia Hash Firma digitale Autenticazione 1 Concetti generali Availability Confidentiality Integrity

Dettagli

Funzioni. Parte prima. Daniele Serra

Funzioni. Parte prima. Daniele Serra Funzioni Parte prima Daniele Serra Nota: questi appunti non sostituiscono in alcun modo le lezioni del prof. Favilli, né alcun libro di testo. Sono piuttosto da intendersi a integrazione di entrambi. 1

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

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

Teoria in sintesi 10. Attività di sportello 1, 24 - Attività di sportello 2, 24 - Verifica conclusiva, 25. Teoria in sintesi 26

Teoria in sintesi 10. Attività di sportello 1, 24 - Attività di sportello 2, 24 - Verifica conclusiva, 25. Teoria in sintesi 26 Indice L attività di recupero 6 Funzioni Teoria in sintesi 0 Obiettivo Ricerca del dominio e del codominio di funzioni note Obiettivo Ricerca del dominio di funzioni algebriche; scrittura del dominio Obiettivo

Dettagli

Le funzioni continue. A. Pisani Liceo Classico Dante Alighieri A.S. 2002-03. A. Pisani, appunti di Matematica 1

Le funzioni continue. A. Pisani Liceo Classico Dante Alighieri A.S. 2002-03. A. Pisani, appunti di Matematica 1 Le funzioni continue A. Pisani Liceo Classico Dante Alighieri A.S. -3 A. Pisani, appunti di Matematica 1 Nota bene Questi appunti sono da intendere come guida allo studio e come riassunto di quanto illustrato

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

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

Creare connessioni cifrate con stunnel

Creare connessioni cifrate con stunnel ICT Security n. 24, Giugno 2004 p. 1 di 5 Creare connessioni cifrate con stunnel Capita, e purtroppo anche frequentemente, di dover offrire servizi molto insicuri, utilizzando ad esempio protocolli che

Dettagli

LA RETTA. Retta per l'origine, rette orizzontali e verticali

LA RETTA. Retta per l'origine, rette orizzontali e verticali Retta per l'origine, rette orizzontali e verticali LA RETTA Abbiamo visto che l'equazione generica di una retta è del tipo Y = mx + q, dove m ne rappresenta la pendenza e q il punto in cui la retta incrocia

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

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

Esempi di funzione. Scheda Tre

Esempi di funzione. Scheda Tre Scheda Tre Funzioni Consideriamo una legge f che associa ad un elemento di un insieme X al più un elemento di un insieme Y; diciamo che f è una funzione, X è l insieme di partenza e X l insieme di arrivo.

Dettagli

la scienza della rappresentazione e della elaborazione dell informazione

la scienza della rappresentazione e della elaborazione dell informazione Sistema binario Sommario informatica rappresentare informazioni la differenza Analogico/Digitale i sistemi di numerazione posizionali il sistema binario Informatica Definizione la scienza della rappresentazione

Dettagli

ESERCIZI DI PREPARAZIONE E

ESERCIZI DI PREPARAZIONE E ESERCIZI DI PREPARAZIONE E CONSOLIDAMENTO PER I FUTURI STUDENTI DEL PRIMO LEVI si campa anche senza sapere che cos è un equazione, senza sapere suonare uno strumento musicale, senza conoscere il nome del

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

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

Aspetti Crittografici nel Cloud Computing

Aspetti Crittografici nel Cloud Computing Aspetti Crittografici nel Cloud Computing Prof. Massimiliano Sala Università di Trento Trento, 10 Maggio 2013 Prof. Sala (Università di Trento) Trust and Cloud Computing Trento, 10 Maggio 2013 1 / 20 Introduzione

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

Matematica 1 - Corso di Laurea in Ingegneria Meccanica

Matematica 1 - Corso di Laurea in Ingegneria Meccanica Matematica 1 - Corso di Laurea in Ingegneria Meccanica Esercitazione su massimi e minimi vincolati 9 dicembre 005 Esercizio 1. Considerare l insieme C = {(x,y) R : (x + y ) = x } e dire se è una curva

Dettagli

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI

4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI 119 4 Dispense di Matematica per il biennio dell Istituto I.S.I.S. Gaetano Filangieri di Frattamaggiore EQUAZIONI FRATTE E SISTEMI DI EQUAZIONI Indice degli Argomenti: TEMA N. 1 : INSIEMI NUMERICI E CALCOLO

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

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

Corso di Calcolo Numerico

Corso 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 Sistemi di Numerazione Sistema decimale La

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

Applicazioni lineari

Applicazioni lineari Applicazioni lineari Esempi di applicazioni lineari Definizione. Se V e W sono spazi vettoriali, una applicazione lineare è una funzione f: V W tale che, per ogni v, w V e per ogni a, b R si abbia f(av

Dettagli

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana

Schemi delle Lezioni di Matematica Generale. Pierpaolo Montana Schemi delle Lezioni di Matematica Generale Pierpaolo Montana Al-giabr wa al-mukabalah di Al Khuwarizmi scritto approssimativamente nel 820 D.C. Manuale arabo da cui deriviamo due nomi: Algebra Algoritmo

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

Diagonalizzazione di matrici e applicazioni lineari

Diagonalizzazione di matrici e applicazioni lineari CAPITOLO 9 Diagonalizzazione di matrici e applicazioni lineari Esercizio 9.1. Verificare che v = (1, 0, 0, 1) è autovettore dell applicazione lineare T così definita T(x 1,x 2,x 3,x 4 ) = (2x 1 2x 3, x

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

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

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

CAPITOLO 16 SUCCESSIONI E SERIE DI FUNZIONI

CAPITOLO 16 SUCCESSIONI E SERIE DI FUNZIONI CAPITOLO 16 SUCCESSIONI E SERIE DI FUNZIONI Abbiamo studiato successioni e serie numeriche, ora vogliamo studiare successioni e serie di funzioni. Dato un insieme A R, chiamiamo successione di funzioni

Dettagli

Sicurezza nei Sistemi Distribuiti

Sicurezza nei Sistemi Distribuiti Sicurezza nei Sistemi Distribuiti Aspetti di Sicurezza La sicurezza nei sistemi distribuiti deve riguardare tutti i componenti del sistema e coinvolge due aspetti principali: Le comunicazioni tra utenti

Dettagli

Sicurezza nei Sistemi Distribuiti

Sicurezza nei Sistemi Distribuiti Sicurezza nei Sistemi Distribuiti Aspetti di Sicurezza La sicurezza nei sistemi distribuiti deve riguardare tutti i componenti del sistema e coinvolge due aspetti principali: Le comunicazioni tra utenti

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

Documenti cartacei e digitali. Autenticità. Cosa si vuole garantire? Riservatezza. Integrità 11/12/2012. PA digitale: documenti e firme (I.

Documenti cartacei e digitali. Autenticità. Cosa si vuole garantire? Riservatezza. Integrità 11/12/2012. PA digitale: documenti e firme (I. Università degli studi di Catania Pubblica Amministrazione digitale Elementi tecnici sulla firma digitale Ignazio Zangara Agatino Di Bella Area della Formazione Gestione dell archivio (novembre dicembre

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