La PEC è, a tutti gli effetti un messaggio S/MIME. Così come riportato nella RFC 6109, il formato del messaggio è quello della sezione 3.4.3 della RFC 5751. Da queste letture si evince che la busta PEC, altro non è che un messaggio contenente più parti. Nella fattispecie, tra le intestazioni del messaggio ci sarà:
Content-Type: multipart/signed; protocol="application/x-pkcs7-signature"; micalg="sha1";
Riprendiamo il concetto di firma elettronica. Per fare questo, installiamo il pacchetto GnuPG ( {it:GNU Privacy Guard} ).
luca@giasone:~$ sudo apt-get install gnupg
Una volta installato, avremo a disposizione il comando gpg con il quale potremo fare qualche esperimento. Per prima cosa creiamo una nuova coppia di chiavi:
luca@giasone:~$ gpg --gen-key
[...]
gpg: directory `/home/luca/.gnupg' created
gpg: creato un nuovo file di configurazione `/home/luca/.gnupg/gpg.conf'
[...]
Selezionare il tipo di chiave desiderato:
(1) DSA ed Elgamal (predefinito)
(2) DSA (solo firma)
(5) RSA (solo firma)
Selezione? 1
[...]
Ho scelto la chiave DSA Elgamal per poterla usare sia per la firma che per la crittografia. Le opzioni sucessive sono abbastanza chiare. Preparatevi a fare "rumore" per generare numeri casuali (aprite le risorse del computer, lanciate programmi e via dicendo). Mi raccomando: ricordatevi la password!
Questo sarà il primo di una serie di articoli dedicati alla gestione delle chiavi cirttografiche. In questo primo articolo vedremo, in modo molto sbrigativo, cosa siano le chiavi asimmetriche, come si conservano e quando fidarsi.
Crittografia Asimmetrica
Probabilemente la maggior parte di chi legge sa già cosa sia la crittografia asimmetrica e potrà quindi saltare questa parte. Per chi non lo sapesse, ne darò una brevissima descrizione.
La {it:Crittografia} serve per rendere sicure le comunicazioni tra una o più persone. Per decriptare un testo si ha bisogno di una chiave. Il problema maggiore della crittografia è quello di garantire la sicurezza della chiave e, allo stesso tempo, di permetterne la diffusione. Un grande balzo in avanti lo si è fatto grazie alla {it:crittografia asimmetrica}. Con la crittografia asimmetrica, non si ha più una sola chiave ma due. Una chiave priva e una chiave pubblica.