Firma digitale
Introduzione
Questa guida spiega come installare configurare e usare la Firma Digitale in Sicraweb.
Firmare digitalmente
La primissima prova da eseguire per verificare la funzionalità è eseguire una firma digitale in Sicraweb.
Inserire la chiavetta USB o la smartcard nel lettore, poi in Sicraweb cliccare su GESTIONE - CONFIGURAZIONE - MODULI DI BASE - FIRMA DIGITALE - FIRMA DOCUMENTO
- SE TUTTO VA BENE
Apparirà una maschera
e subito dopo vi verrà chiesto il PIN di 8 caratteri numerici, digitatelo, cliccate su "Login"
e dopo qualche secondo appariranno le vostre credenziali di firma
Ora si può cliccare su "Firma" al che vi verrà chiesto di scegliere il file da firmare, una volta scelto dal vostro PC (o dalla rete) e cliccato apri avverrà la firma digitale, una volta terminata si chiuderà la finestra di firma.
Il file, con estensione .p7m, lo si troverà nella stessa cartella da dove ho scelto l'originale da firmare.
- SE QUALCOSA NON VA BENE
Se qualcosa va storto è praticamente certo che Sicraweb non è riuscito a riconoscere la Firma Digitale, a questo punto si deve iniziare ad indagare e probabilmente si dovrà "installare" la firma digitale ancorandola al PC per farla individuare a Sicraweb..
Installazione
Raccolta informazioni dal PC
La prima operazione da fare è eseguire dei controlli iniziali sul PC:
- Il PC aveva già usato altre firme digitali?
- Sono installati sul PC programmi per la firma digitale tipo Dike o ArubaSign o altro?
- E' installato Bit4Id??
- Si era già riusciti a firmare con Sicraweb su questo PC magari con altra firma digitale??
Poi spostiamoci sulla firma digitale e controlliamo:
- Che tipo di firma digitale è? Chiavetta USB? Lettore di smartcard con smartcard? Firma Remota?
- Che marca è? Non Infocert o Aruba ma proprio la marca. Questo è fondamentale per le chiavette USB e per i lettori di smartcard
- Se è una chiavetta USB con annessa smartcard tipo "SIM" (quelle degli smartphone per intenderci) verificare che la sim sia ben inserita nell'alloggiamento.
- Si hanno a disposizione i driver?
La situazione migliore sarebbe avere a che fare con un PC dove non è mai stata usata una firma digitale così da essere sicuri di non avere interferenze con programmi o driver già installati, si suggerisce in via precauzionale, se possibile, di fare eventualmente pulizia di quanto presente di pregresso sul PC.
- Se è una smartcard: installare i driver del lettore di smartcard
- Se è una chiavetta USB: installare il "Certificato di Firma" oppure i driver (solitamente Bit4Id). E' la stessa cosa.
- Riavviare il PC.
Ora probabilmente è installato sul PC Bit4Id Card Manager che mi permette di identificare la firma (ovviamente la firma deve essere sempre collegata al PC o su USB o su lettore di smartcard..)
Se non lo vedo nella barra di Windows sicuramente è presente dei Programmi, lanciamolo. Se Bit4Id Card Manager legge la firma digitale riporta una finestra simile a questa (non uguale!)
se invece non legge nulla bisogna risolvere prima questo problema!! Risolto questo si può provare a firmare come visto sopra. E' SICURO CHE SE BIT4ID NON LEGGE LA FIRMA DIGITALE NON LO FARA' NEPPURE SICRAWEB!!
Può essere che nonostante Bit4Id Card Manager riconosca la firma in Sicraweb non firmi lo stesso. A questo punto istruiamo Sicraweb a prendere uno specifico file per tentare di firmare.
Come primo passaggio apriamo Bit4Id Card Manager e in "informazioni su" leggiamo il nome del "Certificato di Firma" in questo caso "bit4xpki.dll" (finisce sempre per ..pki.dll)
- Proviamo a firmare, andrà in errore, a questo punto cliccare sulla icona si aprirà una maschera con molto testo (una parte incomprensibile)
- Dobbiamo trovare una riga simile a questa
- notate che viene richiamato un file "sicraweb-dsg.properties".. appuntiamoci il codice (codice ATR). Bene andiamo a crearlo!
- Su MS Windows apriamo Gestione Risorse
- puntiamo alla cartella C:\Users\"nomeutente"
- creiamo un file di testo chiamato
sicraweb-dsg.properties
- attenzione che l'estensione finale sia "properties" e non txt! Lo si capisce se, quando salvo, non mi chiede nulla vuol dire che ha salvato in txt (sbagliato!). Bisogna rendere visibili le estensioni (nelle impostazioni di Gestione Risorse)
- una volta creato il file aprirlo (si suggerisce MS Wordpad o altro editor)
- 3bff1800008131fe45006b11050700012101434e531031804a=bit4xpki.dll abbiamo associato quella specifica firma con quel codice che usi come "Certificato di Firma" quella specifica .dll per firmare
- una alternativa è decidere che QUALSIASI firma digitale che usi questo PC con Sicraweb usi quella .dll, in questo caso digitiamo questo pkcs11.library=bit4xpki.dll
- se metto un # ad inizio di una riga la "disattivo"
- posso aggiungere tutti i codici ATR che desidero associandoli ad esempio ad altre .dll. Non è consigliato ma si può fare..
Il file "sicraweb-dsg.properties" è centrale per far correttamente individuare a Sicraweb il tipo di Firma digitale usata.
Forzare l’utilizzo di una smartcard conosciuta
E’ possibile inserire una voce smartcard=NN dove NN è il numero della smartcard che si vuole suggerire (forzare). Per l’elenco delle smartcard supportate fare riferimento all'elenco con modelli di smartcard conosciuti.
Ad es. per forzare l’uso della smartcard “#5: Datakey 330” è sufficiente scrivere nel file
Esempio:
smartcard=5
Forzare l’utilizzo di una libreria conosciuta
E’ possibile anche forzare l’uso di una certa libreria nota usando la dicitura: token=NN Per l’elenco delle librerie note fare riferimento all'elenco delle Librerie PKCS11 conosciute (token).
Forzare l’utilizzo di una libreria PKCS11 esplicita
Forza l’utilizzo della libreria PKCS11 per TUTTI I DISPOSITIVI (da utilizzare solo nei casi disperati) pkcs11.library=libPKCS11
Esempio:
pkcs11.library=cnsPKCS11.dll
Elenco Modelli di smartcard conosciuti
smartcard #0: Siemens CardOS/M4.01a, nuovo file system [ATR=3b:f2:98:00:ff:c1:10:31:fe:55:c8:04:12, pkcs#11 lib ID=SIEMENS_NEW, backup ID=null] |
smartcard #1: Siemens CardOS/M4.01, vecchio file system [ATR=3b:f2:98:00:ff:c1:10:31:fe:55:c8:03:15, pkcs#11 lib ID=SIEMENS, backup ID=SIEMENS_NEW;ETOKEN] |
smartcard #2: Setec 4.3.1 [ATR=3b:9f:94:40:1e:00:67:11:43:46:49:53:45:10:52:66:ff:81:90:00, pkcs#11 lib ID=SETEC, backup ID=null] |
smartcard #3: Setec 4.3.0 [ATR=3b:1f:95:00:67:16:43:46:49:53:45:11:52:66:ff:81:90:00, pkcs#11 lib ID=SETEC, backup ID=null] |
smartcard #4: Schlumberger CryptoFlex [ATR=3b:95:15:40:ff:68:01:02:01:01, pkcs#11 lib ID=SLB, backup ID=null] |
smartcard #5: Datakey 330 [ATR=3b:ff:11:00:00:81:31:fe:4d:80:25:a0:00:00:00:56:57:44:4b:33:33:30:06:00:d0, pkcs#11 lib ID=DATAKEY, backup ID=null] |
smartcard #6: Rainbow iKey 2032 [ATR=null, pkcs#11 lib ID=IKEY, backup ID=null] |
smartcard #7: Eutron CryptoIdentity ITSEC [ATR=null, pkcs#11 lib ID=CRYPTOIDITSEC, backup ID=null] |
smartcard #8: Eutron CryptoIdentity [ATR=null, pkcs#11 lib ID=CRYPTOIDENTITY, backup ID=null] |
smartcard #9: gemGATE 32k Std [ATR=3b:fb:98:00:ff:c1:10:31:fe:55:00:64:05:20:47:03:31:80:00:90:00:f3, pkcs#11 lib ID=GEMPLUS, backup ID=null] |
smartcard #10: Gemplus GPK cardos [ATR=3b:a7:00:40:18:80:65:a2:09:01:01:52, pkcs#11 lib ID=GEMPLUS, backup ID=null] |
smartcard #11: Gemplus GPK gempkcs [ATR=3b:e2:00:ff:c1:10:31:fe:55:c8:02:9c, pkcs#11 lib ID=GEMPLUS, backup ID=null] |
smartcard #12: ORGA Micardo [ATR=3b:ff:94:00:ff:80:b1:fe:45:1f:03:00:68:d2:76:00:00:28:ff:05:1e:31:80:00:90:00:23, pkcs#11 lib ID=MICARDO, backup ID=null] |
smartcard #13: Oberthur Ellips [ATR=3b:6f:00:ff:90:53:53:42:2d:50:4b:43:53:23:31:31:04:90:00, pkcs#11 lib ID=ELLIPS, backup ID=null] |
smartcard #14: Oberthur Identrus [ATR=3b:7f:18:00:00:00:31:c0:53:1d:e2:12:64:52:d9:04:00:82:90:00, pkcs#11 lib ID=IDENTRUS, backup ID=null] |
smartcard #15: IPM SysGillo [ATR=3b:9f:94:40:1e:00:67:16:43:46:49:53:45:10:52:66:ff:81:90:00, pkcs#11 lib ID=IPM, backup ID=null] |
smartcard #16: Incrypto34 v2 [ATR=3b:ff:18:00:ff:81:31:fe:55:00:6b:02:09:02:00:01:01:01:43:4e:53:10:31:80:9f, pkcs#11 lib ID=STINCARD, backup ID=null] |
smartcard #17: G&D StarCOS SPK 2.3 [ATR=3b:b7:94:00:81:31:fe:65:53:50:4b:32:33:90:00:d1, pkcs#11 lib ID=SAFESIGN, backup ID=INCARD] |
smartcard #18: ASE CARD CRYPTO SDK [ATR=3b:d6:18:00:81:b1:80:7d:1f:03:80:51:00:61:10:30:8f, pkcs#11 lib ID=ASECARD, backup ID=null] |
smartcard #19: RSA Security [ATR=3b:76:11:00:00:00:9c:11:01:02:03, pkcs#11 lib ID=RSACARDEN, backup ID=RSACARDEC] |
smartcard #20: Oberthur Identrus [ATR=3b:7f:18:00:00:00:31:c0:53:1d:e2:12:64:52:d9:03:00:81:90:00, pkcs#11 lib ID=IDENTRUS, backup ID=null] |
smartcard #21: Oberthur CNS [ATR=3b:ff:18:00:00:81:31:fe:45:00:6b:04:05:01:00:01:11:01:43:4e:53:10:31:80:69, pkcs#11 lib ID=OBERTHURCNS_NEW, backup ID=OBERTHURCNS] |
smartcard #22: Oberthur CNS [ATR=3b:ff:18:00:00:81:31:fe:45:00:6b:04:05:01:00:01:21:01:43:4e:53:10:31:80:59, pkcs#11 lib ID=OBERTHURCNS_NEW, backup ID=OBERTHURCNS] |
smartcard #23: G&D StarCOS SPK 2.4 [ATR=3b:b7:18:00:81:31:fe:65:53:50:4b:32:34:90:00:5a, pkcs#11 lib ID=SAFESIGN, backup ID=null] |
smartcard #24: Gemplus GPK [ATR=3b:a7:00:40:18:80:65:a2:09:01:02:52, pkcs#11 lib ID=GEMPLUS, backup ID=null] |
smartcard #25: G&D StarCOS SPK 2.4 [ATR=3b:b7:18:00:c0:3e:31:fe:65:53:50:4b:32:34:90:00:25, pkcs#11 lib ID=SAFESIGN, backup ID=null] |
smartcard #26: G&D StarCOS SPK 3.0 [ATR=3b:bb:18:00:c0:10:31:fe:45:80:67:04:12:b0:03:03:00:00:81:05:3c, pkcs#11 lib ID=SAFESIGN, backup ID=null] |
smartcard #27: Siemens CardOS/M4.01a, nuovo file system [ATR=3b:fc:98:00:ff:c1:10:31:fe:55:c8:03:49:6e:66:6f:63:61:6d:65:72:65:28, pkcs#11 lib ID=SIEMENS_NEW, backup ID=null] |
smartcard #28: Microelectronica Espanola TEMD [ATR=3b:7f:94:00:00:80:31:80:71:90:67:54:45:4d:44:31:2e:30:90:00, pkcs#11 lib ID=MSYSTEM, backup ID=null] |
smartcard #29: Oberthur CNS [ATR=3b:ff:18:00:00:81:31:fe:45:00:6b:04:05:01:00:01:12:02:48:50:43:ff:31:80:83, pkcs#11 lib ID=OBERTHURCNS_NEW, backup ID=OBERTHURCNS] |
smartcard #30: Actalis cryptoflash 32K per charismathic [ATR=3b:f4:18:00:02:c1:0a:31:fe:58:56:34:63:76:c5, pkcs#11 lib ID=ACTALISCRYPTOFLASH, backup ID=null] |
smartcard #31: Gemplus GPK cardos [ATR=3b:a7:00:40:18:80:65:a2:08:01:01:52, pkcs#11 lib ID=GEMPLUS, backup ID=null] |
smartcard #32: Oberthur CNS [ATR=3b:ff:18:00:00:81:31:fe:45:00:6b:04:05:01:00:01:12:02:48:50:43:10:31:80:6c, pkcs#11 lib ID=OBERTHURCNS_NEW, backup ID=OBERTHURCNS] |
smartcard #33: Siemens CardOS 4.3B [ATR=3b:f2:18:00:02:c1:0a:31:fe:58:c8:08:74, pkcs#11 lib ID=SIEMENS_4_3B, backup ID=null] |
smartcard #34: Incard CNS [ATR=3b:ff:18:00:ff:81:31:fe:55:00:6b:02:09:02:00:01:..:01:43:4e:53:..:31:80:.., pkcs#11 lib ID=STINCARD, backup ID=null] |
smartcard #35: Siemens CardOS 4.2B 64K [ATR=3b:f2:18:00:02:c1:0a:31:fe:58:c8:09:75, pkcs#11 lib ID=SIEMENS64K, backup ID=null] |
smartcard #36: Athena CNS [ATR=3b:df:..:00:81:31:fe:..:00:6b:..:0c:..:..:01:..:01:43:4e:53:10:31:80:.., pkcs#11 lib ID=ATHENA_CNS, backup ID=null] |
Librerie PKCS11 conosciute (token)
token #0: Setec SetTokI [SETEC] |
token #1: Schlumberger CryptoFlex [SLB] |
token #2: Datakey CIP 330 [DATAKEY] |
token #3: Rainbow IKey [IKEY] |
token #4: Eutron CryptoIdentity ITSEC [CRYPTOIDITSEC] |
token #5: Eutron CryptoIdentity [CRYPTOIDENTITY] |
token #6: Gemplus [GEMPLUS] |
token #7: AET SafeSign [SAFESIGN] |
token #8: Siemens CardOS/M4.01 [SIEMENS] |
token #9: Siemens CardOS/M4.01a [SIEMENS_NEW] |
token #10: Micardo [MICARDO] |
token #11: Oberthur Ellips [ELLIPS] |
token #12: Oberthur Identrus [IDENTRUS] |
token #13: Incard SysGillo [INCARD] |
token #14: ST-Incard [STINCARD] |
token #15: Aladdin eToken [ETOKEN] |
token #16: IPM SysGillo [IPM] |
token #17: nCipher nFast Pkcs#11 SUN Solaris [NFAST_SUN] |
token #18: IBM 4758-2 [IBM4758] |
token #19: Eracom CSA8000 [ERACOM] |
token #20: ASECard Crypto [ASECARD] |
token #21: RSA Security card EN [RSACARDEN] |
token #22: RSA Security card EC [RSACARDEC] |
token #23: Oberthur CNS [OBERTHURCNS] |
token #24: Microelectronica Espanola TEMD [MSYSTEM] |
token #25: Actalis cryptoflash per charismathic 32K [ACTALISCRYPTOFLASH] |
token #26: Oberthur CNS Bit4id [OBERTHURCNS_NEW] |
token #27: Siemens CardOS 4.3B [SIEMENS_4_3B] |
token #28: Actalis One HID [ACTALISONEHID] |
token #29: Siemens CardOS 4.2B 64K [SIEMENS64K] |
token #30: Athena CNS [ATHENA_CNS] |
Approfondimenti
Questo manuale è caldamente consigliato per avere ulteriori informazioni per la risoluzione di problematiche inerenti la firma digitale Note Tecniche sulla Firma Digitale