Premessa
Le regole tecniche del DPCM 8 febbraio
1999, fissano i principi generali per esercitare l'attività di
certificatore a norma della legge italiana (DPR 513 1997).
Tali principi indicano, fra l'altro,
alcuni fra i più diffusi standard internazionali di riferimento nel campo
dei sistemi di firma elettronica.
Il meccanismo di firma digitale si basa
su concetti fondamentali come quelli di un ente certificatore (Certification
Authority) e di chiavi pubblica (Kpub) e privata (Kpri) da utilizzare per
la firma.
Tra le principali funzioni che un
certificatore deve garantire ci sono quella di produrre il certificato che
stabilisce il legame univoco tra la chiave privata ed il legittimo
possessore, di custodire la chiave pubblica in una lista consultabile e di
garantire la validità temporale del potere di firma (validità del
certificato).
Dopo circa un anno dalla pubblicazione
delle regole tecniche, sette certificatori sono stati già inclusi
ufficialmente nell'elenco pubblico tenuto dall'AIPA e altri sono in
procinto di iscriversi. Al fine di garantire omogeneità operativa e
corretta interazione tra gli utenti che utilizzano la firma digitale,
tutti i certificatori iscritti o in corso di iscrizione hanno concordato
sulla necessità di individuare un documento di linee guida che, ad
integrazione degli standard esistenti, desse chiare indicazioni su come
affrontare i problemi sulla struttura del certificato e delle sue
estensioni, sulla struttura delle liste di revoca e su quelle delle
"buste elettroniche", colmando in tal modo le lacune dovute ad
una interpretazione proprietaria di alcune regole sintattiche e semantiche
degli standard. Tale esigenza era per altro già stata manifestata agli
intermediari finanziari ed ai gestori dei sistemi di pagamento dalla Banca
d’Italia, nell’ambito dell’analisi dei requisiti necessari al pieno
e sicuro utilizzo della firma digitale nei trasferimenti elettronici di
moneta.
La normativa vigente consente
l’utilizzo di una serie di algoritmi e strutture dati definiti in
standard de jure o standard de facto. Non era possibile imporre regole
precise, poiché ogni riferimento diretto ad una specifica tecnica avrebbe
potuto generare squilibri sul mercato o addirittura escludere a priori una
serie di fornitori. Si è perciò preferito seguire la via di fornire
delle indicazioni di riferimento e poi orientarle con l’approvazione
degli attori di mercato.
Questa è la strada che si è inteso
perseguire con la costituzione, da parte dell’Autorità per
l’informatica nella Pubblica Amministrazione, di un gruppo di lavoro,
denominato "Gruppo di lavoro Interoperabilità dei Certificatori",
costituito dai certificatori iscritti, o di prossima iscrizione,
nell’elenco pubblico, con l’ulteriore apporto della Banca d’Italia.
Attorno a questo tavolo sono stati discussi i problemi di interoperabilità
che, a prescindere dalla necessaria aderenza alla normativa tecnica
vigente, si pongono in una infrastruttura a chiave pubblica per la firma
digitale, in assenza di accordi precisi su una serie di questioni
tecnologiche. Le soluzioni al momento concordate costituiscono solo il
primo passo di un percorso che si prolungherà nel tempo affrontando i
temi dell’adeguamento della legislazione italiana alla normativa europea
sulla firma elettronica, dell’aggiornamento delle regole tecniche
all’evoluzione tecnologica, ed ogni altra problematica operativa che si
dovesse manifestare sul tema della firma elettronica/digitale.
Nei paragrafi successivi, dopo una breve
descrizione del processo di firma digitale, verranno descritti i problemi
riscontrati e la strategia risolutiva prescelta. Per gli aspetti
tecnologici che hanno caratterizzato le soluzioni individuate e concordate
al tavolo sopra citato si rimanda all’allegato tecnico.
Il processo di firma
digitale
A fine puramente indicativo si riporta
nel seguito una breve descrizione del processo di firma digitale, così
come prevista dalle norme di legge e garantito dai diversi fornitori che
hanno dato origine al citato gruppo di lavoro.
Nell'effettuare la firma di un documento
elettronico bisogna attivare una serie di procedure che in modo sintetico
sono:
1) generazione dell'impronta del
documento elettronico (una sorta di rappresentazione binaria ed univoca
del documento),
2) cifratura dell'impronta del documento
elettronico per mezzo della chiave privata Kpri,
3) creazione di una "busta
elettronica" che contiene il documento, la firma definita al punto
precedente e il certificato emesso dal certificatore che lega la chiave
privata al suo possessore.
Il destinatario del documento elettronico
firmato deve essere in grado di:
a) aprire la "busta
elettronica",
b) decifrare l'impronta del documento
elettronico con la Kpub del firmatario estratta dal certificato,
c) calcolare l'impronta del documento
elettronico e verificare il valore ottenuto con quello firmato ai fini
dell'integrità del messaggio,
d) aprire il certificato e leggere
l'identità del soggetto per verificare l'identità del mittente e la
validità temporale della sua firma. Per effettuare tale verifica, si deve
accedere ad una speciale lista (Certification Revocation List) redatta da
ogni certificatore e ricercare se il certificato ricevuto appartenga alla
lista oppure no. In caso negativo, il certificato deve essere considerato
ancora valido e pertanto il documento elettronico può considerarsi valido
secondo quanto previsto dal DPR 513.
In sintesi:

Affinché la diffusione della firma
digitale possa avvenire in modo efficace occorre che i documenti firmati
da un soggetto mittente che utilizza i servizi offerti da un certificatore
possano essere letti e gestiti da un soggetto destinatario che invece
utilizza i servizi offerti da un altro certificatore. Se ciò non fosse
possibile, lo scambio di documenti elettronici potrebbe avvenire solo fra
soggetti che utilizzano uno stesso certificatore.
Molteplici sono le difficoltà che
impediscono di fatto l'interoperabilità dei documenti firmati
elettronicamente. Un primo ostacolo di base nasce dal fatto che esistono
in linea di principio almeno due grandi classi di procedimenti di
crittografia basati su tecniche RSA e DSA. Tutti i certificatori presenti
attualmente nell'albo dei certificatori, o in corso di iscrizione, sono in
grado di utilizzare solo la tecnica RSA.
Per rendere interoperabili le procedure
di firma è necessario:
1) riconoscere il formato di una
"busta elettronica";
2) essere in grado di poter aprire ed
estrarre le informazioni contenute nella busta elettronica;
3) saper "leggere" il contenuto
del certificato ed estrarre correttamente l'identità della persona che ha
firmato e la relativa Kpub;
4) essere in grado di capire quale
algoritmo sia stato utilizzato per ottenere l'impronta del documento
elettronico e applicare lo stesso algoritmo al documento estratto dalla
busta elettronica;
5) sapere come ricercare in modo efficace
il certificato inserito nella busta elettronica nella CRL del
certificatore in modo da validare definitivamente la firma.
E' fondamentale capire che gli attuali
standard internazionali non garantiscono i precedenti cinque punti in modo
automatico: molte sono le scelte possibili affidate al certificatore anche
in funzione dei servizi che il certificatore intende offrire.
Nei mesi di febbraio, marzo e aprile 2000
sono state tenute presso l'Autorità per l'informatica una serie di
riunioni con i certificatori per capire se e come fosse possibile definire
in modo preciso delle scelte che garantissero l'interoperabilità così
come definita nei cinque punti precedenti. Inoltre, a valle delle scelte
effettuate si è verificato in modo operativo la possibilità concreta di
poter interagire fra certificatori diversi.
Il risultato conseguito è tecnicamente
riportato nel documento in allegato.
E' importante rilevare che questo risultato rappresenta un
"primizia" in campo internazionale e dimostra in modo concreto
che su questo argomento l'Italia è e rimane all'avanguardia rispetto agli
altri paesi e che può fornire un contributo significativo a livello
internazionale al processo di standardizzazione in atto presso le sedi
competenti.
Approccio metodologico
La prima e più importante decisione
assunta dal GdL è stata quella di affrontare i problemi essenzialmente
dal punto di vista operativo, avendo come primo obiettivo quello di
raggiungere soluzioni concrete per i problemi più importanti. Da un lato
ciò ha opportunamente limitato l’ambito di intervento del gruppo,
dall’altro ha dato fondamentale importanza all’effettiva applicabilità
delle soluzioni adottate, ossia alla disponibilità sul mercato degli
strumenti necessari per attuarle.
Particolare rilevanza è stata attribuita
alla semplicità delle soluzioni ed alla loro immediata applicabilità da
parte di tutti i certificatori indipendentemente dalla piattaforma
tecnologica da essi adottata.
Il secondo aspetto che si è preso in
considerazione è stato quello della coerenza con i numerosi processi di
standardizzazione in corso sulla tematica della firma digitale. La scelta
è stata quella di evitare fughe in avanti, adottando soluzioni che, pur
interessanti, al momento sono ancora allo stato di proposta e non sono
supportate dai prodotti commerciali. Si è tuttavia scelto di tenerne
conto per quanto possibile, in particolare evitando di adottare scelte
che, nel caso in cui tali soluzioni venissero successivamente adottate
effettivamente, richiederebbero onerosi riadattamenti dei prodotti
sviluppati.
Le questioni su cui ci si è concentrati
sono state essenzialmente la compatibilità dei certificati e
l’interscambiabilità dei documenti firmati. Pertanto i principali
problemi affrontati sono stati:
struttura del certificato;
rappresentazione delle informazioni in esso contenute;
struttura e formato delle lista di revoca e sospensione;
struttura e rappresentazione dei documenti firmati.
Struttura del certificato
Riguardo la struttura del certificato
sono stati individuati gli elementi che debbono essere comunque presenti e
quelli che viceversa possono essere omessi. Particolare attenzione è
stata posta nell’individuazione delle estensioni previste dallo standard
X.509v3 che è necessario utilizzare per soddisfare i requisiti della
normativa, specificando, per quanto possibile le modalità di utilizzo e
valorizzazione. Le scelte operate sono specificate nell’Allegato
Tecnico, nel quale è disponibile anche una tabella riassuntiva.
Rappresentazione delle
informazioni contenute nei certificati
Le modalità di rappresentazione delle
informazioni all’interno di un certificato non sono completamente
specificate dagli standard di base, tanto che attualmente sono in corso di
definizione degli specifici "profili" che le definiscono in modo
più dettagliato per specifici contesti applicativi. I problemi principali
sono la codifica e la semantica dei campi utilizzati.
Queste linee guida si soffermano
principalmente sui campi destinati alla identificazione dei soggetti ed in
particolare del titolare. Problemi di non facile soluzione sono posti dai
vincoli presenti negli standard riguardo al set di caratteri utilizzabile
ed alle limitazioni poste dai prodotti disponibili sul mercato sulla
lunghezza dei campi.
Le soluzioni adottate, pur alquanto primitive, sono state scelte per la
loro semplicità ed efficacia, congiunte alla possibilità di
implementazione immediata. Soluzioni più raffinate, peraltro già
proposte a livello di standard internazionali, potranno essere adottate
non appena consolidate ed adottate all’interno dei prodotti, senza però
comportare onerose conversioni del pregresso.
Struttura e formato
delle lista di revoca e sospensione
Le liste di revoca e sospensione,
previste dalla normativa italiana e dagli standard internazionali, pongono
non pochi problemi a causa della scarso ed inefficiente supporto che viene
offerto dai prodotti commerciali. Per queste linee guida si è cercato di
individuare gli elementi strettamente necessari per assicurare la
funzionalità del sistema, sacrificando anche l’efficienza, se
necessario per garantire la compatibilità. Il Certificatore ha comunque
facoltà di mettere a disposizione soluzioni più avanzate, purché
aggiuntive rispetto a quelle minime concordate.
Struttura e
rappresentazione dei documenti firmati
La rappresentazione complessiva del
documento firmato è l’aspetto su cui sono possibili il maggior numero
di soluzioni e varianti. È infatti su questo aspetto che il gruppo ha
dovuto lavorare maggiormente per raggiungere un sufficiente livello di
compatibilità.
L’attenzione si è concentrata sulle
numerose varianti del formato PKCS#7, quello maggiormente utilizzato in
pratica, adottando una serie di convenzioni, non ultima quella di
denominazione dei file in base alla tipologia di documento firmato, atte a
rendere univoca l’interpretazione dell’oggetto utilizzato.
Sviluppi futuri
Il lavoro svolto consente di raggiungere
un primo importante livello di interoperabilità tra gli strumenti di
firma utilizzati nell’ambito della Pubblica Amministrazione.
Come controprova di quanto affermato, si riporta nel seguito una tabella
che evidenzia lo stato di interoperabilità all'inizio dei lavori (chi
parla con chi):
| |
|
Ente Mittente
|
| |
|
Bnl multiservizi
|
Finital
|
Infocamere
|
Postecom
|
Saritel
|
Seceti
|
SIA
|
SSB
|
|
Ente Destinatario
|
Bnl mutiservizi
|
sì
|
sì
|
sì
|
sì
|
sì
|
sì
|
sì
|
sì
|
|
Finital
|
sì
|
sì
|
sì
|
no
|
no
|
no
|
sì
|
no
|
|
Infocamere
|
no
|
no
|
sì
|
no
|
no
|
no
|
no
|
no
|
|
Postecom
|
sì
|
no
|
sì
|
sì
|
no
|
no
|
no
|
sì
|
|
Saritel
|
no
|
no
|
no
|
no
|
sì
|
no
|
no
|
no
|
|
Seceti
|
no
|
no
|
no
|
no
|
no
|
sì
|
no
|
no
|
|
SIA
|
no
|
no
|
no
|
no
|
no
|
no
|
sì
|
no
|
|
SSB
|
sì
|
no
|
sì
|
no
|
sì
|
sì
|
sì
|
sì
|
Attualmente ognuna delle otto
Certification Authority è in grado di leggere documenti firmati
utilizzando il certificato emesso da un'altra Certification Authority.
È auspicabile che il tavolo di
discussione costituito dal GdL, esaurito il suo compito istituzionale
continui, nelle forme e con gli strumenti che saranno ritenuti più
idonei, ad operare per attuare un armonico processo di sviluppo che
fornisca soluzioni adeguate e coerenti a tutte le problematiche di
interesse.
|