Una firma digitale è l'equivalente elettronico di una tradizionale firma autografa. Si è calcolato utilizzando una formula matematica , o algoritmo , e rappresentata in un computer come una stringa di cifre binarie , oppure applicando una serie di parametri , noti come parametri di dominio "bit ". - Che può essere specifico per un singolo utente o condivisa tra un gruppo di utenti - ad un algoritmo di firma digitale , gli utenti possono verificare l'identità del firmatario e l'integrità dei dati firmati . Pubblici e privati Keys
algoritmi di firma digitale si basano su una coppia di chiavi correlate , noto come una chiave privata e una chiave pubblica . Ogni firmatario possiede una coppia di chiavi e utilizza la chiave privata , che è mantenuta segreta , per generare una firma digitale . Chi volesse verificare la firma può utilizzare la chiave pubblica corrispondente , che viene distribuito gratuitamente da parte del firmatario . Federal Information Processing Standard ( FIPS) negli Stati Uniti approvano tre algoritmi per la generazione , la verifica e la convalida delle firme digitali .
DSA
Il Digital Signature Algorithm , come specificato nella standard FIPS 186-3 , impiega una funzione , detta funzione hash , per generare una versione condensata di dati , noto come un digest del messaggio . La funzione hash trasforma una stringa di caratteri in una più breve , chiave di lunghezza fissa che rappresenta la stringa originale . Il messaggio digest è di input verso l'algoritmo DSA per generare la firma digitale . La firma digitale viene inviato al destinatario , il quale verifica utilizzando la chiave pubblica del firmatario e la stessa funzione di hash .
RSA
Il cosiddetto RSA algoritmo di firma digitale - dal nome dei suoi inventori, Ron Rivest , Adi Shamir e Leonard Adleman - è anche approvato da FIPS 186-3 standard . Una chiave pubblica RSA consiste di un coefficiente ( o modulo) , ottenuto moltiplicando assieme due numeri primi positivi , e un esponente chiave pubblica . Una chiave privata RSA consiste lo stesso modulo e un esponente chiave privata , che dipende dalla esponente chiave pubblica . L'esponente chiave pubblica è in genere molto più piccolo l'esponente chiave privata , in modo tale che la verifica di una firma digitale è più veloce di generare la firma , in primo luogo .
ECDSA
la curva ellittica Digital Signature Algorithm è la curva ellittica equivalente di DSA ed è stata proposta dal noto crittografo Dr. Scott A. Vanstone nel 1992. ECDSA è stato accettato come un Istituto Nazionale di Standard e Tecnologia standard nel 2000. ECDSA richiede che le coppie di chiavi pubbliche e private sono generati in relazione a particolari parametri di dominio, che possono rimanere fissati per lunghi periodi di tempo .