Firma digitale: aspetti matematici e formati
Su Agenda Digitale è stata pubblicata una guida tecnica dedicata agli aspetti matematici e ai formati applicativi della firma digitale, a cura di Fabrizio D’Amore.
Nell’introduzione del vademecum, si legge quanto segue: “Tutto nasce nel 1976 quando due ricercatori, Diffie ed Hellman (D-H), ebbero un’idea sulla crittografia (che fu poi chiamata “a chiave pubblica”) ed altri tre, Rivest, Shamir e Adleman, nel 1977, trovarono il modo di applicarla in pratica (RSA). I servizi segreti britannici avevano anticipato l’idea di qualche anno, ma la cosa non fu a quel tempo resa pubblica. In quanto segue userò come sinonimi i termini cifrare e criptare; similmente per decifrare e decriptare. L’idea di D-H si basava sulla premessa di associare ad ogni soggetto una coppia di chiavi, decidendo di chiamarle chiave privata e chiave pubblica.
Ci riferiremo alla coppia di Alice usando la notazione (KA,Pu, KA,Pr), con ovvio significato dei simboli. L’approccio prevedeva il principio di diffondere quanto più possibile la chiave pubblica e custodire gelosamente, mantenendola assolutamente segreta, la chiave privata, che per questo viene talvolta detta “segreta”. Secondo D-H le due chiavi dovevano essere legate da una relazione matematica particolare: se si cripta con una qualsiasi delle due, si decripta con l’altra. Non riuscirono a trovarla e il problema venne risolto pochi anni dopo con l’algoritmo RSA.
Siano allora (KA,Pu, KA,Pr) le chiavi di Alice e (KB,Pu, KB,Pr) quelle di Bob. Un’applicazione immediata dell’idea è: Alice vuole mandare un messaggio M a Bob e vuole che Bob sia certo della sua identità. Alice invia a Bob: (M, F), essendo F la cifratura di M effettuata con la chiave privata di Alice; notazione F = KA,Pr{M}. Bob riceve una coppia (M’, F’), che dovrebbe coincidere con quella inviata; Bob può effettuare una verifica decifrando F’ (serve la chiave pubblica di Alice, che in quanto pubblica è disponibile a tutti), con l’aspettativa di ritrovare così M’.
Le proprietà matematiche delle chiavi sono tali che solo cifrando con KA,Pr si poteva decifrare con KA,Pu e, data la segretezza di KA,Pr, solo Alice poteva aver fatto tale cifratura. Questa idea di base non era perfetta e si prestava a degli attacchi per cui l’idea è stata modificata leggermente, usando una funzione di hashing di qualità crittografica".
Tra gli argomenti trattati:
- Firma digitale, le proprietà matematiche delle chiavi
- Funzioni di hashing
- La qualità crittografica delle funzioni di hashing
- I certificati della firma digitale: come funzionano
- Definizione di firma digitale
- Come si svolge la verifica
- Marcatura temporale
- Applicazioni della firma digitale italiana
- I formati