Firme digitali. Firma Digitale. Firma Digitale. Firma Digitale. Equivalente alla firma convenzionale. Equivalente alla firma convenzionale

Documenti analoghi
M firma. M firma. Firma Digitale. Firma Digitale. Firma digitale. Firma digitale. Firma Digitale. Equivalente alla firma convenzionale

Firme digitali. Firma Digitale. Firma Digitale. Corso di Sicurezza su Reti Lezione del 17 novembre Equivalente alla firma convenzionale

Firma Digitale. Firma Digitale. Firma digitale. Firma digitale. Firma Digitale A?? Equivalente alla firma convenzionale

RSA. Chiavi RSA. Firma Digitale. Firma Digitale. Firma Digitale. Desiderata per la Firma Digitale. Corso di Sicurezza su Reti 1

Firme digitali. Firma Digitale. Firma Digitale. Firma Digitale. Equivalente alla firma convenzionale. Equivalente alla firma convenzionale

Crittografia a chiave pubblica

Accordo su chiavi. Accordo su una chiave. Diffie-Hellman [1976] Accordo su chiavi. Diffie-Hellman [1976] Diffie-Hellman [1976] ??

schema di firma definizione formale

Crittografia a chiave pubblica

Introduzione alla FIRMA DIGITALE

Accordo su chiavi. (key agreement) Alfredo De Santis. Marzo Dipartimento di Informatica Università di Salerno

da chi proviene un messaggio?

!"### "$ " Applicazioni. Autenticità del messaggio M Integrità del messaggio M. Stelvio Cimato DTI Università di Milano, Polo di Crema

Crittografia a chiave pubblica

Introduzione alla crittografia. Diffie-Hellman e RSA

CRITTOGRAFIA 2014/15 Appello del 13 gennaio Nome: Cognome: Matricola:

Cifrari simmetrici. Crittografia a chiave pubblica. Problemi. Gestione delle chiavi

Funzioni di hash sicure: MD5 e SHA-1

(G, ) un gruppo moltiplicativo di ordine n l ordine di un elemento g G, o(g), è il minimo intero positivo m tale che g m = 1

da chi proviene un messaggio?

Confidenzialità e crittografia simmetrica. Contenuto. Scenario tipico. Corso di Sicurezza su Reti Uso della crittografia simmetrica

Corso di Crittografia Prof. Dario Catalano. Firme Digitali

Message Authentication Code

Ripasso. Public Key cryptograhy. Message Authentication Codes (MAC) Firma digitale

FUNZIONI HASH ONE-WAY ITERATE

Crittografia a chiave pubblica

Crittografia e sicurezza delle reti

Robustezza crittografica della PEC

Funzioni Hash. Impronta Digitale. L impronta digitale viene utilizzata per

una possibile funzione unidirezionale

RETI DI CALCOLATORI. Crittografia. La crittografia

Firma elettronica, Certificati, Timestamps

metodi crittografici maurizio pizzonia sicurezza dei sistemi informatici e delle reti

La funzione Hash. Garanzia dell integrità dei dati e autenticazione dei messaggi

in termini informali: un algoritmo è una sequenza ordinata di operazioni che risolve un problema specifico

SHA %&'(& lunghezza arbitraria. 160 bit

La crittografia moderna e la sua applicazione

Cifratura a chiave pubblica Sicurezza nelle reti di TLC - Prof. Marco Listanti - A.A. 2008/2009

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

Digital Signature Standard. Corso di Sicurezza A.A. 2006/2007 Luca Palumbo

Stream cipher. Cifrari simmetrici. Stream cipher. Stream cipher. I cifrari simmetrici possono essere:! Cifrari a blocchi: !

PROGRAMMAZIONE: Le strutture di controllo

La matematica dell orologio

Introduzione alla crittografia. Il crittosistema RSA e la sua sicurezza

Argomenti Crittografia Firma digitale e certificati Certification Authority e PKI La normativa

Pr1: determinare il maggiore di n numeri interi n. Fondamenti di Informatica Prof. Vittoria de Nitto Personè

POLITECNICO DI BARI CORSO DI LAUREA MAGISTRALE IN INGEGNERIA ELETTRONICA

DIARIO DEL CORSO DI TEORIA DEI NUMERI E CRITTOGRAFIA. (41 ore complessive di lezione)

Crittografia con Python

Il Ricevente comunica pubblicamente una chiave e. Il Mittente codifica il messaggio usando la funzione f(m, e) = C e

Integrità dei messaggi. Funzioni di Hash e codici MAC. Message digest. Message digest e funzioni di hash

Sicurezza su Reti. Orari Corso. Organizzazione. Disponibilità materiale. Prerequisiti. Prerequisiti. Corso di Sicurezza su Reti 1.

Due algoritmi di ordinamento. basati sulla tecnica Divide et Impera: Mergesort e Quicksort

Lezione 7: La Formalizzazione degli Algoritmi - Strutture di Controllo e Selettive La Programmazione Strutturata (3 p) Giovedì 21 Ottobre 2010

Algoritmi e Strutture di Dati I 1. Algoritmi e Strutture di Dati I Massimo Franceschet francesc

Progetto e analisi di algoritmi

LA FI RMA DI GI TALE. Materiale a cura di: L.Chium ient o,f. Orfei, F. Baiani, S. Sallam

Crittografia e Sicurezza Informatica

1 introdurre le monete per l importo necessario. 2 selezionare la quantità di zucchero. 3 selezionare la bevanda desiderata

Firma digitale aspetti tecnologici

LA METAFORA DELL UFFICIO

La crittografia a curve elittiche e applicazioni

ELEMENTI DI INFORMATICA L-B. Ing. Claudia Chiusoli

Introduzione alla Crittografia

NUMERI CASUALI E SIMULAZIONE

Appunti di Esercitazioni Corso di Sicurezza dei Sistemi Informatici Corso di laurea specialistica (LS) in Ingegneria Informatica 5-CFU, COD.

Un ripasso di aritmetica: Conversione dalla base 10 alla base 2

La crittografia asimmetrica è alla base della moderna crittografia ed è particolarmente utilizzata nei sistemi di protezione delle comunicazioni

Algoritmi e loro proprietà. Che cos è un algoritmo? Un esempio di algoritmo

Elementi di Informatica

QUICKSORT. Basato sul paradigma divide-et-impera (come MERGE-SORT)

Automa deterministico con prospezione 1. < {q}, Σ, Σ V, δ, q, S, Φ > δ(a, X) = α R. se a Gui(X α) senza spostamento della testina.

Problema: dati i voti di tutti gli studenti di una classe determinare il voto medio della classe.

Algoritmi e Strutture Dati - Prof. Roberto De Prisco A.A Seconda prova di verifica (4 Febbraio 2005)

LA CONSERVAZIONE SOSTITUTIVA. Erica Manzano - Udine, 17 maggio 2010

CRITTOGRAFIA: introduzione

Sicurezza dei Calcolatori e delle Reti. Introduzione alla crittografia Lez. 2. A.A. 2010/2011 Corso: Sicurezza 1 Danilo Bruschi

Fattorizzazione di interi e crittografia

Universita' di Ferrara Dipartimento di Matematica e Informatica. Algoritmi e Strutture Dati. Funzioni Hash e Network Security

PROGRAMMAZIONE STRUTTURATA

Il punteggio totale della prova è 100/100. La sufficienza si ottiene con il punteggio di 60/100.

Insiemi, Numeri, Terminologia. Prof. Simone Sbaraglia

Un po di teoria dei numeri

Informatica/ Ing. Meccanica/ Prof. Verdicchio/ 13/09/2013/ Foglio delle domande/versione 1

Algoritmi e Strutture Dati

Esercizi Capitolo 7 - Hash

Esercizi di Algoritmi e Strutture Dati

A lezione sono stati presentati i seguenti passi per risolvere un problema:

Crittografia avanzata Lezione del 21 Marzo 2011

Rappresentazione con i diagrammi di flusso (Flow - chart)

Lezione 7 Sicurezza delle informazioni

Aritmetica modulare, numeri primi e crittografia

AUTENTICAZIONE E FIRMA DIGITALE

Appunti di informatica. Lezione 10 anno accademico Mario Verdicchio

R. Cusani, F. Cuomo: Telecomunicazioni - DataLinkLayer: Gestione degli errori, Aprile 2010

Algoritmi e dintorni: La radice quadrata Prof. Ettore Limoli. Formule iterative

MATEMATICA DI BASE 1

Politecnico di Torino Sede di Alessandria Corso di informatica Programmazione in c: introduzione. e mail: sito: users.iol.

Crittografia. Primalità e Fattorizzazione. Corso di Laurea Specialistica. in Informatica

Dizionario. Marina Zanella Algoritmi e strutture dati Tabelle hash 1

Transcript:

irme digitali irma Digitale Barbara asucci Dipartimento di Informatica ed Applicazioni Università di Salerno firma Equivalente alla firma convenzionale masucci@dia.unisa.it http://www.dia.unisa.it/professori/masucci 1 irma Digitale irma Digitale Equivalente alla firma convenzionale Equivalente alla firma convenzionale firma firma Soluzione naive: Soluzione naive: incollare firma digitalizzata incollare firma digitalizzata 2 3

Requisiti per la irma Digitale irma digitale La firma digitale deve poter essere facilmente prodotta dal legittimo firmatario Nessun utente deve poter riprodurre la firma di altri kpriv?? kpub Chiunque può facilmente verificare una firma Devo firmare 4 5 irma digitale irma digitale kpriv kpub kpriv kpub (,) irma di IRA (,kpriv) 6 canale insicuro Bob 7

Verifica firma digitale Verifica firma digitale kpub kpub Devo verificare se è una firma di per Verifica firma di vera se VERIICA (,,kpub) = SI falsa altrimenti 8 9 Sicurezza Tipo di attacco Cosa si intende per sicurezza di uno schema di firme digitali? Dobbiamo definire Tipo di attacco Scopo dell attacco Key-only Attack Oscar conosce solo kpub di Known essage Attack Oscar conosce una lista di messaggi e le relative firme di Chosen essage Attack Oscar sceglie dei messaggi e chiede ad di firmarli 10 11

Scopo dell attacco Total break Determinare kpriv di per poter firmare qualsiasi messaggio Selective forgery Dato un messaggio, determinare la firma tale che VERIICA (,,kpub) = SI Existential forgery Determinare una coppia (,) tale che VERIICA (,,kpub) = SI irme digitali che vedremo RSA Digital Signature Standard (DSS) firma 12 13 RSA Chiavi RSA Proposto nel 1978 da (n,d) (n,e) Rivest Shamir Adleman Sicurezza basata sulla difficoltà di fattorizzare 14 15

Chiavi RSA irma RSA (n,d) (n,e) (n,d) (n,e) n = pq p,q primi ed = 1 mod (p-1)(q-1) Devo firmare?? 16 17 irma RSA Verifica irma RSA (n,d) (n,e) irma di d mod n (n,e) Devo verificare se è una firma di per 18 19

Verifica irma RSA Piccolo esempio: Chiavi RSA (n,e) (n=3337, d=1019) (n = 3337, e = 79) 3337 = 47 71 p = 47, q = 71 Verifica firma di vera se = e mod n falsa altrimenti ed = 79 1019 = 1 mod 3220 (p-1)(q-1) = 46 70 = 3220 20 21 Piccolo esempio: Chiavi RSA Piccolo esempio: generazione firma RSA (n=3337, d=1019) (n = 3337, e = 79) (n=3337, d=1019) (n = 3337, e = 79) Devo firmare =1570 1570 irma di 1570 = 1570 1019 mod 3337 = 668 1570 668 22 23

Piccolo esempio: Verifica firma RSA Correttezza verifica firma RSA 1570 668 (n = 3337, e = 79) Verifica firma di 1570 1570 = 668 79 mod 3337 24 C d mod n = ( e ) d mod n = ed mod n = 1+r(p-1)(q-1) mod n = ( r ) (p-1)(q-1) = mod n = Teorema di Eulero a Z n * a (p-1)(q-1) =1 mod n poichè 0 <n ed = 1 mod (p-1)(q-1) 25 Sicurezza firma RSA Sicurezza firma RSA Voglio falsificare la firma di da parte di A (n,e) (n,e) Voglio generare messaggi e firme da parte di A (n,e) (n,e) Selective forgery Key only attack Devo calcolare d mod n Equivalente a rompere il crittosistema RSA?? Existential forgery Key only attack 1. Scelgo a caso 2. e mod n 26 27

Sicurezza firma RSA Voglio generare messaggi e firme da parte di A Conosco le coppie ( 1, 1 ) e ( 2, 2 ) (n,e) (n,e) Proprietà di omomorfismo 1 = 1d mod n 2 = 2d mod n ( 1 2 ) e mod n = 1e 2e mod n = 1 2 mod n 1 2 mod n è una firma valida per 1 2 mod n Existential forgery Known message attack 28 Sicurezza firma RSA Voglio falsificare la firma di da parte di A Selective forgery Chosen message attack (n,e) (n,e) 1. Scelgo 1 e 2 tali che = 1 2 mod n 2. Chiedo ad di firmare 1 e 2 ottenendo 1 e 2 3. 1 2 mod n è una firma valida per 29 irma digitale di messaggi grandi Se >n, come si firma? Prima soluzione i <n 1 2 irma() (irma( 1 ), ), irma( 2 ), ), ) Problemi Efficienza Permutazione/composizione delle firme nuova firma 30 unzioni Hash lunghezza arbitraria/finita unzione Hash b bit Il valore hash h() è una rappresentazione non ambigua e non falsificabile del messaggio Proprietà: comprime facile da computare Sicurezza forte: computazionalmente difficile trovare 2 diversi messaggi con lo stesso valore hash One-way way: dato y è computazionalmente difficile trovare tale che y = h() 31

irma digitale con hash irma RSA con hash messaggi piccoli h() h() irma() (irma(h()) Vantaggi messaggi grandi Efficienza Integrità Sicurezza (n,d) irma di [h()] d mod n (n,e) (n,e) 32 33 Verifica irma RSA con hash Verifica irma RSA (n,e) (n,e) Devo verificare se è una firma di per Verifica firma di vera se h() = e mod n falsa altrimenti 34 35

Sicurezza firma RSA con hash Voglio generare messaggi e firme da parte di A 1. Scelgo a caso 2. z e mod n 3. h -1 (z) (n,e) (n,e) Come faccio ad invertire h? h -1 (z) Existential forgery Key only attack 36 Digital Signature Standard (DSS) Proposto nell'agosto del 1991 dal NIST Digital Signature Algorithm (DSA) Digital Signature Standard (DSS) Standard rivisto nel 1993, in risposta alle critiche odifica ingegnosa dello schema di firme El Gamal Utilizza la funzione hash (message digest di 160 bit) irme DSS sempre di 320 bit (buone per smart card) Sicurezza basata sull intrattabilità del problema del logaritmo discreto 37 Chiavi DSA Chiavi DSA (p,q,α,s) (p,q,α,β) (p,q,α,s),s) (p,q,α,β) p primo di L bit 512 L 1024, L multiplo di 64 β=α s mod p α in Z p* di ordine q q primo di 160 bit, q (p-1) s numero casuale, s<q α q = 1 mod p 38 39

Ordine di un elemento Per la generazione di α dobbiamo introdurre il concetto di ordine di un elemento Ordine di α Z n* = il più piccolo intero positivo r tale che α r =1 mod n Teorema di Lagrange: Per ogni α Z n *,ord(α) divide φ(n) Ordine di un elemento Esempio: n=15, φ(n) = (3-1)(5-1)=8 Z 15 * = { 1, 2, 4, 7, 8, 11, 13, 14 } ord(1) = 1, ord(2) = 4, ord(4) = 2, ord(7) = 4, ord(8) = 4, ord(11) = 2, ord(13) = 4, ord(14) = 2. 40 41 Ordine di un elemento Chiavi DSA ( piccolo esempio) Se p è primo e α Z p*, dal teorema di Lagrange, ord(α) divide p-1 Se ord(α) = q, allora α smod q mod p = α s mod p (7879,101,170,75) A (7879,101,170,4567) 4567 = 170 75 mod 7879 p = 7879 primo α = 170 Z 7879* di ordine 101 q = 101 primo, p = 78q+1 s = 75 numero casuale 170 101 = 1 mod 7879 42 43

(p,q,α,s),s) irma DSA (p,q,α,β) Devo firmare?? 44 (p,q,α,s),s) irma DSA (p,q,α,β) irma di r numero casuale in [1,q-1] γ (α r mod p) mod q δ (()+sγ)r -1 mod q firma (p,q,α,s) (,r) = (γ,δ) r -1 mod q esiste perché r < q e q primo gcd(q,r)=1 (γ,δ) 45 Verifica firma DSA (γ,δ) (p,q,α,β) Devo verificare se (γ,δ) è una firma di per Verifica firma DSA (γ,δ) A (p,q,α,β) Verifica firma di e ()δ -1 mod q e γδ -1 mod q vera se γ = (α e β e mod p) mod q falsa altrimenti 46 47

Efficienza firma DSA irma_dsa(,p,q,α,s) r numero casuale in in [1,q-1] γ (α r modp) modq δ (()+sγ)r -1-1 mod q output firma (p,q,α,s) (,r) = (γ,δ) Lunghezza firma = 320 bit Computazioni off-line: r, sγ, r -1 mod q Verifica firma DSA Verifica_firma_DSA(,γ,δ,p,q,α,β) e e ()δ -1-1 mod q e γδ -1-1 mod q vera se γ = (α e e β e e modp) modq ver (p,q,α,β) (,γ,δ) = falsa altrimenti Output ver (p,q,α,β) (,γ,δ) Computazioni on-line: (), +, 48 49 Correttezza verifica firma DSA Scelta dei parametri (α e β e mod p) mod q = (α ()δ-1 mod q α sγδ-1 mod q mod p) mod q = (α ()δ-1 +sγδ -1 mod p) mod q = (α r mod p) mod q e = ()δ -1 mod q e = γδ -1 mod q β = α s mod p α è di ordine q δ -1 (()+sγ) = r mod q Come scegliere p, q, α? = γ 50 51

Generazione di p e q Generazione di p e q Scegli p Scegli q di 160 bit tale che q (p-1) Scegli p Scegli q di 160 bit tale che q (p-1) Dovrei Dovrei conoscere la la fattorizzazione di di p-1 p-1 52 53 Generazione di p e q Scegli un primo q di 160 bit Scegli un primo p di 512/1024 bit tale che q (p-1) o Scegli X di 512 bit (oppure... 1024 bit) o p X - ((X mod 2q)-1) 2q (p-1) o se p è primo e p 2 511 esci altrimenti riprova 54 Generazione di p e q Seleziona_pq(L) (1) (1) Computa interi n e b tali tali che che L-1=160n+b (2) (2) repeat (3) (3) repeat (4) (4) S sequenza casuale di di almeno 160 160 bit bit (5) (5) g S S (6) (6) U (S) ((S+1) mod mod 2 g g ) (7) (7) orma orma q da da U ponendo il il SB SB ed ed il il LSB LSB ad ad 1 (8) (8) until until q primo primo (9) (9) C 0 (10) (10) N 2 (11) (11) repeat (12) (12) for for k=0 k=0 to to n do do V k k (S+N+k) mod mod 2 g (13) g (13) W V 0 +V 0 +V 1 2 1 2 160 160 +...+V n-1 2 n-1 2 160(n-1) 160(n-1) +(V +(V n mod n mod 2 b b ) 2 ) 2 160n (14) 160n (14) X W+2 W+2 L-1 (15) L-1 (15) p X-((X X-((X mod mod 2q)-1) (16) (16) until until (p (p primo) or or (p<2 (p<2 L-1 L-1 ) (17) (17) if if p<2 p<2 L-1 (18) L-1 (18) then then C C+1 C+1 (19) (19) N N+n+1 N+n+1 (20) (20) if if C<4096 then then goto goto step step (12) (12) (21) (21) else else Help Help falso falso (22) (22) else else Help Help vero vero (23) (23) until until Help Help (24) (24) return p,q,s,c 55

Generazione di q Scegli a caso S di 160 bit S S+1 Ripeti con un nuovo S finchè q è primo 160 bit u 1 1 q 56 Generazione di p e q Seleziona_pq(L) (1) (1) Computa interi n e b tali tali che che L-1=160n+b (2) (2) repeat (3) (3) repeat (4) (4) S sequenza casuale di di almeno 160 160 bit bit (5) (5) g S S (6) (6) U (S) ((S+1) mod mod 2 g g ) (7) (7) orma orma q da da U ponendo il il SB SB ed ed il il LSB LSB ad ad 1 (8) (8) until until q primo primo (9) (9) C 0 (10) (10) N 2 (11) (11) repeat (12) (12) for for k=0 k=0 to to n do do V k k (S+N+k) mod mod 2 g (13) g (13) W V 0 +V 0 +V 1 2 1 2 160 160 +...+V n-1 2 n-1 2 160(n-1) 160(n-1) +(V +(V n mod n mod 2 b b ) 2 ) 2 160n (14) 160n (14) X W+2 W+2 L-1 (15) L-1 (15) p X-((X X-((X mod mod 2q)-1) (16) (16) until until (p (p primo) or or (p<2 (p<2 L-1 L-1 ) (17) (17) if if p<2 p<2 L-1 (18) L-1 (18) then then C C+1 C+1 (19) (19) N N+n+1 N+n+1 (20) (20) if if C<4096 then then goto goto step step (12) (12) (21) (21) else else Help Help falso falso (22) (22) else else Help Help vero vero (23) (23) until until Help Help (24) (24) return p,q,s,c 57 Generazione di p (512 bit) Generazione di p (512 bit) S+2 S+3 S+4 S+5 S+2 S+3 S+4 S+5 511 = 3 160 + 31 V 0 V 1 V 2 V 3 V 0 V 1 V 2 V 3 X =512 X V 0 +V 1 2 160 + V 2 2 2 160 +(V 3 mod 2 31 ) 2 3 160 +2 511 p X - ((X mod 2q)-1) 2q (p-1) se p è primo e p 2 511 esci altrimenti 58 59

Generazione di p (512 bit) S+6 S+7 S+8 S+9 Generazione di p (512 bit) N 2,6,10,, (per 4096 volte) S+N S+N+1 S+N+2 S+N+3 511 = 3 160 + 31 511 = 3 160 + 31 V 0 V 1 V 2 V 3 X =512 V 0 V 1 V 2 V 3 X =512 X V 0 +V 1 2 160 + V 2 2 2 160 +(V 3 mod 2 31 ) 2 3 160 +2 511 X V 0 +V 1 2 160 + V 2 2 2 160 +(V 3 mod 2 31 ) 2 3 160 +2 511 p X - ((X mod 2q)-1) 2q (p-1) p X - ((X mod 2q)-1) 2q (p-1) se p è primo e p 2 511 esci altrimenti se p è primo e p 2 511 esci altrimenti 60 61 Scelta di un elemento di ordine q Correttezza di Scegli_ordineq p,q primi tali che q (p-1) Scegli_ordineq (p,q) 1. g elemento scelto a caso in in Z * p 2. α g (p-1)/q (p-1)/q mod p 3. if if α 1 then return α else go to 1. Scegli_ordineq (p,q) 1. 1. g elemento scelto a caso in in Z p * 2. 2. α g (p-1)/q (p-1)/q mod p 3. 3. if if α 1 then return a else go to 1. 1. α q (g (p-1)/q ) q g p-1 1 mod p Dal teorema di Lagrange, ord(α) divide q q primo ord(α)=1 oppure ord(α)=q ord(α)=1 sse α =1 α 1 ord(α)=q 62 63

Probabilità successo Sicurezza firma DSA Se g è un generatore allora g (p-1)/q 1 mod p Probabilità successo Probabilità che g è generatore > 1/(6lnln(p-1)) Numero medio di iterazioni < 6lnln(p-1) 512 bit 6 lnln(2 512 512 ) 35,23 1024 bit 6 lnln(2 1024 ) 39,38 2048 bit 6 lnln(2 2048 ) 43,54 64 Voglio falsificare la firma di da parte di A Total break Key only attack A (p,q,α,β) Devo calcolare s=log α β mod p A?? 65 Voglio falsificare la firma di da parte di A Selective forgery Key only attack Sicurezza firma DSA A (p,q,α,β) 1. Scelgo γ a caso 2. Determino δ tale che δ (()+sγ)r -1 mod q Devo calcolare δ=log γ (α (). β γ ) A Voglio generare messaggi e firme da parte di A Existential forgery Key only attack Sicurezza firma DSA 1. Scelgo γ,δ a caso 2. Calcolo z tale che α z = γ δ β -γ A (p,q,α,β) Devo calcolare z=log α (γ δ β -γ ) -1 (z) A 66 67

Chiavi globali ed individuali (p,q,α,s) A (p,q,α,β) Sicurezza basata sul valore privato s I valori p,q,α possono essere gli stessi per un gruppo di utenti Un autorità sceglie p,q,α Il singolo utente sceglie solo s e calcola β Confronto tempi firme RSA e DSA DSA RSA DSA con p,q,α comuni precomputazioni 14 sec 4 sec firma 0.3 sec 15 sec 0.3 sec verifica 16 sec 1.5 sec 10 sec 1-5 sec Off Cards 1-3 sec Off Cards Implementazioni su smart card [1993] Computazioni Off Cards su 80386 a 33Hz 68 69 Prestazioni algoritmi Celeron 850Hz, Windows 2000, Crypto++ millisecondi/operazione bit firma irma con verifica chiave precomputazio ne RSA DSA RSA DSA 512 512 1024 1024 1,92 1,77 10,29 5,50 1,19 2,27 0,13 2,02 0,30 6,38 70 Pentium II 400 OpenSSL Prestazioni RSA DSA RSA DSA RSA DSA bit chiave 512 512 1024 1024 2048 2048 firme/s 342 331 62 112 10 34 verifiche/ s 3287 273 1078 94 320 27 71