Descrizione Tecnica
Transcript
Descrizione Tecnica
Descrizione Tecnica DigitalSign Core® Per integrare firme elettroniche e digitali nelle applicazioni web Con DigitalSign Core è possibile: Integrare la firma digitale nelle proprie applicazioni, in ogni modalità e formato Sviluppare procedure di firma automatica, di verifica, di marcatura temporale in contesti web-based Interfacciare dispositivi di firma personali (smartcard) e servizi di firma remota (HSM) Una libreria in tecnologia Java al servizio della software house che ricerca un prodotto stato dell’arte, potente, completo, affidabile Dall’esperienza sul campo di DigitalSign – il prodotto di firma digitale di riferimento, usato da decine di migliaia di utenti e adottato da molte software house per le applicazioni veramente professionali – e dal know-how maturato in sofisticati progetti chiavi in mano, CompEd ha fatto nascere DigitalSign Core. Si tratta di una libreria rivolta alle software house che hanno in produzione un proprio sistema (gestionale, documentale, ERP, workflow, …) e desiderano integrarvi in profondità i servizi necessari per firmare, verificare, marcare temporalmente senza condizionamenti. Anche in questo nuovo prodotto i clienti di CompEd trovano caratteristiche di assoluta completezza, di facilità d’uso, di esemplare efficacia di presentazione, di estrema flessibilità. Senza trascurare un’interpretazione rigorosa delle norme, degli standard, dei principi di sicurezza. DigitalSign Core – Descrizione Generale (14/11/2013) La libreria DigitalSign Core consente di realizzare applicazioni multi-tier e fault tolerant, adatte al deployment su cluster. Essendo realizzata interamente in Java la libreria è compatibile con Windows, OSX e Linux. 1. 1.1 Funzionalità Sottoscrizione di documenti DigitalSign Core permette di generare documenti firmati in formato standard CAdES (evoluzione dello standard PKCS#7), partendo da qualunque documento digitale. Se il documento originale è in formato PDF o PDF/A è possibile apporre le firme anche in modalità PAdES, naturalmente con il del pieno controllo sulle caratteristiche del campo firma aggiunto. La libreria consente ovviamente di interagire anche con documenti già firmati, per aggiungere nuove firme. Oltre alla Firma Elettronica Qualificata DigitalSign Core può produrre qualunque tipo di firma digitale come descritta dalle nuove Regole Tecniche ed in particolare la firma elettronica avanzata basata sulle Carte Nazionali dei Servizi e sul relativo certificato di autenticazione. DigitalSign Core produce documenti conformi alle Regole Tecniche del DPCM 30/03/2009 ed alla Deliberazione CNIPA 45/2009, nonché alle prescrizioni prorogate con la Determinazione Commissariale DigitPA 69/2010. I contenuti delle nuove Regole Tecniche, attualmente in attesa di essere pubblicate in Gazzetta Ufficiale, sono già recepiti. 1.2 Funzionalità sul client e sul server Nell’implementazione di un processo di firma i progettisti possono trovarsi di fronte a problemi da risolvere con diversi approcci, in funzione dell’architettura dei propri sistemi, delle tipologie di documenti, degli strumenti di firma da interfacciare. Con DigitalSign Core è possibile: 1/3 realizzare tutte le funzioni di firma sul client, ossia sulla stazione di lavoro dell’utente, usando smartcard locali o un servizio di Firma Remota realizzare tutte le funzioni di firma sul server, usando un servizio di Firma Remota realizzare la maggior parte delle funzioni sul server, demandando al client solo le interazioni con la smartcard locale Per rendere possibili tutte queste alternative DigitalSign Core comprende una applet scaricabile on-the-fly da parte dei client: l’applet può interagire con l’ambiente locale, in particolare con la smartcard, scambiando dati con il server. Ovviamente sono possibili anche soluzioni “ibride”, spostando il baricentro più sul server o sul client in funzione delle esigenze specifiche, sfruttando la granularità delle funzioni di DigitalSign Core. 1.3 Marcatura Temporale Gli addetti ai lavori sanno bene che per assicurare il massimo valore probatorio di un documento firmato occorre essere in grado di collocare nel tempo l’istante della firma, per prevenire ogni possibile contestazione sul fatto che la firma sia avvenuta prima o dopo la scadenza o la revoca del certificato di sottoscrizione. E notoriamente la Marca Temporale è l’oggetto più fisiologico per ottenere un tale risultato a livello di un singolo documento. Anche questo strumento può essere gestito in modo flessibile da DigitalSign Core. Innanzitutto è possibile associare la marca temporale direttamente alla firma (in modalità CAdES-T e PAdES-T): sfruttando tale funzionalità – se prevista – da parte del servizio di Firma Remota che ritorna la firma già corredata di una Marca Temporale; collegando il sistema, lato server, con un servizio di Marcatura Temporale centralizzato; lasciando che sia il client ad interagire con il servizio di Marcatura Temporale configurato. DigitalSign Core – Descrizione Generale (14/11/2013) Inoltre è possibile apporre una marca temporale al documento già firmato (verosimilmente solo con un riferimento temporale leggero, di tipo SigningTime) e produrre un documento con marca detached oppure in formato .tsd (RFC 5544), previa verifica della validità di tutte le firme contenute. 1.4 Verifica di firme e marche temporali La verifica della validità di un documento firmato è una attività di grande importanza. Oltre all’ovvia circostanza in cui occorre verificare un documento proveniente da una controparte, prima di dar corso ad un processo decisionale o produttivo conseguente al contenuto, è fondamentale anche verificare la correttezza di ogni documento firmato dai propri utenti e processi: la scoperta tardiva di una o più firme invalidate da un certificato scaduto o da un errore tecnico ha sempre pesanti ricadute. DigitalSign Core offre funzioni di verifica molto sofisticate, per verificare la validità globale di un intero documento marcato temporalmente, oppure di una singola firma o di un certificato. Oltre alla semplice funzionalità booleana di verifica (valido/non valido) è possibile ottenere un report XML con tutti i dettagli del documento, delle firme di ogni oggetto correlato, nello stile a cui ci ha abituati DigitalSign. Il report può essere usato facilmente per la presentazione all’utente, integrando la visualizzazione del documento. Per ottenere il massimo livello di attendibilità le funzioni di verifica dovrebbero essere implementate sul server, dove è possibile il massimo controllo della configurazione (in particolare sull’attendibilità ristretta ai certificatori accreditati piuttosto che su liste di CA aggiuntive). Qualora i documenti risiedessero sul client e la loro dimensione (o la riservatezza dei contenuti) sconsigliasse il trasferimento al server è possibile suddividere il processo tra client e server: il client estrae gli oggetti da verificare e li trasmette al server, dove avviene la verifica di attendibilità e validità dei certificati. Naturalmente DigitalSign Core può verificare documenti corredati di firma elettroniche qualificati conformi a tutte le edizioni delle regole tecniche di AIPA/CNIPA/DigitPA promulgate nel tempo. Quindi i formati .p7m e .pdf (PAdES), come pure .tsd, .m7m, .p7x Pienamente supportata è anche la verifica alla data, che tiene conto delle prescrizioni di legge in relazione alla durata di validità delle marche 2/3 temporali e dell’attendibilità delle CRL. DigitalSign Core richiede un runtime java 1.6. 2. Può essere eseguito negli ambienti Windows, OSX, Linux. Licensing DigitalSign Core è offerto alle software house nell’ambito della CompEd Developer License, con le stesse modalità in cui è disponibile DigitalSign Professional: esistono diversi tagli in funzione del numero massimo di utenze che generano firme, con una regolamentazione del numero minimo di sottoscrittori per server. 3. Ambienti operativi DigitalSign Core – Descrizione Generale (14/11/2013) Ove sia necessario interagire con dispositivi locali (smartcard, lettori) è necessario verificare la disponibilità di componenti di interfaccia tra l’ambiente prescelto e i dispositivi a disposizione. Per le implementazioni fault tolerant la libreria supporta opzionalmente lo storage delle configurazioni, del caching CRL e di tutti i parametri di funzionamento tramite condivisione con JDBC, usando ANSI SQL, compatibile con tutti i più importanti ambienti database. 3/3