Altri "bachi" nella firma
digitale?
17.10.02
Non si fermano le discussioni su quello che abbiamo chiamato il
"baco" della firma digitale (che, ricordiamo, non è un difetto del
software di firma, ma un problema delle applicazioni distribuite dai
certificatori - vedi Una tempesta in un bicchier d'acqua?
e gli articoli precedenti). Tra i numerosi messaggi che continuano ad arrivare a
InterLex, uno appare particolarmente interessante, perché solleva alcuni
problemi che impongono una riflessione.
Scrive Roberto Resoli:
Mi permetto di intervenire ancora sulla questione
della non rispondenza alla normativa dei software di firma attualmente in
commercio, perché a mio avviso evidenzia alcune lacune nella normativa stessa.
Premetto che mi occupo di firma digitale da un paio d'anni, lavorando come
informatico all'interno della pubblica amministrazione, e ho realizzato io
stesso sw di firma.
Come Cammarata precisa molto chiaramente (e opportunamente) nell'articolo
"Una tempesta in un bicchier d'acqua?", l'entità di cui interessa
assicurare identità, integrità e non ripudio è la visualizzazione di
un'"evidenza informatica" e non l'evidenza informatica stessa.
Giusto. Se sostituiamo alle parole "visualizzazione dell'evidenza
informatica" la parola "documento" (in senso giuridico) il
discorso fila perfettamente. Per essere più chiari: su un documento cartaceo,
la firma non si riferisce al foglio e all'inchiostro, ma a ciò che si vede
scritto. Lo stesso discorso deve valere per la firma digitale, la cui
apposizione significa che il firmatario approva ciò che vede scritto sullo
schermo: il "documento", e non i bit che lo costituiscono, dei quali
può non avere alcuna conoscenza, così come non interessa il tipo di carta o di
inchiostro del documento tradizionale. Continua Resoli:
Mi sembra quindi stupefacente che le regole tecniche
non specifichino le modalità secondo le quali l'evidenza informatica si
trasforma in documento informatico. E' chiaro che le visualizzazioni
di un file sono tante quanti i possibili programmi che realizzano la
visualizzazione stessa. Mi sembra anche semplicistico addossare l'intero compito
al sw di firma, dato che il problema della presentazione dei dati è comunque
logicamente distinto da quello dell'apposizione della firma (non mi pare ad
esempio sia affermato nella normativa che la visualizzazione di un documento
informatico vada sempre effettuata con lo stesso sw utilizzato per la firma).
Il discorso si fa più complesso. Dal punto di vista tecnico è corretto
osservare che la visualizzazione del documento e i calcoli necessari a generare
la firma sono cose diverse, ma questo non rileva ai fini della validità e
rilevanza giuridica del documento stesso: vedo un contenuto scritto sulla carta
e lo firmo con la penna, vedo un contenuto scritto sullo schermo e lo firmo con
la smart card e il pin. Se la normativa specificasse le modalità secondo le
quali questo effetto debba realizzarsi introdurrebbe una intollerabile rigidità
nel sistema: per l'ordinamento giuridico contano la volontà di sottoscrivere e
l'effetto della sottoscrizione, non la composizione chimica dell'inchiostro, per
restare al paragone con il documento cartaceo.
Affidare tutto questo all'applicazione di firma digitale non è
"semplicistico". E' "semplice", perché è l'unica soluzione
possibile. O ce ne sono altre, alla portata di chiunque e non solo degli
informatici?
La normativa (legge, regolamento e regole tecniche) non deve dire più di
quello che dice, cioè che per avere piena validità e rilevanza giuridica il
documento deve essere presentato "con chiarezza e senza ambiguità" e
che la firma digitale deve consentire di rilevare se il documento è stato
alterato dopo la firma. Dal punto di vista giuridico è tutto quello che serve
(a parte, naturalmente, le disposizioni di fondo, relative all'affidabilità del
certificatore e delle sue procedure).
Ma leggiamo ancora il messaggio di Resoli:
Altre questioni che andrebbero affrontate riguardo
il sw di firma sono: 1) Disponibilità del codice sorgente, che
permetterebbe di controllarne le modalità operative (ad esempio riguardo come
venga gestito il PIN del firmatario).
2) Sua integrità, che può essere garantita imponendone la firma da parte
di chi lo realizzi.
Senza entrare nelle questioni relative ai programmi open source - che
sarebbero particolarmente indicati per questo tipo di applicazioni - si deve
osservare che le regole tecniche (art. 10,
comma 5) su questo punto sembrano abbastanza rigorose. Infatti gli strumenti per
la generazione delle firme devono soddisfare il livello di valutazione E3, o
superiore, dei criteri ITSEC (Information Technology Securuty Evaluation
Criteria - i livelli vanno da 0 a 6). Per la certificazione del livello E3
si richiede l'esibizione del progetto del codice sorgente e dell'hardware, la
corrispondenza tra il codice sorgente e il progetto particolareggiato,
l'adozione di procedure di accettazione e di standard nei linguaggi di sviluppo,
la ripetizione del collaudo dopo la correzione degli errori. Per l'efficacia dei
sistemi è richiesto il livello più alto dei tre previsti, che sono LOW, MEDIUM
e HIGH.(1).
In ogni caso la prossima edizione delle regole tecniche dovrebbe adottare
criteri più aggiornati.
Un grosso problema si pone a mio parere anche
nel processo di verifica di un file firmato. Secondo la legge un documento
è valido se firmato tramite una chiave privata a cui corrisponde un certificato
in corso di validità. Poniamo ad esempio il caso seguente: 1) Tizio firma il
documento A utilizzando un chiave a cui corrisponde un certificato valido,
ottenendo il documento A.p7m. 2) In un momento successivo, Tizio smarrisce la
propria carta di firma e chiede la revoca del certificato. 3) Il documento A.p7m
è valido? Certamente si, perché è stato firmato con un certificato valido AL
MOMENTO DELLA FIRMA. Qualsiasi sw di verifica dirà però che la firma non è
valida, perchè il certificato NEL MOMENTO DELLA VERIFICA risulta revocato.
Il problema è che non esiste modo di certificare (a meno di non marcare
temporalmente il documento subito dopo la firma) IL MOMENTO in cui la firma è
stata apposta. A mio avviso la marcatura temporale andrebbe resa obbligatoria e
inserita nel processo di firma.
Partiamo dall'ultima osservazione: l'inserimento della marca temporale in
ogni firma costituirebbe un forte appesantimento di tutte le procedure (occorre
il collegamento on line col certificatore); inoltre la certificazione del
momento in cui un documento è stato firmato è richiesta dalla legge solo per
alcune categorie di atti.
Tuttavia le perplessità sulla validità ed efficacia dei documenti informatici
dopo la cessazione (per qualsiasi motivo) della validità del certificato sono
condivisibili. La validità della firma su un documento cartaceo è eterna,
quella della firma digitale è legata invece all'apposizione periodica delle
marche temporali, secondo l'art. 60 delle
regole tecniche. Questa disposizione non è di natura essenzialmente tecnica e
può suscitare qualche dubbio di legittimità, perché non ha un preciso
riferimento nel testo unico, che si limita a stabilire (DPR 445/00, art. 23, c. 5) "L'uso della firma
apposta o associata mediante una chiave revocata, scaduta o sospesa equivale a
mancata sottoscrizione" .
In ogni caso le disposizioni su questo punto non sono soddisfacenti:
un'interpretazione restrittiva dell'art. 60 delle regole tecniche porta
all'inaccettabile conclusione che una dichiarazione di scienza o una
manifestazione di volontà, perfettamente valide ed efficaci nel momento in cui
sono state sottoscritte, perdono ogni valore con la perdita di validità del
certificato. E' vero che il progresso tecnologico rende le firme sempre meno
forti col trascorrere del tempo, ma presumere che un documento sia stato
sicuramente "craccato" tre anni dopo la firma è un'esagerazione.
Siamo, probabilmente, di fronte a un reale "baco" della normativa,
o almeno a un punto da chiarire, o che potrebbe essere risolto, in futuro, dalle
decisioni dei giudici. Altri se ne possono trovare: ne riparleremo.
(M. C.)
|